Updated MeshCommander, Added MeshCore download page.
Ylian Saint-Hilaire committed
Jan 23, 2021 at 14:32 UTC
c5f6cbaef225ce6737682c51406b67d5c0fc14cd
13 files changed
+15801
-848
agents/meshcmd.js
+13
-13
@@ -49,21 +49,21 @@ var globalDebugFlags = 0; // 1 = IDER Debug
49
var pendingAmtConfigActions = 0;
50
var RCSMessageProtocolVersion = 1; // RCS Message Protocol Version. Needs to be less than or equal to RCS server Message Protocol Version
51
52
-// MeshCommander for Firmware (GZIP'ed, Base64) v0.8.4
53
-var Large_IntelAmtWebApp_etag = "NNNHptrdpBLhlQiaOo6B";
54
-var Large_IntelAmtWebApp = "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";
55
-var Medium_IntelAmtWebApp_etag = "292O6ALa7EM2E4J7z+F+";
56
-var Medium_IntelAmtWebApp = "H4sIAAAAAAAEAJxWh5akKBT9FSdHe7TyaFdvzjnvnozyVE4jsPgqjad+bOMn7S8sNFY1jjWxM5cXrvfBbf/789/zGx9+88GPv337UVBhzS/O7c+gwR2HZQWsrDCJo+iOwYHQi/MakJhAVCH8vmLr5a/hT++FH8haEWQZhyCXAkHg8uZnHy2BlnDTpVzjCFt8YnukeUV0A7hcYREubvpFP3DB4Y87BV2+IDUsC6lrgiEFhByZFH5VDqqSApZCmpacictAA1/eZCbkZoCm0JLVpIQnSpRBpaFY3qQESXIE04w0MJs8Zj+//833m+iLT0q5NJWuhLjIJN21nhppTbahv5Zr0AWXm6RilIJIC2noF6RmfJcQzQh/HFTA14AsJ4+DhogmbECzwgU27BkkTxWmueRSJxkn+WWamR+llitBk03FEExPXTIRolRJdFhwKPB6pS0hsww3kF0yNKGrvApzwrlcYSKkgOPWyrQ3FDjkh41LO5QTeC2fnUKbITgA9py1jpohpQilTJTmr31AkjVrGAJtEbZ2oLnUxE7U5TkZbkWTIt2TxA7zdeIqO4S2w6bTabqv4vZa3zhW6OTeuMFlklNf8Z6mU7X1BY+j63UmEWWdzAyyr0atP8E3aDDrN5gN6hudVPuSjMkwo38ORpYg0j5Bg1RD5KDdSjeGrJJMIGj/BN4ihKT7M+sBJk7Jhl1NoWBboKk7kd1RPJzB7nbM5mrbKxSNZ2mwP1NalhqaJiOnyrm00xVHw4KGGRM9rSZmXgblsmz92CzLSDZ1G/ELdwK09z1AnQiswrxinN6XlD7oJcACoACTUKw4z4Hzk4/xVG2P/N2Ujkqp7cA19mc1YeItisXT2bDc4cZZRZxsZt8aEA8JZ6VITFHTUpD1YAheQ5vs99swipVraEBNQV8ft6CRnNHg1vvRB7OPPzjRbjA4b82ZAKLDUhPKQOB9lIFr+ji4lRU0LvIguvO40z2wrvvAsY/bg7XEhkJkvu3vxfF6WKlffi+v/DVsFMkhEXKjiUr7V8E1GvWO2HjUv4+RX3KYr5+3IgNF7cDkDRq3na6d5vFRWKPNLrVO2ClqediMUXsCHL9xmbGzAY9U2LnpYrwYzbPhQzVKA6H+f0Z3PtyfgzqHR0RWg+7oebxukSwnEA/zDhsms/ZknCu0kFS+zY+iF7vwrQ8W9nPgu95UrdG7oqP2ZJIftSFatC/qlUf2w1pTLkXcdrpY1z7INe05WahBAcFEyO4vf+/qNSVZaX7ff20pWfE/r1Wx4DYMRP+lp3KYyiMwKFZs2SHvTXG8Zgo5ys+XuT3v4HV43g/Y4nZz3SZ5TAEEWNwBC/fVdUYO3Vz1N2d3qu3P51iovLI3t9s+UsVYV3fnpte5TJ41OK6DlHVZuC0m4ehy6XQ6yhghoAAwBQu+kgD0xblqynPW9Po234XHHQWVUo4XaF2lZqUwjxn4fkTsXtty3GWWjIYUpjqpHKTmvkQUr0xG2jiyadtqVQQLPk+JaPGBGzgeKBc7fHSuZo7RniCn04mBQxjtS5M5Lo+WN22ChGBzJJp7EDqPh74et2Hu+i6Q49tHT75XvP+gFWeUgEPWXBactADg/F5B/lcFTVWaz2p0ALkpk2qxaZJyJ1iwHEh26250z5cRsOAku7aZH3f3ptVf7cKciOscjl5yXKbEhArs9u2vbAcPmu3cNMCigRFuTxP5n9np/J598Ff2Cxlah8AqNtys26S+QwtTz300vEGdatJHkPpi6Q/jre41Md64A+lZz1BJp1cTKI0kugoiEhhu8ioKI09Y2nBlwLEa6nHBSuqtM3cCjeiLLFgZq94xw9kajiENPrH3HIpt40r+Ck7b7LeWzaa2iXXnSNZuLnbis7Ll+kEkZPOFIvkIyomu/PthwBFEsEmMnXIlVQIwBYPBYGYwpCc7/UjZ6gVN1LkxACMg9jYKzjLqPC086uBsyeRN12mkjkHq+WsuOyssqDtcDM2yBXVF6LQWH4El10+2y2jllhE+6yQc3QUCe64zCAN03AXfLs8+2U47d2QCgq10rBKyPeeEGL3m/1EdhPihn/o0qIxDgJuqOASOqnIcgq283Fhq+C8CBn0CflWlzv8gP3Ixi9WKhkLQZ0K3Ihh6KiLDH46bdhGok+ZKAsISPtijvGcAumPpohi7Be4ZSp3kR32lcOllwAO0rHa0ur1HUbNbUjONR5Fz2pJ73Ox6LclZj5tdvy25R83uzwdqpdWv1Eqrr2hZ/b20rHa0ulb/MdTsltR61mOoOS2pDYaPodZrSc00nMeQ67clZz9GT+Ck+g9Cln4g+rJzi2xPglwjd2nAjmSIR6KYun66OeqLL5A40OL2ropaje8IBB9lJwgCEREU0zQLcwghxSOgKvJMAFgEnkv5S6AWn90R/MbIs3T2YXfFUVH2tmiaUvd+JWj9xN0kCgIQjfWx8wJe204MuRW41SQ/2cRM/qVWjBrwu25i2P2IFeOfc8mQXX3JPs3MgsVinaZRiN6ok5sEfC54o3qYoYX6Wkqu7FQrkSUsoKn/wIrWAzf/T8ZpL8cWup/bTjPXxVkA7Qg00nssnM/QqprD9gAkMB8d9/6TFGa4EOtmW2gnC1bStpSVtK1mKwkErfYEbetRFO32FPvOoyg67SmO+o+gmCz+o75f25e5RJ0ttmw5snp+ll0LPU/9VPx3zfj9ZMv187Os8bnMIUfhOhSYvfPO3eLoWNwnef4D8b1zg7gB5fw8S6gLRHQRMGzDUAXv4Hb5NOUFCgUVEADlkQeZwjvvCKAOyXKX553sf0Et3qE0dTbzXRZwZBbQAfiZZEsyjaNzaXs1F0u/LdytSVUKMGGewCsg9X8RlY1ktjl1xJzLVbpMLh3Gpng3AyqhZQCFfHhMQ0DpjK8iCmNPT0+fn0FrgWavfNn5zPN5HNCNVA01sI/MZQlzscCJEDB03EXmrssUa+4GvvvunC+OzOPxczqeb3jKVmSe0nTNn5/RHZhTB+dIwFu2ilJGpoy/ExPVIO06SDsjyeDSsQt2snt18ToPatVAWhLwF5p4Iq3JyMtQ3raCec5D92ug+xL68oGFKbmK7jRee3W89iTQxdrzS0CWWccmyjSNEmEu8iDDGoihBHjN0vdR8o7MWZoKbdDXYVDH4UDCvgSdC1laDTyqAx5l07sDmdwkjLPQZRrksA5ymNebKVuykOuQtQqXSedXzhJy4bpi46Uas5ZdJ9ZMb36n7xi5CGiyAjCl+jyTNtzEctwu+lFeuZu3Ut1eaqmOIeIonf8qqDALl3zDJXWHnkpJ9Up3nwBQ2rVIJmfbx8/9MF6nwMTL6eXt1Ofvrmn8QnoIWZVA5i2AIVyz8w4MIGJER8lqyY6OEUsVwFwIhAjU3VsyZ5yLye1AwwWAoogUd7nTRhxvmmWzhGC/Dxc8fqbM2WhcacR8jyW/MJquaIxoO//e9UOPfQCDZuw8LbrgUbBOmbzgs0Fqu5Rm6UIGCxGiD11+Tz1xsbh1kUyj0gtE3nP50b5hVKZDR6PJZDTSVkwdjrBecbyB6Vyr6eRHVg98Kw4JTTel+GZyyImYSuQK3QXL1jMtstikjJ+iDF0aPlBeQjjJmuVEzsVEME96bgjZZyCFRXC9JFrtZxvHNXE9md6+udaYtgxnWM014mvNdMWGNQ1k5cm2YfFOunlb1m6ouZv4cbrbSfFH7KQSK7izFuPbdRiKgUjl+dkCvYcMawFMysnEXVgtReuppdgwyZwQC+6vmr/szO9PrHCpEFEOuehW4u48HJnWCVnSgDPhxH7/zQdrYPafNS2AU8a+E/jbe5+T7YXCD5ws/WQlnQ5+H60DjywYWcceTZl3gjAUKehTxEIuqBzjP52dcSa6RdTWzZzEUxgTwMXFGfUefAG3OaU8/vDXsh1OgNdvL6+684uusJCD3vcBDe/W4pQTPSzsLpNOVkEWRoIISxJBLoyimIVM9KRivVh63vnXhYB6J0zXehwHjHJG3HvmvhO7LhEH9noMh6jYsItqRbHrfHwsufOXCV0xOdRpHLo13bDLM6AiqR7CKxOd2xDdD6jbangsEN2bmucsvuooY7PKxgGY7u8CpDq+zH71+RVbNciwWd8foPnVnqpObFBDrF9DLOe/6oiGCpFqGtXgHtbhLjqgOgnLKJGwzBoSZq3kdb9PJ2DVYbMrsMnr0EzXBkNxhAP2YlBB3rJEDKNBRmiRiwhttWwfEEsprCpaK32F89ZHGIX3MyZ0KWF8GtwdHecDUnnVj9R2SUPEBhe75WOi8eZW7Y8qtyWADcdpsIpCGRME3yfs7hm5uH5LbpnnJ1iVGkdJSqKEFOW1zCZBfE6EJCC09nbL44xPiJgv2g6SRoSFMIT46WnDYWP1nlrUN9F7llzImXw10sZIWJ0ZIMIwSkkMvDJP8F8Uns/5mhGajSCYUzrVJIg5FxYEyMa5Ib9BHZj8VjK5il8jx3uhWMDYJWcQXj8GFSDKv1TPOJlMarykfM2W5jZF4Tu2WcfnnIUebMqX0PqKbfgRA4N2TED8bpSAgp5Hy2X2ncZ+SgNxWkMTUlO5U/TfVdWlkfcNpMYsgnVy3hGEJbUX4ptMcCmFVpYej/CyhyfZjiGddN5JmNgaYeZidLIeEXCEhQ5UQ5d6upModZZkSsvFcdVp1Gicq5bXs2HZyiyCd20gFQgYCST3pFdKk5QkmVZ6ECSuwOaSKGZZgXKn/ewU0zKakxRw/fYwDEyan0ayONEJjcVYMQqn/za6uwsY4dB5xsFDj5YkxeOAuNnoE/L+noUEumNwr9N79XgADIevOJIs1sslS0TUEgTg/HH6wDzYxRSuClluObc0kKGMjyYpaSapXhVBhBbOeRKFIXNTRfPKQwLKap93tp86xfjcGoynPnczFMzTTbduF/KbHmL0YpZTjBVLCEhhTwsU4ttnNy0wpWF73fKXJBPaqWiaRB4j5+dE5CbJPQ29gAnbdAMYULDPqlQxm4OmjZPbH69mug4KHaOp1CXEIehlegTGUFecDGIi7FR+dqNPPjty4PSGxgerV5ie2lRgeaumMxft2oRs42tZro70kcjRzDTIObmcT378xzfXx0UjMjNhp8MYQZsTtlpDLhDTcVUznn3Q52t+NfO9/JCy0GMeueCu73fqlnL/FN+KdjFJtC3V9uurUdtJGnQn2iTmQgoC2xHklL8+Xv+o5NVyvjpmxY6pZnXw1bH6Qpwy8vmJSoaH2n61Po2rckN5yqqO6F0aa3pkn/wgx/1wYp8Ah/LLcUeFVimAlCJk56AIGYfbNgTLpbs7DJF11DZg/v9A+dVv143Bsd37uODY7v8fDo7/PzhW6jPQQ9HcmiWL7SF9G6U0ZeSKLXP3DF4iW4+6pjiMo4AmCZ7GTShugXoZh0SRKBT54M3WLKLuNUApBOFuwlhIVpHHPiawRAs5E6gUW6vF0SFxpVPF2pw+MEKRK7EtVDy3DYgzo/cIVoGCiOMVt4AR2l5CjVCrCB7xYdIVcOIkLj0/LTBMOA77GM41O4Fmf0u2dc6h95XnHKq0YiJciDsGeoCGhYPeF1RjRd17P3yMFj9Rsgc3oXZ/29d3R9GUF48K/bZMO1XQ0mg3Zc3Zh0FN9gFTCahQuDgfIb1Dkhf28IDkBYwblVMYslagnMMo13jmb65hVtu7akfdVTuGgfi7K47PD1FXPfavv/sgO6CjECivWLguy0PsEs6kRDz1Uckx613H2LeOCz2r6IFBH37c9sLDSFFM/wL62FFX6090tkHVmlE+4fIqW1g4sF8QPWfLlT36hAgKbxDIjRbsRnHqKxtpjH/3Q73JhKYfp9H7Qrsl23+N9VZbtl7pjY5svC7AG7L1ttCKCASrhY4MCRyshZ7eeH7vL9MfyzTghu4iSLtv6aKAzJTtM6fQbI0naRJ0f9eb++OZqbcMxjNLbxmOZ7beMhoX0ZvGeNYrNJnjWb/QZI1ng0KTPZ4NC03OeDYqNPUEn0ahDXg3C20D0WaJfQ0qopJ8uBN/n1aenKH3mHMFlA3jQK5SGmhYduQds4K0XA9YqykLHnUgC/KTi+mOuqoNtfIsoBcmL/AX0YfxC7jaJ3Pp5OhsK3gnD98rwP/ms/eCh2CjATdHmr3Km11Fb3d7fm9i3WTpstqpu/U2B3XXxuX6Rh3jsA5j7WW3XrpYQDeqQzeqQ6fXUOroekYNOsus5Q6LR3U8Zh0euwaPXi2p4bJ0XPUlV55Pg+iusmavXDV3eXlZWY0HUeo3/X5fe+3QRfbaoV+qXjtUVbtXfv+H2d89b+gY8LmiXg85b3jtA9xu2LbgDr/NZrMyfQJ/DWIgVpChXRHk5d70odXlA4pm90xZA7ADul+mKDqFIpleXcyOM8XQvq+GlQZrPJrFl00MAVBTBFODyzIDZZ8Ke+0ceK9X4B1KNBs0zioT0tBiNUehkq2vBYeeBU9aw5u5yiuFamOB2qj76b/1MGMy/hUBdQb30osp5++F6uBpsf2K99urOGCp0EVxnd1pzdEN4vrTR7JkPT1LkyiEyjiyZa1qNXv9OibRDUQu4e5BliM3c1FyCa8ilwZ6oyplKvqEF+FGeRaZTBXVIuvjnxMapswjuyEce9eBnNdga1kCn6dd+bkLEpa2J1f7li/slFqc25/lN8zodlV7Vq1UDfes/OoycPXXQWPlqYG750/Xfuiv1isyJPCiO+qmLIG63PSerGOxHCdE0GKJSzk7IUZ3dEKodLRkwPxXf/PNt9/9y/d0FT/709Hxj936fWy3NhjQSxNGJQ47hgS4ahJ50oCFdyIc6zjGqN+pLTq0pOATBnPG8/Bsi6WSz15Le1Otx70sDJzLln2arKtiLmlQlKZW7rt7TOl3moSw6niSz6PVNrGRccGFuDZEyGAdCO5C4tGUikXlHFZS9nkqmCbpvcoynexuAqMkS+QkuaQ4Z9l2OK1f9P5TGO/+RBBhYQoV6M2izKtFv6MMlZvBZ2kf70hPStTeM6GL/hd4OOoZYQFn26ZwvVqwhL8RHnMGis/LjZFRAmh0oexVmP4081jg9Jd8nmf/IUrsFby3s4o3iS/kDQss4Yv2cc6EbLzygIwlUf2ceEgZQSqrX+U4hQG1WZcIYtnnXg6eYvO5w1ZCEjdgV5fDEzKB/URmlBdjeug3+zggL6ABvALAwWE9GOb8fEJ+Fo0SDeNpafRQRetAND+6mKG4vfhdMTUXFljvd6BfMUV+Y8lGjtKlL5PQ5DJ0IzgVmjUSrgY1RzkvvdL5BE58XqbPclh2B9QGn9SuOcng/ad0wQLc7HpUmskMEqWZtzyei49EnvLkGrJcZCLbn58hjkVyIDrqZbjyUXsrLIG/8tMZFK/f0pSNr+Arkd8JNLTCFUZyMtmNzHgahT+kJPsiZ6khyx0Eb4SZTlQUvG9bjRq3FTJZ2NnykZ5axt3ROH8/ehMlKXKK2OQg02iH1DTHcMOq30jreFsitMbwiFuOVZDjozDaxepyDWOF8E3jEOlrFCHajLI3CXumkdF1lE1/HQkVgfcPJ8zTiB+GqLeze4iELPFqG3JAH4Gxjxgda+SM+gNr1BOJy/d0wzU2G2VUFU5WBY/DBi03nyJUdM3B4T6Gbe2cjBU4FnjBdE0/SI/atnIuNSYMmofcJBEUkpLXbUNO1xx+Sb7n85fTdh6Pa46aGVZ5EOCw6CQnfgQPULUkaRltSBbz67/fXFjkZv5Kb3egHZp1Di/WwkKHkM6CsW35ND+GT9gfI8XVZHJ90724nOd6+4byLt6+ennTvZ04+V5zd2dyeZPvsJSL8zoKmT5P4VwkGzm0nbpahTREC8ferlbeK9lPFiLkhxKEoQxu+nZJk1uM/8hci2vZ/xMmV5O1qbeve9wIeFgSK5rpQ3a9DjsgYbv79UKJFZw7KUDhZTvxwzTKKukVV4gyjFJVcH9CFkLQHMJczkLuw2VtFtRCLLsANG6w9uBeeJGA2dfWpvyAIqo3XaWS0dM/8yiszkU2H+W1B6UFByX8R9UhPsWrbeSuGWyhjuyXYldDJB9DXHUQrLsLY64nLWE9ZS8k3e9JGcUiqZbUgQd63250kZEfM+PH9GO+CV1l/f4eSo/fZEUl4R3h2VXOyxtCPQ+CewKjyw50vVejU4sMnZJMvmBfoO5yNPyHYjYbMJtVmJW8nMOJWA1ErEoiSKh8IY+vqtlv+HrKegHNertnb/GNd8u138ZKCfQ0gv3WBOfrBdwgitm9a2nVB61p/UxTJhzhlnSGbemoNM/09bwlrVFrWhcB3MGKiRWp7Ts/LPtJsjv2ficOM2g3TPPidMOrt5uq/YRMf5nc4GP9xUzQZSjH6C7QdCN2nu+COKB8lYVpuzWw93h7eBElGZInaCLYIUcrP1ynjB+3JGYdQuzt2ytyxGVyEAkcdJUwZUuxqDsefU5MxzEIsnpC5IAgJQI/dI4MgyCV0wa9cZ5Gb+xD9QayRBfeg8zEi9K8CbSWVcnCVP061tt72O5u3IDpXUPsghqQUtXNLeNMSxhaTtwzDBwgPo3fzIm8yF8mkXxpQegtNiUAUwGYAJARnNMHcULqJEej0XjOUrKIopRkPVxXbMzD4KvYDk0fSlk7j8oiDqxWWUQkCwLwXvgRv6Frzpr8Chysxu5f+hcvQZa0JiGnk5/D2z3YCyHWQ3jQAPYzcgnvkHAZyWAIAB3CUbqOD2UGxh4oEDm2mfwMuL3Bl/HJt1bwAxipgNrPkgQiMUIRJsGaubsSuT6JJ3ux1gGcFSD2cwUAeBu3kCD7OZKWoAVHCNGKowQgDuZoHjAWt+AIIVpxxAHiYI5Eld4iool3GDtq+IG8vMPhzXxAbcg2TH2xgWD/AG7KQAduNpVMWEioZtZu2TKg/B429AE85UbvZwYHE2CqmYk5XbLryDvEFG+H7icPI+XzJXvXBh5JOIA0jtxPWQwkMLKZcHY78EYcXlf0kM2ijd/PRPHyYQ8vcEhcJvSg4zA3ej8fuUwOugl4Ikl4na1CEQOcWdVXVwc4cb2ndeIMmdLU20w8SSbTs+lvU3nE6gMsHHDzx2VFr429v4C5gdcyVoxxcMzUp3dhxFPflYM09wvlFK3FwLZS6n8OKb2EClBiFmSDzVZBKNhsVzc7FTO/Zp5Piew/LDPge96/CjWGLQoIpuzBd5kul8FTy0VymkYkex9jQUKqV74lUZ+iNDmyH/hsv8LDp54JFkJjhIa9Ga2RmtDfrX2m9TmGWvffWLKIONN6TbXO+Rp1XRISDt7l02qVb+eXcIriwCZRoMnTM/Jo8hLOoKVwN1aLD5LFeUsmmDg4e241F5blJ1L4iXc1wtDfUa/XevYo1Hr/a2PFqzlsuBW8WWJtp16sq4hdAH5SLIw9kNHKJavin0PKA4fWMG0aGtN6bVddvdaJ01OP0jdMUgbbkoWjDaNJdxXBj9n06Ob4k0469VefZNK94cGTliwc3Yuz56eV0E/O3E86ZR8TRl9uqXdpNbG8vAsz510x9Seatr7p0JLrMvAit3Qx1d6Kv4IYSiIs5TcFyZQR0YLF3n6kDPF++VwsU3jtldCN/RlfHUXVTyR2Co9uW1XPVFF4FXetIIeG/oiC9gIEUbNpHGsU7AoKb141YNexmcdVi98rTMOpIIJiz6/ssPiASp6SdVwlVS5f+Duepwm85TROojQCUqfyvWb8dz/9b+Keg71tHNm/EvPd6REmrBCkKilIX+plnebLxlei1d4HFkeOLNmnEq8ja3/7mwEICqTITXltCwkOpmEwGAwBUJ7e39t/UMsvNosYe9wWZJsNFZdzjpuvTXibW8s06+2FLahLdiQ8YJUukloxUFcn5IQdZUIucwHyUY3pE5EVUKamfnBlKAmjYjPHw7kf0/WzqxSLj+9+SgBjl+P/G/HXyztNg/RNafBdLNbx1I7JdrdH34AOsSKQmPnnxkdxhh8V8D/v8VFSM+s5Ho8sK7Cw/6xKuseKDmVA6xfp8sX71694vEcQQmEotW3RxM15PDr8aA0qDwY94hRhDjNaHdVTI2YVvUEdF6gfsE632/VY57hE4FTxZZ1DuFepr29ITL7SWq/1Pynt4uvtkyTVvFHm91r0ozDcNhsjuFD/JEO3xXDYa3jtNhV4NSinX6VUZIrepLz8BpleS1OzjizV6vHpu/QwWWoxJrcrk5toNBbwmx5HHArWdfQJ5hzriGP0gEMhYjQWk0DsSecm6enPb980bwRk6rYsrqRilxd3gGOIu5Y0lxe2pRAsnrMnWonmMoWRG6f2w8bDj9SSX61YZA8dSujHdQE4kMCrItCSwH9vrovg/1Rs4QtFAIeoDGyuXKViUaWNrFf5SkW1YY6bzJc/C1hC5paFhK40pX0k7u/RsJwLklFa9hsAEIkl4CQMTAKLGFk/Wi4hc4XdAxsZJVAF0iKHW78sf1lYzr8FjnfrJ3wJ/A/LSRwreGA5KHucTCj6fyi/gSizfSt7U/Kt5omsHvBKXoAp+y3MGh0ZQV32p9Y2hmbTiLthNGgdizByHBKDlAeWpjTC6rLsCbmjgbFczvWco+1lhVpCKLhtWY4gzbmM5w+bzYcfSaiViMIIiFf4Gb9NQlSgapBY7m+WE5EKxVaGW9vC8dod0lxfKx42g4fVJgKV7RMP4ef47dUTAW5vePlasthbROqm7KKbpY2D0sxYFZEqnTYlM0snsXMT0Sre42jCS6w15wV8SP746jqyx1g6h7y+pzjGZEKMKdUc4K/FetqEFAx0kMWlWCTXc5scC4Pi1qAwB/Iv9rtfCI46uRRpEbPm/eusar0USRpaBrvfhK3MKPj2H8F4QlMRuPR5FDD6GgpfksB6eLuaw8Cl14GmsmMa0YSmdEpnZGtLV0rBp/AKJnoe5UGu+Y+PpNFwOZYy041E80WkOEj6gHGejrB+s1AuNc4rJyTAipvNalqA7mgU7bWRPn5ko/QhR/Hg3aZEoh0FQdprlRZjF0bhmOHFw4uPl9YEq6MI/G1HX0QVzZYSXWzfawK7x7LQaIjmp8jeruRv6AcA2VGl80QN8i0q6DhhDKkjOi2Rw23G0VQhJlVQBF/5x9Nr/Os7eGA8Xa2zhGoJCdUM6DKU169erNc3GQoJZ038Iwf2dDQNrLO3P7+3aDpKQYMvCdbhK+z1Zs1Z+5mPqOqvmxnWE81XiT1r6tNs+HUZneW67yRNulxeL00i2dgylhb1R3hPGo0nTelS4I1x2mjEIBTmhiYsDdnW339+/ejNyc/P3jy1LSfOOtCxCIbgGOzIS8NJo6jgNIVBOh1oWOg4U5KOpxMem4N0ikbBH5iwU+zgyym6/auk1M1k+y2Kvnv25G+VimJfn5zg1KP9g+xdJgGPs7HbKTzRZOxpDwEUzwWkqKm8yMDUIAP9gayNKZAg1PTaT0WvJds/1Ccq6BOZ+iC6gbR9HmyfRUGcKQOSdJFGRQ3mwtBABdbQHewHZaincXNQ7hWJJT9gtAsP84A7Fav1Y/zH2VpT3Nxc3WXtIzsldbsLo+ZHLkKBKRW8TPEIACvu4hU2PtO1HJfw9CeEqZc8OGvBhS5i3YVGeis4g9sboQHrvPTBHA3IzhQBzvz3NPpZPtnwvY1AvFxCHsPl30uxqHW7sohjPXxoOTnuFDZNHIzRJ8YXqRbJZTSjy4VY3r3H93FL4JhRv9xt7TGuFxg+wOk+xSZwDstJ4mMK8GkBHsMHswi9ROi5zWBMI6nZTIR7JGSc7y3XaETN58Iujd8x61BX/tvzabdPux3qQ7+T0Ps2WiZpu23a69Bul/Ykrf89crs+7fRop69osS1Toy0qgRJNPFTdaOBbPHQhNvBN4jg4nBhHCGSgBYXv7ws6EJ3Mgs81r8VI3TK2JMDHV8KONYAgY5XNgo8R9DNVo0YlevBBIASkJv6xqVcqECl8AwIjurkCJzskI9StrtTq0CJvIh0/bSo/2smRraZ7gDcabMBN/HykY2wWvEJ8uLq9xDlOwGRMtjFuurJuABZoDc0GZCbcYzON7SIy8yuxUw6I3gQNalYPmO+kGqfaP/qZf7Ds7qJnTTkShtEyFbMwUTtEAQwFHAUKKDXypEr9So2mXMp6CpbFnxuSJiC4qoPSfc9u0yOXHOjbd3IGqvux/XTGxxM58X0RYN0vYjCFi+OQmUqZxLjvfBEQlSt8ZQXrbKndp8gY2wV3FOpynpLMxIb/Zt0CTX0k7Kpk3/eUkYjzSQDhW9TCmQqbPWupu+vKu1sH/YRXEppGDCo7ptNSksxuMaj8AGMsoxiCfLKT8yR2kF/E8rGDvJLPKIQp9/ywvqH9ioZWISKW182QD2KhLScLGHN6vR0AUUq9Zz7gyhZgcC1p3WLS091qrZlbwPXqcVPAddA7JmolZ9w7HCBphluIWIcBQgWBzJuYS1NCjHj2TejofWlBddk5vepW9kzMTrsWU9kQNflgk7A3MFHA/N/TrN53tAlwVYtMeQWvbrnAaz7lRy72WSmUFFLM88VsAedj1bdC+JmQ/t1fzDExWsJygohjyKc4PJci9KXd0i+jOzWucxselQL0CB75PiZMSaAzG0y/cBAW5kN8VdHpgMqjtQ2Iucwsh1B5IlXzhKZuNHI+oFlyh39+LOU8z4iab8+evTFfyg9sr9/OVeIvzMQ/xsRflBL/Q93jku7wQqta/SbikUQptKHcgHz6L4zvUW34aLnVcTJviiOIirJCJSNRupd/KL5ejn8oR/K7jE1+4BaYyjQasvDPZGTjlTP6P56i7inFeorb5WqRBzW3XXpYa+7FWA8tgkxvU/DgK4F/E3D62+iGew1kDc4fKRlWA36eXD1jAZ7XVyv5CHf1xPDLbs4sx7aOLdl3ychqrCAEp0sBX6pCVWBZBKo3IPzicpEmgKbXzfCIRAm9sYEnlAGckJLQr2betCrzpjWZN63MvIlMOtqyR88LDgroakUUClxQDFvnWCZU+w4msni1I+SdeUU5e3fVLHTC9m85Zd+zc82kXva+5RKf5ARvUB0IU2KZT3YIJBSvCndXsfAJnm285AkbGkOfCjonW52fmIPbJXk2mFWLDMA6bpDn00nzM9kmzanNqEcFbfeoWwyTgPE+AhS4YohWqB1AbbkGqhHQWbdjst98lf07yf7d19nrSSEDKlwXcCWqoUIvmHO7aA5GGr7eNCrWZFtGJkymGdyE4OSBIQF7meP6bBjbYHrZAwXRzA1KzTVrPWmajs95SQUVcIoqkO2c4yrrj3Yf0s4583rhj/ROxNuautr4P9kCMnNanepFdA68wDgNlhkg6642yPE7ZbN0g7wzCxW+bCq0mOMQrm2yFoG43U4Bd1OHW+89fjvA2fWWCwwJXfK1DsDVVbw38ZMnJc412vn1EZIx2HydQX03XAq7V593MxhTLepByTO6xWhyNwBv+ZGGHjqOinKAJseKrfGHwz45AanfaYd6/hvNf5PxZ0wKqLXTPLNTVG8n5T2jXlBtppYLgSVGr/AArv2jLhS0vEDdO8EeN2leJ4DeZt5xVMDudIF3OWR54e1BpOhiILqFxpeq+mQ47FQ6qzHyvL0h931QaTEGQkZfGeUM/qMMvcpYFsgtF2R6zr/KpnfIxlNX7BLNt+1R1te8f4ClW2ZpKlvoi64rI8Bz7h2Vu4Q+4kI5AN0HCDWT3ZKtORw7LnFwVBaj4JxLGPbhI7SNw28kPYPn+/vnkEAPHxGAfkSgp4GeAqYCob6G+gr6V0nfyRl0FPiDxHVzZFeBTyXjdo4ORVVxJys6uSJQVBW/hVLpeZ6Rz0NdHsr+5fNC7noLxswNMT8cRd2WDOoHpkXVS8AWIVvDe3tUc5KTmzkvyIgzirgXGDOAESdgwH51ymJer3LYwxBJmi/sHqNyUcYxr1W8mN+mPZf6mYuBQhRo22r00aNSrsICI+B7tFTbVqO3urbvBnsnnMvM8Xt88Ta34cgM2rfcjNmBaUeoMsOtDjblENXx8wWyOc8keL2eO4SQ8i74EjwTZivagUKRrqTRZkFaDI/+IatlMA3WpfQKjK1ZLUihrm/W/aUUqc26C7JTU9J8VOqZoMatdegsoRtHvnCKiOkpTdXar3qDoHeGE9sXaHZqdsRdoSNIqHWUqBtqdsxdsWNI6A5P7+9j53R4NzIcyMdGgLzTUSH90Z18AZxAJIjAK9RnBncDRu9Qf6IhdjwY8D49xSsJ5BNj8hGkZ5rx89Ejte66neMXG8EFfZEEgr5NgpieJcEpPU2CdAfk8MZGF4ILesahRvBTGtkpIeaZtv3phjNBT/lZeCaGSfNJc4EpecxVkQD0hMfhmQOX/a7A88ur9F0qknQZphXbvdipC7ADB9bqDKL6QVQqexjH0+BMyAT9OUE98tMu56oXnxOMDl05N4wn9Dk/YhoFSB/psJmp/yjf3DvncVMaJlwIKL5IwjO4vYUbPp4lYWTHzdME3ChM5XrQo9Vj+QadHQw5z9anwI5OTNRGXsK3eiUi8MGUgUuf4uXvSeA/a9EPCZRfJ4EHZXhjX4EBoGsvAsuiVxFUJTFcngSyWan6RYPgiNEpsviswBt1ex9hxTt5/SwkbEdTXh1aIXC3+iq86rmc+i7F7SrcZ8LR4lFAo6zfhvvhv60yAAhcyY3QaY3Qvof5symUUSZvBhd196mHRdYxRbCeqjdBnf9x/YGaHeLrnF0Xu9iUVp/QWa2FAePQwi05+Xj7tvTc77bv8v/NvhXa/+9ad8Hrs8lCS71ODV9C//LNPPq1PC7qetkr8WhBS1v5k1+wp0asFrGuEdFySyKUnbx2u0bod8i8qZGJDtJSnYVoH+ssiGhaKqGpqMHzDDxg99c6Y0q0FtP8PtSJ7YBk7U25fxN6WscXWUP9XWU9o1n1bzXVbVX9rt6NvnHUEfqlnker/408nok6Jq2vOQoJk9JarMp0ElipJaGvyrgbtQvhVpyRYQp0AfpU3a4ieUtiuOEcG+KE22nRqYB05e8JcWThgy68hsInLGRTHCGhymoQJKTDQWFkJFcBtDSrY1DYjMxsCiqlipdFFdUxGWwLVr4ShZai6g7P91/kGdjmBUDCkGwFT5rzxNbvjULtQ+ETNhXSMIHIVL78AH+drmOl44RQxeF/45VLYIoAJjE0oBGma2p/RC9b4gm7mLfdgZDbNPHIC9zwFKpihzMSVne0kH0ZZwZNYtyeiULderUvA49nRmtRl+mBLpj6ilH2HlXtUjWRut9VY0ZpoicB9SYV/AhDv02jwaBl8mQ0QhUlT9T/pwpbqoTyFLLhWPcrA9uqNrVqVNCo8jS8fhgOcdicjljPDRjIVuMtlTgpVgra64GevtFwUZr9iBOjziT43xJfZz5D9k4uZxVMRbZSH6/uJVsKiZQGSrZLTXC9bOxwJkXeiIMtSPVeJKSPy2y8WgGfOEKymBfeAOSeOYyp4vnvB/mCKFRVbq2o7XbfNWnVWFaH6kp0Xl8O+T3ywHedKKOANxi+3eGtmU7LlD0iKy4OKvqq4k8fyxXMVTXigIQxVbOIeKQCDetkuGkOyQSeJwdtyKiTqQ5TXpuE7hFX6Dq691jfGygpByCRapBc7p2KEXap/UlAa0jASjDWBaCngEinoCA0P1qORszXUDOY5E97GbinwXLe6O8r+roiA3TVOaXD/lQ+Bm+02ateAG95rlagnxH76tzVIXWkbdUnNS7VI/sjRQ0GrvzfM03p3FDSzF7mOAy00ZELL227THfmFxbl2KHyGpFliO2SzXrSZl7vkFKUW8lapME6I1xzxlS/OIuxDvV6hB44OD1kkne9p3VQpm8d6pA7+cHYYy1j7P3QJMKYR33j1QVYdKnfV1NTriPKMVaIMF/Q8WUn40S+akCzBYWFoGf0TGgGyU4f+HgsEFWebeu0hl9ESB6L8Rcx4e59/gvrnWP5rYSIVrYsrC4XtuN8EcT4jvKJ8bGIyHw7bjSMU/jZuf5Q6AN1CnmzSFexuEntdBGDdc7f/WTHBN9K9dRCl3wccdb1vXavxfo+TfiJ14Vnv9ft098j+nsyoQvQfzHgs5CI8WI49Cb33I7NLl6Q+3vm9XBj9theOM6fWyQU45izzrE9c3q4z+Gw1oT3jmdSOcUwDhcOoJDtjC8leKrsNA3JjI9TPsOvGewI7mxy7xLHthHmTpxxBJkhFL0Juf89aqQ0bUT3v6eNhEa/Jr+mNPnVxmcyGc84TJ6tiWOD3adwE+PxlLaPpw6jPlzbtHs8BazJn1nHWaAQAm2wQXqXMg9fND2Ptmkfk2dPvt8yim7vU/k+ydrUY5Nx63jmTLHRoA5Mx0PfO5kR+bVA1qpWCE1ajk9OphO+RD1mcJFOgh0Y+h42OXa4DZVAPgGVj232K/BsdGEAtosfF2k3W4rCV4vP9cdSn68vE/lJcP5FGc+/RcPnsPzRkfzWS7lXwsU4msiBR+BiLdOLdAm+k1ocw9a//gVppJin63SJp0IUTRqmPAlNwWkuOCUpx6I+94sSrMEysJzIsYYDETxSPxg7VN/oDB7mEKx8p6WfaakAvgXwCn9KB715aDkpaLXUkOWlYw0eFlGA4r8ou9K9tnUl/irBH1K7UR0SCrdNEDkb5UB34KzA5ScvWRqy1DENS/zud/6SFVmOu9wPGGlGM9pG0siZGauPN82Sszg9cNiQq5aq2UHvqZm0JS/eL6cfEnzaOr13h/iJf4vz4drf2bm+dgjoOnrIC3Y1cNJYrbQ/ZBkujb380UL+dwGj9eJGDf6k0Db5oQDuPCFReuIcPGmgmJl3D/0yhQ8cD74kxAJgq38Yw8qBa+phd7KQh404k3MS88Cau2g9d9HG3I351haEAPZN+Ch/TEM57jn7nztOx9l3WCJzTZVtOmycz3XccMe9J7W7yc100fmMPlpcqL9PYHmEprFpcXKmmJzIi8qTM80nZ/pDkxNdTDcmATBMwuaUAdPTZozSa8h1YHNVI9gXql1+L+2GIlLcyOCf+Bi41xk3+LAxRQcaRG/NWwJ4Pl9jOV9qSOQ8NHicZZu+fEdll8mzZ05D2CptwynD/gMnv3bBya/5XLsQoqx0pH7+tNKh8Xe9eRg3VHvPEPCXnN+MUpdYeV1p3K6rIcFfOFscBp3kE3yWJy1y0xXSSoyZI91OtReN9Asm8yraosMrWUEAPqHNBwAeZEH11RcW9Y1KjI5SQPeJgXALfoqCDpGmzFNgR5fUg7bn4ac3iajv7e7ukLasduqdcsuDBv8kVHuN9ZeK73CtR/YcalyLO2QnV/t0O5Gf+6/NqYVpLf8M6yBOR/DUVYpVTQo0iaEc7NqnGS0AVWUNsezlKMkUyoooyslESFyBA+PlIoAlaEweyZSe3wISJrFIY0pEtFXIRHwXhzXV2sU8jiMCgRcBAqBvpyZHtBHkrLagQEb4nGB0O5nch8LRIlEjkajqeJs7SvG4TUa1KNYpHbpJRq2riXQW1IJ0JmrD+K6NftFfm9I15T9am0S7tYkYx1QEa1c2h6KoJKlJ3ckkOi9BKgEAYWSBdAbGJnlHA50DdeLuu935u80v1ooUi2KdOhYMnYC9ZOQu6TFbegw9siGJYKlgXwT7VbAbIhEsECwULBKsL9hAsKFgI8E+iavK2ne4M6c1oGLjK5+1GgAyOA4kCRmBDzTrTEjb1aiPD5fEqugSchER1jCK1OeSJYSmOFqKRGVgFjqiELUyk8jAgCIMEY51SDFTbugvlR9YKnxxELK8GEXqfpBnYKUtp820NRcsFaf4+4O+wy9OBHst2BvB2FvB3gn2XrCPgp1SnumyVpCII6kaVeN+l7gro1yfWU75j7NhJ8yw/+wdiNL7hdKpcDz9IhD7WLU6X6aO+jVVMmi1Wy/aO8/JciIUMh7Ldxgpe9ucX4FRa1/Ivftr9H/QWp3DYDheNyZ/k6qZkIGs4KJwedvzCCYjx9qGs4t0NneBO5dufpHg0nVO2rW3MpVMCjTCIvoccAEnSWlb+2C7h5SqiYkiY7mNOBhUWYk/ECfb7hYwqgnMUUjVuS2tiIOq0DharxE9leoE/p+Buz7LfBog9FK24k/DwQSK+RqfQviBXqi55m4hHgsvcAReaZv84bo9aHSGypaiVBmZKYcbDQOGShPKKs2IYavYAFUdH3ZQtKIhRKDGObbGWbv/yfmVWZr4fQiL9SO4gM0KoIzQxLOYbbQ9NrQAz3G/RGKPJbj+To0qJ4d6WohmpPW2/FQCntSnwh1x2J1qHeFoXcsYv7ghVRDocaPN6K9xhJ/K7Ld/KG29uJDqRfsgzb16W/t9PeyPjrd270Wdc26h5pBzDcgIkJsGoALtSICSjXmD0AxC6c6V75S0N0f30GO6a/L18eH2Qa/ApEhICwyCZWgj0UlPzNSzaYXbZ9SvvLCmJfWSBiDD2NOyDfmFGUnyo5rKoQwViWxaAiVYvT8YwLNEysMhKXZeyShxu1O0Au1QsRCXb5QnvZ9z5Gilkv61jxAEpBDucxvMc/iWDd/ScBvMNfjAhh+s4TYYUA97FuIhKJc5nbNfrOllnBBVryh0CVZJB8vSTXRMhQ23vCDs4eEGRr9HFbRSPcvxqYy3bZc6ej9t04o8k1b0v7mtFkNRFcYh8MNYtoAY24ZX65Uk24cHTeEFiPIxIykblAyp9joDjpI6KMk6UoRtM6dL6RsVitmmbbqElP9N/EuNh9K6iW5ta7xaYBauRbhCeKCN0W+1UcAOGrRZaCevoYHKLczzHPNsA7NLGH33qGC5Z83WQPinhZgbgT8WLCiZSJcJlt8heFEmmIrvULwsU5x9m6C9XSYQduAQTcW2N+Wi3ergjFVrqXguuxUHM/uxUx8MPbuWdrmJn6PqNpoYJ/TYxWOv1OCdMqs7xcowaJUonlur19SIVPEkAZDaPeCVCIvlbslIWzfpJSvpbmdKXztEjtVulcek5SeZ+wC3sTH3Brz6YnIhntHOfWUaXzlOnWoFu16vhhNTqlXtKd8s4Qbs2xV7XbXzbvFBvW522YFWkGI6afSrGPPyDFIWCx4LP3co85ikda7juzCW9weHEWmWGS0G7M8PeEGHISZ69LeZVlahQ94SfzwLUY8CqZuFcUnBjYT/m7ytqxdtXBidON/DWzY/cElshbQYOM0V/iv5/F1aOXLKsvw0oqTHhB9K9C+z6J5TxiBDIN8EEnuax7tZcIB0GaQ9ZrBWUW6SuryBgKov8vIYjj8R95IOMg64Kd/PtfaxKCmlbAyVANoueu8OTcCtBGfWGn6RXBnUFCgJWiOhlmSZnOqQERc16fIN8bUy9XTYuAp8TaeDw84FvdHvyWfHkQsLYdBAYCbNnixzYFfcITbkUvQ2wtd1RKbvU25BmNC/PwT/Q6xWth9xtXfmVHwZDUQ6S1arrebbs+PD2kXr2curS7/p4xPk7hrv43L+84Du0oXQUOsAm+pdTx5j892Z8mztNJvL5dJf7vizZNBsUVSc5t0wndw4zBG4a3AHbzNhautAvWARb/6p7pCXzYvL6NK/avhPz0RfJKNvtIZBwpZxMB6leXAn2PKqgORsSLikDF2tYsTdGgZsbMaerBJICHGOTKTBbYoyyJ+r+Exe8VxJh8lsWQu6GSy4WUKLfGpxMjbdVFhHkjODHvSoqj9O36AG1XKVQQCyL7NxLKPiAUa8OpjjyewLIrnRWqSKJ3GP2HZM00hid7fRkKOSRQoJPynkPm3/oUjdwCyAiAdaJYoowpGa0BNO2j5tb42A4uzhB5nKN9snHrT2Ez8UNzdYgmi23lHpZzUZHypj/Qqhbv73cvHU7XUQoPyyeXn2dIUgQyOilTNOr+pXBJSYywblPCre9Z/izKO+UobT323af/aiOVLiIHw0yuuZwHHO5W0/7vcdJq7YI5AdVSbDcmGpadWAjdm8MFFp4QJv31bvCn72W5zf+b+9f3dookKqQEkwCWciGcjVsCha9Z8oLof49b1eL6zBLT2kBdtz/UaoZJEe5BbplmO9vicHuSl691D4xn08ifvcQSSajkhTEQ7RrmafWDoNfVWHdIsEkQovWPeqSedTsat5R7v3Ljar3LYcAVggloONssfvjs8zHf/qlDaTB++Bf03K5W5hpBzsDkVvo/0P67uTUMHaHphzHeBTAI4nR9PdoPhqH7pEXZwWAj0euXfswlkmIwiTSFKHOfr7Tw5TcP2fRt6hA2K+Wrm0X7uD/Ap7xzHx3TkfSCmTsFP8Sv/ADgX7mT+qnnbIG+SfASwq2KuqgeuqMHVmO1Q/RvxfI8jCfAgoofnwMSvsEhuSAyl7O6OdVH4jy3VkGGkYAMooxVjSCiE8PYKVw5vpUH357lSvz0nQC2u7OQvTOH22SIl0ArknvPuKD5QcrlaDvHNnyLIBf6U2lwHbZgNpYcm+zg1WsDCkoFrN8FEVY6oCP3359ph+nRHnnGY39g4FF91hz00aPK98SJNwfvj2w/vTn0//YQlLXUvH8pPZTEaY/k1GEpsl964jPzTssJ9LZQuuKkQIGixyd7xRUOQT/BdkL3ENEocLdgMtlLyI2FhAgnQMSEf1qoD4G+lmAWZYYLHboQvtvUYiusLHi6QtLMyff3l/en59eHpar59gq/j+ghLBjFBXPh1Gh7QzWR0P1AkkrvidTmVQoiSt2nZAbr9BVqDqXmZl4F+nx+fH744yD7aJ8lGciPWCbWUbU6KP4W7ggrKMxohwjMi79+fXr97/8e43jEqPCndOQOCZKhUkY3OemkjoEM/y8WCraPX6OknKiz6Cykc+QmUK2qOEMYEqkqHYamXWCk3ZfHNMsa0Vxw15LTVI61kEdbHcXO5nfJug+UDzFqVByduUkOJDpf4d0ONPPP7CYxjQQ0vdvCjf8o37V3paCBubKhh0j+pBXMQ35LmG52pVWUD9Ylavq/+rFXoJzSmFjtmtJJnMotsb2njUf/846q1T/qchqeCdSjIF0VczbmdVzj+nO6tKuhdXzEyM7vMfIlMnEAxC2SH7UyizsL8Edyjo0fWL7Xbr7tckjqj1dIv8Ff24S2v/o+vquhsHcei/2ndPmuy4nz515uNtD7XVhDMO5AiSmcyv38K1JqgmT7XulUGAJGS7LUL97NinYiADzRDtmTZ2isRpFW2IdgigUoXdMQVyA63M0bzZyUZLFTa/fnk3A3V+ssNlqdATn+1AS+KHfCG8yTR59OAnw4dV+ggo7bVdX6Avw3BiJicdhUAxvzjQorYmfcB8hAEQMIbX0yQKce/Z/s2ptbwzHcGkpkXA+YCyVC9lbJVPzfiDSV67yJcvJhCo10f85Msx+h2b494Oi0bXzaq+nGs3Hr11sckfShPDfhIboXC27F0qAO8oUp7KymJV9T4PYx33xI5i51mGGECcyaUpzEO7Ik/GmR1xYQ7wXr7zc8Zq0wKsdXhku8Mn48Lc/5IjNpOyQrDylsVMfh05hQDaB0Inzk7fmeEXRTCVKaorKgvqGjqoai23HV7LhMKsB+I3Yh8+LwIm9VDECc7Q65sOPF5ciUM/df23QOzMgeS0qYw/U/y4/oUOSyQt7nyQV33ylebNya4oVtvqVi0OMYO03upGgMHKjeet4R1FgdUKAGR/tsF69wGsrr+L8NWEPfjT22SHB7oUpCau06sNqeuUrg26Y3s2kT60OmMxsa/X/zJb6mPZELiqrwVZi3ylgflsUnFLYes/1ryuIjlNU6VR+VTexo0r797t7sSLnNc/P3W1IM4FwJaNCzbdsvJuzBcga4tfx1vVm1JYEvlIo37Y0wHodm957AzHSwqXPno2O2rGg3U2xOVYqupKwR6ov7j0YOMq+X/72FfWBkQ3/421JOhb+MpPE3xDNIqAB8TmCL/feJVLU1y3zkZrIqUFc0sf+0Fv31oF2I1N4Vhd31X79L9m/uWu1o12AFv88gxUhsGfXCyv61FT11C9gXxxWE9gab3wH90hT8SFOcBCsDtHY5snP14E9EOejOwX9R7TZv4Bydg0I9u8JtJhtfO7zX/yhkw8MX2WC9UAzvt5riVNCVr0sKgZBMMBnuWdanoB8IiLvQnBzuDeHnFx9S6Ih6N3GAekUyTG3FegtIuZHc2MG5gi6SYEvaMjuZHccBE4cuqaZ9FPaWj0b8DXsIG4iCKN1pfyU6dovm+69nDEElz9ZT3VnRN4XiHPh7D1UhkX5KMfFg2pxSpg/x5/GyZxS8VJGWCm6234m5tHv0vwrFhj6uargiwDGwMzsTPq1ddgLbC/+hBplP3CuligarIFLFdDjbldr9d4CClM1sw8hUCL8Nai6sGFaKaJxuo0P3x/KjfapsvoY/MsmRayDZEc8R2FaJ30WMV/9OJ2cq84AgQEpFS9ELBchaPrBSwhrJmW9WyBgxHhlQY/RzqQUceQoNJTASGYFUGjNVhnsTWjhzfil/fSbQB7jK+sLZNYlHdKroxEcbf2nhceiWnUKebldyrmrjaV4wB3798KMFWUn/JPt7+ENMW6YUHVvRpTKy7chs2BFIIZUlCZOlHYFJd4oC0AVEsaa8s9sajetFjR6ilqSepCr0YqrGpBb5zLVby9sYLqT+l7CGS2ZzvRjrRUb3yhU+uAfXJYnSoE9SySqq4EPNuRpM7V8/BKZrJ/ZwsQZBvP4uEARFoW8oDlb19G2T2A7lJOYYWqurs5GzulNK8sgorObYAkziBKoVqka5B+Irmg9Dw91gobrXFzUaDzaA820rj1KEMz3jed2E8bz+UA8mHuNl6kK2BO1kjDxRi+XCRrL4em4Pd3GmJQXYLRM6pYlAblLlYQ+LEg9R7f7w0vsq5sRWV3gkmNWMFEVLVidVurlQ3zk8r6T5QuixDGZSpEC1FnPmBF5i/LPak0vwV6eRfPx6s4EezGqgArAOVAC1Lt+fIoogR1e9v1eBooH+sRkplbTZZcrJO5QsnOnR9pxemEaTuxBdB223Xs/4jParD0w0S0I3FPIfX5LVi3S4aD6M7/SYJqWxcmhVeBPR+qTT0ZdzLTjbG9HGPrSlPreRlU0UR+u4l2Ftw11SXm1YSqWTiEvbaDX+nFGHsa/s/WNSVIDATRs6xVG/wGX2vb7MrY9tx9+sVO2jYKF3dxZ/lBtxu55tg05xaD1yqPgwPiOF4HXdG7sDW6lv8HFJ8QNoV9qNMNCbbnwKrxWAxTqwISZROBe9oOQ3wUMOlDXBKz/bV+HKKc4GZvPdhtt8qKoki928agDKzg7IccpgLbHq00ppKnjPBAyrgIdHTF4/a7Lrs6eoPoYIRYN6+UsvIWAqq7OmkGogg3EF1Qn4ofejUddI1DpIY6Z0An67xHdfZpjjekfZNxw8sQVuy9C1sbt7Y3/lUmenuSmY3i+AIk8TDwJ0AS2hAo0KZtTp79zM1AcWzXhgSazXf/r5+WNJLssXHS7nc/73nOObvBIy3dl6SldVVlitkyBZUpTJkhQEf4R4VLjl+ELQnD8D0qttc4TblXe42PKaJhRXJPlztDES2tiPXI9uIx1SHhKzILW80W1/Y2FHzNBS4VzpqMwacvzTua6mbjWWNVuE4AxxmbNvwRtqMGIiYjxkfzH+mTfEX8l4jZu9BVFkJmzB/ocXPjjXLeF/6WPlxfjbbo77+S9VXq/5tQ1HKbhLym6ThIw0iuofAx/Yq6uopWtHWYhvZzPdr6wfnuwJf3G0rgJfyk9LGtJkpmjKrJGpF+UXbqGDM2ZZbUxDWmu/M0PYM9byhUUGnI8Tcy13YQltXEMD7PrqDPk5ENYQNMYRo+fjuRjFNXUeIz8GhPzc5eYzcLqeuH9L/GwkuXZhUztxBGeLZSHD6u3aRmoNhxT/2NLMnkc8w7Y+s94EuCNTIa5sa9QJWOZzu5v0ZSOW0w2oA9urXX+D0U889rIX0Z59SczC9YBSJE2D55kwG3oq7+6ygjpcAtoH+LtmpjJ6fNyGj1/r7FEv+okbpQ8jyxEErU874pp56RIj7Eai9pexFRd6Gi2trHPjKmb0akLbyAaZM8d1v8x+IbDvUtWDxM6XEoBK3bbabce7TUCfNn5kZh3c4svr/IwkKmZBSuIhgWSnKvA12VMrc/K0VEspXp/CNr5HTCNlfW9yicbeOMc/4cDohc6ylt0Eju0KHx2CCCkhNn8lDuZnJPhfGzalC2M64fh6yxaCKgs7PaXALMRGS8D45vA6/9hcuG5u+Hsq0vBKtpvBbB0Oj8XNtYbXb9CD1kRf21Gbbq6RyulauEjUT9fqODChXXZtvqHz78FIqzYasjFOYWSbO6dEplRxdpS4z3JWnn419dcBNnU5E4KVG8CnSm9Aq/w8Mkc7DxZZaIOFbbKBgO4jew7A0m/bIcxbv0j/7J+fltThd+iLdRMOz1opiwPHhMNrXjIn4N6RMx6ygfqROCiWID6ZVH/mMYGxPxlOJVHmRky6y0p2PSsz8bDPHEooFS1viarCPCtwf7Ufx2eBWwyhiOQ920auAM8U17132nOzZtugmb4/WpprqoDsKrPJrTXyjeRBUJHAvHlw8mHtubLu4HRI5t/JJGRqOrybs/eUUgsoSHlnO61GqO+uqGiWntNi42daCtjScXmyL+T97CYZa8zN5/5UX8gakHYVBQKAeIi27YxblmdgiskyRLQTYOT7g/6SeaX9UrdsFIPwdFdhuE1UMiEpF8QX73ZYa/nacyQ7g0Hg5LiFByhS5xGRz1r8+I5fv4YiAkfR4OyCPUFSHJrfjw3ivygTY5BSEPeQ6EpNDOmRTkruCzSuAn1W7/LKTW4RTyvIFnMyjMOKMPls/hU6++WjZnWXJoX4qVTNHZeWU2rJDnLV1WCnO6OWK456YrqC54GHDdQu5nYc5d2isuVNNVf77H+4QLadbH/q6QP2Th91ljrhzLzv1RP72CwOfVT/u7pCT5BiPmcOkRRxLdzSLtf0bAycybjFKkIN5PqoTbfRK1oT80x/cJzYWKyzpu2CdstdqK2oHib5BCB4vSVBB8xfEINAubNHQLOgi2dw4iIVenK0JmXRXMGJmqY0fVkZI3djPfKkqeCn4eHOzRWD6JFT3SfR2jH7OKIYqooW0z2GiFbFvu1JvPTDTsxkIhEgdPtvylthlR9J89MT6RAzzZfvC11HskP4Wd9W8oyCilbuHDxbcwI90g2UMNSWsBfIXKRnClBYbyFQqTPTPdwOH9pXUpRsg2MQVQuv1NpVuR7KF054Pxp7Tmv9Bq6CJaDCY7VkF22ArWk3kl6hvHY+z+Eto+SJchqvurWkGJr+0XIToMCukolIEDH+BJI6L4VZVJU0sc5cekYDx+TCJLyrus8vZ39x6bwrjWqwzqBH1j05VIo0MgwHYTZnuzZmegWc4TdaC6MQTbEZ+uBsCcrnd6zRYTzrgRFwKYKeETallgUCEkCPoItySwQ6DYhUI+BSYZQje5bGj9NH5SIEDN2uZ0Iibk/UxN4NQRH6/w0zrjQn/hmpyq6QMIo0cbk1FKzBnydEP9Oz0vg4JhAvZTY4oHpIBxRbnkTM2/V7SHNfhUQ02bQrYwkP3J2vNmE+ig0aZaXKQFyAxKzhERF1EvAJbeVcBixUvXJh8rIpio0YoVYnHVQWyJiWA/aMFwdAWiIZK2Rs2NtbXRvURnPdfm5Xo1TTgjuOIc4XNqFj8Ft8Lwkg+fhYALDqGompQXMBVSioH9Pi1EIXCAr7bhy6NPwT6jhnIGBY5XK+qqHPohsXUq1iNpA1yS8S7vHN4sOkmjbrVnophulY58MCDbp1fqY1UeZPjRWeXUnvpYQ6p/Mk4/6wym1+W5e6pMqnC3yshUyMGiErz8OANp+xWIZTLgSvDI4WRGsirDJAZEKuGwCeCUjiAqR6JrFeg2OXq6nfjVLOzMTjogqoRMWafQObEzvQPAwZWeYbMyUHoLdJaQ+m7lqXybRdWblRqv5zI1MnlFj9urjdIwR6+IOUp1lO+vPjQsIHtAV4n7kx0olYMgMYatF6CcGmQz/+RzVtI/k/zi45PWk/QjGRSBQZzSRz3jWNfp9qjGd2LDcSepBjVYrpjjlrH6Dc8Byq5avqKBv9p4W7GFX9HI32bvX1G9qnMgh3lJnadBwIuj9gAD75aV2pB5b3ZFRM3IR9X7gQth7cj34oBOv+gRNsmOpdtpDCD2cX6oukPD7rK/Is3dwvm5k0WROlLztF8aV4eEKKSdqTT/9S6khc9CQYzOSJ1FIqaz4CgzQ+FXzQSCmvq3jl+I3mZloA4WXYK+SdmHMHz745VKny5xfD0I2L+CLsE+DMbXA051G6Fp+JGQXYk71mUBpovYuFLGCjkeGAlZ/7eCvOz3R2kBUVXSVF/wYMlfk6tbuo6UmKNLYo7/irMhNGgej9Pi4nrSfTa6Ie+Q1IbYKC4+bT4cZJNRLFb0BLW4H6Q2OFAy3wEr6AQTI7v8SNdZnpJ9YABjmGCUntGvYZCVlEjvtOtBaijfhkDnC7rcsvHmxnl7UzMPAnNKbjyhRLECLkMMLkPsPQ0eKM/CLbwdWMb+8sfdt3yuyGCiUgL4AAwOT0Qkm/VwdJao7XAVwA+jAl3wrFwpZx+WLf3ShayPb9xY9Wl39+3JT6OCVltfNXjF6p9BmebndFky1BFRcXSo5QxtJGfVxTmRwenpG5AIpgB92lzRnWruxe3u650jHJ0Vec8emDk7ICYBAIKJgqjIvt1bkusQc4jqmX5D7w6qC0ujX2Qd8h425jHzG/QazpNF+dqFb954R9Trm4vBJRRxmMh7A8el5Kw5SbLou5R9v9LdRlZo9IU/otl87P8PGNE42N7RjnmjLxxXN11ZQa8rLCNCRFWxJd7RluwTpOiqn4XC7MrQgrEPRYGAepbQSXNvtsChQML+5KfRFmfRKl2PRLf6gMUcG5EyKB9w0Rf3K+mnfm5cGo9YV5hhLw+NOt/vr4ivWmpBxEnzyfYOLtHVRUA3Gmh9cU27AGq376kKUGDVmGvRZgpvykb2NnCgtxQVUR0ING/Vs5gGDuZAyU6aQFrqZweqc64JOApWr4978aG6QigpSDlNSA9jolhhBglm1X+NeSomLj3FdapjXQ3vJHs/VbKe6PzAw3lH5iTquyJYJgmX91RgbB20U/Z3Db1JJ/Yw0G2fouEFBb3GV/B6PNnfVQyYydak6x2tkZoJ2m3V+Nj1SoGTfER7V430vT3ypNjfOTgKTFv0fXyw435z/sPAS2bmIpQzdILu4kp43jj+mI9qsijOdqRnDrneHYwXl9oeON7MoStIjY1OcLC9r6Ef4p19XawbsvaPLEaoKvZHMOCYel0BDJSDc63w7JC8cZVPBZfmV8pC1yNL61tg2xp5t6PWjjQGSsFP8ShGunlRvqKKiVDGG8Wp4oxTgycBCQ4uhZwGXxGUJVZURaSzTYcv4KoWcMrkDf3SpUMfLZZogqD1YxfJPHauys/xBl+w4QVUA8zkSp+DVSeXNVIk8DRxV9RC8T1h3fAkDtqN5NeS7LP0+jdTyEweJwkzRMNxBO2iAL2vKBiaNOyhUTLzKFBi3pEiQ9QKoZhGApJ8uat/PASnlBPdBTMp/poMKiJDBhXqY5OXW+Jh8FGph5knt0bCciIc3Fx3EHnAiIxUc0bxiSuV58hI8ApjJEpUlDf06PRI9sk+AlzWuvTKcWddJq7EunRqbvRpHf0GOQiU4CWug3VXvblhyll+rklhxkUk7XddbVg8/WqRIoKPOTtjdje/zqpq7dShFjNzjyQ9bOrq57eOdqFWV7Xet9imVXkPQ7zjYd1ymlSmkHMK+RU62KVQsyZDuvAe7vlHRR2EdPtXf2Lc3TGFST/IHfFO4/LTR/APlCrRz9hLjyn5u7RSvGpHrCoBUVdTFoqDYHNXKfdtSrn6+xk62WptvCHKkgDf4OT5NaXEd1SFImR+ocJQKJMtV5+Jxuy6ZrYu0oDd1n+b6HYFEvGjiV9baTdXsutfMvlrZmWrv0G2+gtpVXwuM5IUm4ipWjVN9vFcBSOsq162kby+ytWnfePCScfpTvWivZgMZwH2Tw4NwB09FykQlnhZku4jrsFSPUh5r8uALJ9gQv05vVAv0AiOPiU/ZPcY0BH6ED1vaI6mZAW9X7Oko/RYtD8B+V2mcsCep3Ror+T4QaL9zI0F8p3WJMFkNJSDNDiDnxC5n+ehA5fmgFNQxnF4kk/BZBYG3rtrYfCFZ8Hjx78Cl3Zp5n5Kw+s0nHKU9ovuvggCEVUOc5/89+DJmRT/Pf7vAaiNvL3KOpiR00KBFkg6AX453MffKIKirxIKslJIiQqOdLGYpelhsx6AJAfPkFPVZdKrcAbNRdkRcJOzNW/VsFZ9OFxEy7LZfTZy1fxwRJD1tavgaVAcuw5FvtoRMnUmq8wrJzGk8rlsJ6I49XntZvY0N930gMB8bnOyYDYAPcNWT+YtHeYsneKppzWc8gXzE6GOmjbZreHLF8bsvm6FsZU+h2KxlppMZY82HaZ2eb44wXsPBetyVncjm+7DwnrRiTN3w/fyab3NLXDduqfTzPPA6u69DbVzRFLfhedR9A4PEajIqK5MGoLqc1o581t5QK2c6kqEFNxdy+gnW+J+EQzoJZqVqFQGmckCM0tnWM/1wwGztiasQkD3ekG0EKKrsKLm4hlZrKy5qHC9wiZChDlD/0Epa/Il+DOpUEEnubXOOsm+nwchz/NIqjP5wkT5/j2fUgg/z2v0bAut9rXO4lecpFQQzjyh98A34++52vmthH69b4LwfTke/lkOto4yxAF43KMx/lkGqh/ipfqg32EzomkEyMvafOa2yfTfyvLU0BR3Jb3qjqFltrmhtKODiyJRV4t2f6FuhfNhn2pKdBIXJVKJmKPd1dENIctleXs9csuFkWaqbjwBg3WGy/qD5rJiGnagTM+zwL8xCSYT9zMzjPGLvano7BQEUeuZTJm7KvT6Xk6v74W+NCkjN/HZkqYs4/LfMMUbV2P6rwgUUPKsiaQRUux/DKHbHLe8Wp+rApmeK/5XDXrjSTa/VKuli+FIXgy5riFZ1WkaFjmODAPZwrJBaQ6LlRU1hedJC4Hr8Gh9tkGiV/Z7QQgA6zbaFedJmw7/9fqsThSDiKaJALbdkGhIYY56dZmudAirlNu9RHFoP7HzHWKcTTQ/bKrfI4VjOuEih4e0c6qNx64vza6KkRIz0vfL3lXMSPwYv7troxvzjQ2hEjYZfelpWd0RWbTSIpm127oRfj8iyTBWYFoYwyLu6UxQsBpAlAMhv9wS6ncF0YY0U7mQ9CagBRPtx8XF2cWVkEV6a3PvIo3007Xiw6v1nBbaqYU56k4Cy8FtAmr2phZN7CmrO6rXBlYgXoCQQlHLoq4I0OiuVO8cdQUKRmb1Lodc57kszb6Nzz0Ctp/DsKJxnYcmqfamA0roU+On6r5UhjmSPXiD71dEXTpqPFX/NzW3R6fNt4fr9IrmylwZg+kj5WPdlcH6Omt8YeSJUnVCZSwPkynJclpblrHTNUwMIfOHbdwk6pVOy3hJaRElrlaJ2/2PpCEWvKROqJxnJscmtdartLdD8rGDRNpj561N9EHNlCt0ammhk8xd3m5qv2FHSSkYhXnnvr1mK3i2M5vQ9hqrX+EkglqEAiVBT06gVBYXGpkWBbgFhan3kI4B5cKu4pa3E56pKoeJS5JcjNPRJPh8XhJFhUF2xVscIsHQAE641h/5Zby6LnHV4x02zF1CaaiP/4Fz/P+bBIrhUtcrXnffcr2i3ILrNeCbldC7VX95GsQO5168LoQ+YFiw4yiqRgX0IgLVmQDBrTiMVNAjbzVFQ9gAhSXCzq/856/Y2svSu2CXuTjb5uLUboWG47q7czuvvzb5ysR1SbfmOZ8K5HtAjumjqjAu9eU6AOOvuXHeeFsa9pl9aQ4SN92ex036v+69/7SEJL5NS0BNmm9m7Q4WG1inGB1U+ryhI98HQAo06x4klIE/A8o3/MW48K91IMmiax3z4F3rj6LN+ov1fO7F6q0kAP/2S9ZrAZPw775wOUzl9I16V5jLtPQuU71P7+gIfCoLvrBG0xcW7DG/VMyr9+IfC51YCinmupxclMfoD4gFbs8ou94/kvgg/3Df0X/kngkW37PWZmfRACqlYZqIzDfXGeWN+uYbWZQnC3LflyoA8huwhreJU5grbwdLS1Kk+P9YL75GVx6qeQtmnIbLchjc8NwB7ti3tT/lWIV7wA3IAtXTJMztTCOTgt0jQAH+L0+GrUv3IJKp7sIiHGpk9cMAAVM0vk+JrMMfUjHgb5bXp5F6yC/GTn+yvQH+7bOd/12LuZ1P1/2XpzG/DxPQJqqo6YNUkVEOsAz4g2XAt16G3NVMHNHtWCbCaECx8kJ6c/GR4qWalug8qutIrbZCgwqfDq/SvgIFjfq5qmW6fgUXcL+/rQ0uCjEj/0ITTJHqUxmf45xHJuaQJZoU4ldoC69OFGX7qGmZRIrOBSPdOzu2Bopwi3pqk2TxNgZn/R4QQ/Gh7yAx5/cXehXz+qYpQyhdMLXK3VRCQHMyq8DfizsTfUnv6S7F6I7zhCydrtIQIWAJ98zpAlUAQkCyDKLNUxb8nHUYHUzKLIYIlUXWIpiIl9llRMDfTDr2iB7TYUv3nIPu0e8DuMJOsmuKgjuYfUQE2h0GEX8abUHdV7XTuvibM1S0uUQYcxHRnKd0FLIE89HXNLfL3ig0tntNFirLb3Uy1WwUz0EgYoF3O0xVi5V8RYBuBpm51zh8n5pHp9Hl0ZwYaCGK6ka/BN5gVFGW4A9FGZJCa03mWh+OX4kTRAo87GvjE9qxD8fpeBxTayrnbfmZc2TWOGAFZ/yghynTxIcDe3zquoNuoLKI7YB3EA3TtFw/3G6rrR6JuRkLT4z5uCsTZogwl/YwwzlVPdWw4hWm40WHFJMAKF0XikMM2pRldMcMieeKIXGn6MKrvNKMjw+hrhhrHkRs2BLxyfk1+9TcBRB017atma+GDjJCHbLAJdeVZbw/CE7LCRkL4+4aUw0/XtNhmZcxnLagJtf0Vl7P9OBwVI5T1SKrhM8kBPD3GWhvZrO56HBB1VUQLy/GH+Esyi8Ht09+yraNeBEbFzyVz7R6e+FJrl2QdFo2KLvYHtxqYbH2GSGEzOz7j9A5guFG+jCLNO4YLM9stPLcMz+yVPAnzb5os08Wii+4iDb/Yk68bl4dfnfyIHUq/JyHNpx9moRCKAHg5zOOTFHJZZsbVi42kw2K1ZZksV992TqAKJLsr0Vlnl1fFCbHNw2SBXgI1llLYcLP0pnlhvwronh17YGy9Vp9toG/a083E+rH86fqq9Vs0+cW+XrpKkHtXaeNneqIbYv+2eHlC3UO+uLbGyu+rRuJzGvmThmepar69WaELz6Qks56k77T5MvME6DblNXKIVh5OE5Duslm5sfK6R9DTC+iaDYlkmrnXY+MmnU3l7xX6prlHP2hRbpVwVTOv+26qnPQbTGduyNx6SBdiJ+pvHWfeLe1QkwN7nN206KoSAoZlDqSHBi8OCZtlX/aBWsylvk7sWWwPRUrWWXpxLxTh8kfyQowmwLMPcBZ9GluKJUZWvKqCpZvVJW4Tk9yN+B5U0um0OOyrsel25HM6Ujp99gHLHxAWqbLPKRJrz8unN69WLg+miKYu0yaKl60Wjt6+HsN4vrf15vdr+4NR6aZ7tCkpkeY/3faN1eO0CEv8+Q9/fly90G+yjnjdY4IVvuU3W6uPusKsp6DuixHNJgI2W6urXLq9rFNvpPfUwnKgBKpkOvqxzol/0DJTQU//CyDHXj7FrLVFbvj4aj6bnfFMSwa+nA0KWRHwwu5yoBUzxuqh2I3GAefNH0tSd+0VQ2XsNs2CVCP5a+TcW5z+dvLhLqGOkdQW5VCKte2dh+EkwyM3wQlkdiAzGlKql9o2Jm8QFDu6c7Ry356NjkcdDv2o9frdhzvPG/BzoLgZjV2mFpz/OYLKe6PuMBAfgwMTpsOQeFXp9M+yAP3XDuokw+9SzL5lk4nyXTZM0WXOYWQ96V6GL/Tp1is0NH6OcOp8K5x/4AaWZQmSwHCyRkh/Xt4OEj/Xm6OS9M8jT6ApcBdqu2H71wh/Qa+CLeKK9ZwFKbcatBsEk2vLmP1q8FtU/dRio2EtFKpMpepTPxeK2uh/Bx4qiE4S6lzsK1QTtRKezOHTzlzoL/MMbmFyi7YW5AmYBBLkpX5yy0i/IOROi5E1/6eCO6Rkr5sCe6P6FYmPYGIVgrQ+XepNlhKk9Q8IcY5vr+C6aAFLd3mAu6D1gYqeNlYhHdR+swH9HbBGhueQrocT2FOi/fxFJxdUr81skV9xJKViohv8PY2dNPrdFDQzOPqrc9J+um8rIiqnJOl50SW/DAABvT4WFkJWxulMSCPZHo/d4HHYHkLOZ7g9729h+i1sxP4Ka56wtPL/4qvQqjl8YgHW4tG00ey46yEAWbP57+KY9ybRSj2xaJYXQ+jrL7nQCuYcZMYsOHd1wD6AF9gZaKoB2NIGBgQQoqaItYhwQ+okpvRHrU/QK4+lWZ019Mr1OfnQZuyOniCJ/COAPs51MFkleaCHICS0hVJzf+APgSSxVIIys0aBG3KJVE0bNrx7BpVUJKD/Z9na8/bMR2L/HOVfkaMzw4my6AGl+0i1mMRYgTXZ2ElY1qs7/VK7h9pD0DLLKKFjuIF6xf/DesXf+36adWupr2u3uQRXVR0YZ6vrEAk7fjVOPePqfPqmIq/Ggta/zEswN0Jtpl/pFkW3BHRYt4d4XHkuCMVP06DcKoHyGfrNCCnMveOpLfPZRrFzLp/lUNTFrQivzl2GoOhdlJLGEbvkUlZPdIJTq7tdaLINeYYWifHqMt3WEwVROZRE8WqBVvy0LC4SHpDZiiv8wgATZkqS48mCMX0w9YeoVX4aCPtaiKe5tP+puRZgo2SP3cd3w2b2l8EO4WYNIqPVz2EQ/fdRtC/xm1E+8l0XJeNJ16NaMAhCt3PAGiQWPJ005iz4TqyWxWVkoOaFEhiC9PYpip+Uj9AsDe+WBK2q6aqYRPI8Wz4EmlE0PNLAMvkvACOqmeDLCvdcauYVhuOUsgfc4Luoipb049eTSlt6UqCHn2hPpToQ+yJX7KoSCBDaSC2tnp9sgwQaV9PilvfGg1jpluV/IaHhSfaVP2nMzgpJAzfMZN3Cou142p/Ko5dDgsYJKx5xm0QQMXKK+hJgJO9YDbrUo/GR/finH1PCWyMmckIKKD7YNLNEjG1ISh9MkxHvCcmT2jxVp80nz3RxnLgq+uieSIW7yXYHD1p8d/GzaQQm87G/dpWn5DbvPJJOhgObj9SiOz/F/Z9jcbFZl2dptS3nxz5yqNvOTkovQYzNu/tE/bk/yKWRayvd0Dk7+evRix7tkPBu2jY7xXx9yNCfVVCPgadt/U27TrhkO8iItfg3AAs+eXOsi/2qOo+2tBzz6jwDTj01eu/8aRa7pqZ+fZ+bDgryrV8NVr/LWeWh1jOAn5rnza+8YgCZjrI5GNlPVlTnTT/ixf+Gvz1I+ffjxf+GbWI7ZW5xOrXo8mdPHF54Ce10hrNOzXCe92Fis0qfvJMH5lUM+IaJa1568mPTjXPvLUJyo6fo9BpMURdJQpM6vO3lCQHghtJbHZnrgJBbx0lFa3KuaJOeZ8odYHEdYaR002l95i3TY44oWp16uVrAck6tgKaffBbuNQjee/AZZjXGF6Ns0wGC17QVzXNLPmtE6Hk8qecXT7opWjPW4rV7vr/zUWwjJj/3PyzCsTFiDNNsuOEY67ooHFBB/LNYS8UCUGdc5qVtkD/R5bTqeVKC46M3+RQlbskTsJ5AmEc8XJMKnvXpSWiP6sJPfnDMqn606CWKNExe0eR5CoNWQG+Af9yO1otI7QSZ5KzRNL5bPmfbf+z8yHC/3VV3STd+PtR1GfoWSS1x8rPjhLBRi3uGZUUem4u7mBqRe/1/ZJog6qxvkM3U9eVQPzJLUZcKyEXtAjwCqEYeGPO0ei4/qg9qunanT6meb5mBP5cuS9V98/pdzNaTJC+yRyuMX9xb41fartyDDl+bfNjzjE9+Jhewox9XAYXV48msGvHziFPjQ2hu4RV/TV33JRgqc1sq8XmS8dbbOvLk3qtl94YRv2am4QXpiz3cyIkcxYvNk9hS895QT4cENdzgM5ZyQekDABliyvntETQnIpVTR2P6pmrmmnq2a82N+eYoomV73Izp9RHnkLuM+uwaLmRiDS3dAFfNv6Y3jx2TKRimOdRY5+75xcFkYzMt02L8FfwViLFj2V2rM+Nn507L9gWVZBarbUFshc1bfMFMFizzKFyrBZfkN3dKxFA4QUyATm3ZuvApagOlgrTrm58bTJOHdtU1gu6DzNxlxdO8A977hQ4caM4nb1brcyvW2A/8vfRmJ+BednN5OmNJtkUS7Db2khtEhRQ4Joz/a+2TVQ3nrr9uh0CPp4unyPJL59T+ePa8vkdPWOrHYbjtF6ESrvQPeBr37epzF3Nq7xY8tDj8jOHHi/GokOvKKYOvQWdy6WnFlYWC45BLlN3DHKflj0Gjx1vTX9mWqOmHRvvUxyzC8Zi83xECunnud+ai4G0ebFOxQfZK7grJ+QnqtN1vN512k/Xn1Um0uj9SZNTn0+lyoDdfd7JU6qk3RWHAxnYUJOSqiX1ISHXOccNV0llzorkS4ty8EoWEqXpqasKsSPdAKbUULZ6d7QdHJ38IOQa/0a09oBOl0brBnUjrc0AT/nDg7iT59MNvds7Uu2c/rB/9Ph4Z1W1skMuJB9v752gGfaG5mg99YoZxzLHWZJ16R8dVwLuUuKLwkVCfOGFdKzPRlUDrpVCljgNl3EBChOdyrdspX6iSS7jwniemUt7kYKArU3TMQgSkF5NKwx8viCJ6jUrd1TumPUyXnwivVRHdwCneJpk0MVZW99MYxIRRNXJXuM91HHlWyQL83HE094oGggbTeeTVh4/KCmINAkNCjguHMLLBWv/LmELAs+oNboadXc2xJlFA/5MoxUlfz0r3tf35APnnyN/b5CPb0deXsC2o4GQBxn30qUGHn2mLvGHoQXAM2LPfdLaKyyhUlI0tMNKK4P1L32Z0dJAZqP7IVgfYwbBAtYjvjJUkjDGDj6eQTsjOci2SghvIXklow5Th7CeaClVJyrJa1eBs1OKdss6pbhzqI/fC2U9e2Q9UuAbjpDcrbMwbuc8f7lQZJfYo9Gd56XisjBe4/pFmJFeAcSA80/SaY9Ll7ppvOYW4nRiW7feLSyR8gA61Hm7aSgR+t3i3/TOWG/J1c08wq+m7GyoX2vPza/1NufSP9SJjnJovUr/RvRV1QI3MQTPb04CWJsB6ESVmLK4fwcvzMVj2EHJJMlbT7mVaQ9uxsPiBkPY9x6nPZtKe7qRt9tTaSYFzbQ7M0+uQ2OQLfjSrA/MVR+DnMHPCevpVcG/L0Y6NR0X/Av2Lm7o9cqyhb/ObycInH5AO318q5IOyuIi5XjezEr2AHV/vEjSgyKKle8tdYUPC2vZM21VBIfsCE9hE17cBuhhEB4dnpyyv5Yo3idSjq2CPJuhUTFtM7R7vH0Qw3vx+Xg4IGFRoBJ2UuKR8s+93UP6D79+VqD4R/13eBC/pPPiPN7bO1If/If/3VElOlw7//tKlVK/d3eP8d/jdvwCny9fPN7dP1DJHfrYbePXavzmCHDq3zb/6fCfVW9Mf9CY9GDM0E6oNvrnKMZyxrv04zf6j9ZtNL6gOwLLhNCOqtHTk8Oj+Hj4ORj2gpzAJ/GxKn2ock/woTvotToGEfK81XXjm+2QZsnDq3FalHHQDnavh44RlGw9by8Aprjk5Cvbhe4sgKag/GPCR7/A6oICP16nhQ+9tkT1H4dEv0y1sr54xLVlni4eeH2hZ3MLXTz1IYmM3b2mwFaACdwydPcRUvNHVQJWBA61PihqXCNo9mD8b/EcR3EFkyxWmuttKK4rLa/aABqHcx3QIFonDPOMDxoRmBQ62BF0MGWKdQK/3+clqO/0yqhnZjDdg/UVXLfmdG06h6ANwVmYDKrYprJaG3K8c7ECaCDSKPqhM/Z3rSo1SF4TFFFTupMi/FKF9yM0KMq+6JKTffyQpPF63UtzhA0bI9H5lJrfTMn6lxQc3iwYKNdKqIUT2NWSdEI4dskcLGvUXAccU8+N2xj5VnR3aq2qwbygxGxI88OjQR4G5PW78Pst6EQorvOrQLEekIuhVsMp5g6nmBrO9gRSHfIOhSwKyy7FMVuvAV23VJiPAgGQXpQvj3+CZ/tfy4nAQ0hMDQKr6Pf/53JQkM+vBYtcuxTn6AJ7Bi5gwWm9C4cLqtJFANbAP8DLKJrvdQb5v9FrrivIobG4c5dEWGOvrOFd1MohyVQauyFhLOd7n1NQG+bF3vKuz7pS+awTPGGybsE/p6G/5pF8SaFS+rfdcfE+b/DvD2bWGFx/RLJyqDAZKvXTyagsC+AypasIRCdIoO1+8PpPIU+Ua5buEPXuHP3Enx8WzYhPrPC01GT4M8FpCPB53S8xGytlzSSIFylF7niTZryF8YWPxdvYYPnb+k17cvFn2a3mngaZ4qS9un3SIlnj2tP1CDPxAi4/ab8GqHVIlfyB+UDKS5XwQZ7ejqgapPJQ8P3B20I5byGSwV45Bwg+uScL5nSW2uNprc/zsc4nCZGJqbUzr33HBaqaJfAQZ0l1pkyfIDCe9U+RLUML4gxZMPEHdIc0xlDiV7HhFTaqLgGsWgu9GO5UwTvhU5lG4KZou/m32ZQ/pevKqTdlZQxZZV4VnoU1Smp752KYX+MkQfQufahMXtzSKuI9EgrlkwHXmzV5hi2RGOEw1w7zkgR8iAZO4ocP8dM1YeW8St4F802nX9fF7MP0e8MMPMjkp0J+LqCbelPI2wL6lFafFM+VmyJpxezxgcDjT4ClVoZ5qHivuWeGW9R5SCzeP26R5injFrkK/HgxUefJ8+fP5e7FWTm5wisBY+silr/5kMdl2v846WImyZo9S7zM7cJTon1RSxvxM5oJmFaLKRgaDyryrXB8b1FOfpS60NgQe40roEEa0a9Rrn7F6IzDOdgprB4uJvDx47iaDVtbUkp88Ci3tsfj9LZxMVF/Q5sB4wL7lby3vz9EXTfjA60k9Q/dnZ6cXa8/VVc+z4Pf8+Bt1Ho1mzwBpSzdEqgA8/6AQmHeFFU4dXAHJYiqb7IfujqftiECN5DqzcmxNXsfHLPD6lyTZZYh6MrPPhVGQEQzlH/AqKBeD5OHrOEj4FZYJNNpBC2+w4GkbAj1zxbNPoWJ1z5nssYP5TgjCn6CQicXNAPxZ7QF+O8OJyqEtXigZv0c1n8qs2FC+bS6bSVXvC0oLmZpI20jjTbJA+rS9OZR8oVz9tJXMdBloK05xknTDj8zmCSoB3uNt+9NAnWBOjhWNh6JSaxUDNrNSFevHPYNx6r2y6QOthNtXa4INUrSTx+nBK3IujGSW8EY0KJ7uUI+AwV/TYSOCIIG/IIyMxvkcWsZqxJMuWWnmsKLuKps06IYoag/gGhUxdurHLVWflqFMf/cZqQD4WJ4pOzwxm2SPs519JgH5UwLYq/gKBRTdc6rjiui8o/ulcfyM67TgSzWejquxLKPb7Rg1vpWLIi7C6Ytfmkm7eI24I1wxo4mp77VTrLnVJkdeKZVuODh2RlRZ9yjajcLXQkpSBFFf0anYJxfjyf0WzH0SrvoVyg/NXkRDYT2D6yCbtprL9qx6OqfOzFLtNPNOV7Jb250VSqESEIbLsbFR8h+kLHjB8NW1nBCCnou+O3zUs21KnLc/4Dj3Pbl3C+n2b5o32a/0hJFDkhUGTW8B3FWtK/1MaWZtSUljapjQieeI1GHXWjptMvkdQrlFFuDVU4ZM+HDqg5FFZXj/IFTT9vo2kF+ynMRmEAE+wPKI9mUVRQUxuXNHds6XW6NE+XyZCcNCQG7YoXDKepImYZ9ax9ffCarc0eBn0dRNyyYzLrkqi7ZxRwkmWlURdVihxpvoxBH3+DDv/5FTOkBHW00dJK2rwwclxkZu6obGIOslMxwyOlzIcfyUpa0Pt3HLU6dqFTERbgCCWAhoLiUQ4r6h0+FvV68xPtK04EY6etSx99xvOUhhz0MbfRJFtLHU8XzHKYGkA3hNJgPluR7uo/hj3V801HhqZPUPatFoIesXYluegfwxhPdwhO0dj4OnmxOeTZ6yx0qcEV5dbseUuCBJLEtRbG6ej7wjvqWkdDJiLOKNhTXtCK8ntKFQi6wnkpPpet7V6iBGRUDiFcfJH2a6qihTpyGdhRfAbYM8eChTs6ok1vUySOPCoe/rVT9am6429ITEOyn4cxWpBpn0pKaneZGmkFXfyiS90LxHjgStRRa2d98wiI1ZICHgc6LxIfYekXH9PxAfaZt/kNjsvVD47eQfKc3Ljxy8EBBNc4a/bDoUKeuaEffEGu6THXH+LWE3vx0+vJZcIrjZ5D2qQfEnoUOeRFsn+zs7wvJfFL+cjtyqPC/tnZCL/o6KxUjhjRF4t2wg+cvAQrZkQcFN39kzoKM//7oP2WOVQMHDx8++JmGqzIlDfqABv0AMfRp4f6OIOROKPDlY49vqf40pZItTpcR8qRAJBQcdwe0Bt9DlTbNGuUgH+J6hnjN/d5qd1sSgO+gQLTu5dHIdU4rkmtzstqRKn6WJ51NB0Al3qRUhv5VH6/T5LRQv35EOBTkHKdbbbicVqkTBTwB8G8IR0VYNGXSepl5Jq0/FdqkFSO9IGjPfpWgo2p1UZmLovj+8hQL2NzAmlotFht3xgshhIxFMYaI61VQPzRWIUB+M6Jjji6n16cHbxIhnMZ/nlXb0eVUBVmjtg8NPLyOikaaAWJBZxjynf9Ee+dzG4TQvIZm3NnMYojYaUWo9v0JG5Cak3dFplN+IAU7ghQBEVCZKpNmfhSqrUc4JwFJvJ8zxVx5zFTa7rA4I/VB2qXikbpKHhnvkahMhcwQhuo7+XxB5JXS8Ve1BhaEnd3Dh+gkEVp9rpfS60DnwNHfbAYTg6LgsEpcPXc4fKS8ihsv4Y+ieHr9SCFtK11xHGo7uqh1PAxep5p1+BXr4GyTJNdi4lhtlKR4iicKE7LmtkDWKDNZaeGmH6OIcvv0EqQTvEC52RNkD4YHQ7pejodXbu7V+PaLCq+nOXENbC16LoVmhiaV2sBUTLg0oxHlUMDDGXn3Gw0prt3WcfMBTkyaD96fVKP2HRce0971/Bqhli9mMtyTJq6bEj5W4pkpSdRUxfOmhDsXz5kSPn6I+7PakqiHOUHFU7wtVoVUIRjx20l+5iTzvdLPcFX8nHm3yccMM4U4Ii0Eb9wKczrVh0RKkNSN55vfOIjT0RJUWlbxHiOuS1LBKm1rQfG2iLq/ZyEORSqYSvSnT1y7sCnpb0Q/1s2PTsf8EnlH2N/rQuJnn/r5R/gUAosRnRXqJ16J6ndrLWpUksKoawHF+vPRjXCgRWttHSl+GfGM0iJ5it3BE/ddIdPSTllWapsd0F6CXoqj0e3+R8LTfWZ/NpTST0UnMVhekG3BXKjotApZEjgnZ/UK2b4KILCBr4syICKP/MaiqgB1BB+vJzosWl9pBTa0BnbAr6xl+thcOBTI5ybEdP6vtVZ7cU/te6lx8fFMdc/vzf1Tgc74UPV9geHT8p2ZDL3OfPE42/gTLzlTYXrPTEXxcqMM88WjrF5uoOTwI//Xv/JSHegwuSnKsXJdd+pZRDjawaV5pQ2gU/ldkdym4XYaRvhNZGhSlPhx1viUpPzjOsn5x3maZDovTUqAgerBybK/u3e8S9h3kI6YWaD40LZRNPXlO9wyKK4OVjSmJ5orP+cPZsPT1oritJxx8JGWkYGgn3GvDB+0nHYKNTg2e4BWLTlD5SfFGn+gs89kJ8Ev7OMYP7dCn2RLS49kOyvp2KdzX56VOKLu7ZTtDQp8UYO7paHzDzSKF7b62k23MDPdF+FzKdgPjErvn29BXISgQPx8xQQ/Pg50REywshxNYOhE6upWBL3nqu8jfNPN1RB8XJ2XCflplRclxBtWI7t0OeEKjubEoCAZA1zRqu6ktGMmdE5XOD6VgfAvEP5Qr/C2CUW7qCLswO1KCbcWLZWwkSnORfxsr7ORPVE5caT+/CNpx7Qcn/y2BSGrfOGnnVIbCC6JWdvZJRUnnhMVB20SpOMS8SZJOetKxZfEkfAP1YKivD/ZMXgNcGJNCy9VxsIm6ASsWiCWIY8qS7IneVwkBf1bJiX9aybkvHFegm2YrP+D5XnUNpgPT8Lz8gmEd2H2X+clcc2BeJfY+/0TJlDHZ1lK3LU12SZf2PjbioSGOCZ0oDuzKc9Luf6PumojSdUSAnvwtaCA5F//WJfrNX1AQ/j/Ridy/NPR8RGnG8VKqbSTnWZSW5vXXlq1RxlurNEytDwhzdD4g483LNBHWrXIcDXsgQgWBW3tnyu1x3lFiMMlRJcr5uCZpX5b6799/fej/jugTcOq+74uP7T2lb5fObCJT5tdUSVxSkuDPQwc2Ds51NWP9N8/+K/zqE8r7g7HttkbfLogNaqPHDdw5iEVAIaFSx8dR8Ucn/Vk+0jl8xfLW3bGyjECCZv11p2BYKsM5VS8nJwOD45O5oAcQyFBdRLyCh3+qSz0QWUjoariVI2RPplouSr96Dqjusg4YackJ+s9KIB7yplxq4U3sA65wW/c16enR6QgcnNbMRSEl2w6CauNyDpWTeXYPa7HpSdf5XZWtZS1SOh5EKuvrDGvco7OQ48HfRvMh/Rr8nu/uBYDNSXOjdSrHOoMVfGwcL+jOxoTtaokdA+0wNOyfLLG/ev2ddCOkQULp5+ycJp2WhZflqjjfnSuKqESDQug3nXKKWVNMj2FufaFG6GRxR/LrxtIPESBezcQ1TxiwFosp2za5V+Q3CX5xnaf8Bw/SPB5Qa/HnH7fuUot929H5RF3OUBI93MElSb/V/1Su5+Syj8uz1WhtTf+oiurKJJQOkqo2tEEpCidbO9VM9wr1PD1Ldhjxm3LORyIPP5gYvHEk9LTWMCn9UJ8WVZWQ4lzomfJ72XNdgPuc0btbq5DTrDpapJdMp/lr0zAzQclGq4YfkwvBvBGuKBK66bQOglmx7/OHgsKU9h4/r1laxENCqwMLngrKHd7Ix1DaD8LB+X7j6UXYPyDFCXJe/3tczFOucYpD8VM+/1RNgCu+1zd8ML1B6BhIrJIcKZLh+KT9EMDwOyBV2GftGxlK3EzXqS6UBDu7L/Zph7dzQ6xLIK82u5qkLl8hCER1jKyMbyIHi0YkNrCZkRmFDwqk7toLAxRNxjOqR+NXjAFsfxwdIHF4zEnUf2QHICFozJAdQOzmfVjY3cQdF7QpptPazSymSNBClMzvz6qF43SYSkbRliDu0VZaOVpeC6bEfeAqH0ZlGl+rkh7jmdIuK9gVhFqqeUWKBOdIc/517NItpqb50oBRjQhv5VqTtixackyXWznlHRODT5WHb5/6Qwkr95i39h/2ZXxmCP6f6xu0GBCJ2GdN+N+ubxfYhQFypnquc773F4z9vXLKE8wh/0SaANrM8k/d9464WdM0lJOe3G6u6o1xf3OWtGCj9OQ0mrTwDzy9Ed4jpR9PTrjzDauEVhB3NDdDJWvAuN0Z9tigzPjMk8WXEO0H4DRX78apiNotHdxRrrA961FHi0xuap/Xzm3mEN/diO1b3Kz5DzZ5AnYwmqx7+5gcnLd613czKwBpPis6VIkxnMtVt5xceueMJyFS0yqMitVITWi2jIqB0WwM+/1vOuWRKGVQjnKfSZTE8+qdFRyy+oJiDcJea+lY4ieJhSE/g0hBDxElZX+CnhLSuOFd1bLhi6qS33gwrZNKnC2pXQ87JGTJFdEA5nKr2ZdUWWcA4OAcZ0TB2is4uGgkRNeTS3HtXACzyinOpmb0PrAnKRN0h1sdzbo3+YmTCqfb2Sqnrs7ozWQ0xG90beqCNfu6CS0ZupmIYqnxxleV2NZUAw8IzUTSkVDyGbd7GyJU1IQOwPNofmFQXjCN0tEEwPhEmzdivQ2CF+/7h4cAO2uq2oWNB/FCqx/0SvR00XjSzEkJycnIg3wG/XjmjuHi8rRtPkZ7apCN+qXRWbCcSauDOuGSbOKkiSk+RYKII222CPF3FJCfvELddM7+bmMup/L0I0ntmDfAR/nbbUIPBuL2wiewVSXQS7aszUol8NkmHeS0UxrW1W4GsySRXKRhrO7TpEpfNgt3JJc3jpTwcaLVvykFiVFccbKZ5SVRStaGaWU51CMqkUE0Eb/AYeK045W/+f4V1zAx/j3+1lkv8KPQPbUrfaHBgC+3qtiNB99vPPHh2o7SHb+PxzJ/hfJ2n8dyZi8IP7aJf0Tp1tAHL6o/dvQXNcF84/oNrg0v+T5TJl2XZnzqsw55ExoqXDrqMDAg6Zwfix0u9Qk341D8t0q6QeUfKmOmzKp4fpsfaxnfhL7MKqidVbq3WJPqZdfj6CctAZSZJzCdy5zloKJopsbwX4PFimVrQlZLEN+OLkoSqRPSg0/kdOvRaWVE4yIPp+wT5sMRtpDvGvSQeG/9pynjQVOlQqXfemox/mN65GxcqPidx6d0Qyu0udwBYVm6zWsf5WKa55RNTTlUf63e53Do72Oq80AMN9gD3SP/qoHOmvocAPdN2PswF91ruiADGubM5OajbV+MnSQy2Jf/VTGy+fDflGOEzPh2NCeTT2Jv0Y3rL92PUq2yzAKqM9ce7LeqQn9zE3gKcVKU/jl1vgM4+Rp54cqvVOrN+W8maVKwgiLqzTXSUP6mcyj7i5JcKTH+6wKwEPQVqfbkn+WeDKg446Bn+YTH2SG+sNOAxE9s9kIQWknfw7FEpIMuGl7UULN1WVKvyjr3KHVdxrC6JfpBSG08dTG+0kGLOEB00pQRcZmDqqEOuA/VTyVtqAZQPZSG371nwi/Ggiq99hT6N/GRDE+2aeCWlztb1Lj0pRnUTdIZql8xezmbrW75axyolIbvl9SI+SenmFr51dTW/iRvRNBIsDE7Evn7H1FJXzXdovvRnpNsCff8v1LfU/dydelaxjh9GG1+SzhReYKNB8iwBfNUp3vO7PKqXrGBLTzL6DLNb0c+47E/Asc8KZz3e2mNZ528/cznnbT6EMylZiutGxgZ8cGoXoq8Thj8zRKyY1XdU2mf4Fe+18v6/Wi8f+7btY9B/xOL7oB2/N1SeNZrXte2qjRX0+1dcM8qcy2rLdQpLHJiEnDG4LbG0ydMvz89bNAdjmBmS36/lDO85iJASPIgN6mX3EG1x659XUue+C+sQyJpub01Hlu7ui9h2vXeVMxl4WL1k5ZFLf9XVtf0lsVz+pndnmMBhjnDC1OVPzK9bW1zpoXVN0HjCIo8jC7pWbM9gzrCrI4qx96VTIf1JbjJl4Aoo/KoTDWqqlpS7weTq4UBAc9DvTRgmeGmhgFLeum0UBQF6TXSz8/5xr847PGNsoaLlmcQIlWy/Mjn1vDNfZynml7tlw50k2dkz2HC/XUS2rKHFJC0D+LLRcJqIGpUQdGSh+7ijJXn1nM/er9UdDsK8fm7ID05Y+7bxOdoUfIxFRNS3AjO+2hsBbsrb7/p6iAtzVUwOIxMYVw44cxO7STff+cgF7cfXvy0wjud7TUPAFHr9PU6PSg2X3Q8sBe3O6+3jnic8EUac0WcWuhgXANhp/INRnlVAI01rAMdnr6htLa9894+pdm/Khk7+PUvJC6vxaNqQN+qhvhzU4yzzArcNdr5KSNN2TTWQ7sdOXPrTGJp6yQKPW9lTDMW20DohQsVyilU6W0KQXTcpOHfnk7Ha6biQcJk9JasXy2rzKADVw5YbP6HWXxGShwyISjLquj7GUUHgD05lvHFWcm83ntTBlSbR/d1wyvc+1sYql9L5v2Hlw8tuDop9OqEdiSAU3mtnLMmCIr/6IzgxDyhGE0OvmeQ4/rN3F9cwv38Ul9TbV9WljRKXB1aSNI6yWHVmp8awgh7R7nPU5uOhCbH7oaF80xjk1aZzW5oOHpvVtT+qf6jftTucCXzs9lIt5cDC41v0fTwzELYKdTX/WHmfOJp5sjYI7fktu7FCH/6ffu9i69TCCGPlOwyjojLsoRrQNeejH9IDqRij1xEsub0QVqyof9/gUU4+OBrdN1Dxlbm8KZ0W2Fh9rJtMQwo+5piLt9nXhiIxAiIPmmgvdwNvaZcZJuqD7HxO5rrgqZL4Ua7RrUIIU6quuYa6quGdq6Yf6whTvo+GM+mg/SXnwDfJ9OYcevGFbeXoMetT5v2+vux1P345n78dx+PAiLdmvYdkzLn26SfM0Qii1y+0kuUEVkADyju5qJdeORVbMLQTImADeqGTSabVX3g7HZoG2kCTmbdHKdUYUH6eTSpmmL0Ve08J/T2yod3rGJZXVLl6tNYxGvTl2HJnFI7Yzg2tV0pn6smmT2ukoS73smyBlDguXhG98dBhaqSvZHgmXTWfCfg3WzpIUdnM2INNxzC+cN2GZZ9KpdJODYd+oc8oja75bdpauBqalmmxp36qPqZTmzXemJfQQXZC+GQ89B/JQSftqb7c/corgm8JZYS1Vh3spCClDfRIWjEBjxQrbdhPw2h2B6zU2DTbCQzziJ9m9J1bSaKnr5vNbhaC8vdy/Ss8EQUXSRT8tj6xwOMD1FBSBkp9l0WpjNpdtYPgcCoxaYNbxDDAZERAqI1hgU2S11G3XobG6H3KLSsiCnxTnwRPp4iHgFrbaTMtbDWtVp/bKkqdFfry8y6E7DC8LTaPG4YVxBuHA98kbL8g7kURPeON301uK6gdp0Y+2N00lZUzvnBiobta26rdTkr0VTAGzbxTZGhBXcTbtedSCt2iqUIRSy2zU1+BCdqQqOftmjWa9rmnNMiztkUkoLz6itFKHIl1AklV8J5JtLHl7tdTbh7264JnWl2yz3gVuLvMf72M2Y2sZnZeUmN3dWZP61m/eq28HfgPq6XMPuTUl3qKm93Hyfhfp3p9v2yWDrSa6EUKEaAlerhGR02DMrFvnougehA6hQL2kiwAwhkYScGm4zih0Tc4dq2w2bRJu1sDvvoi6hleo3oQ/6CmWZHZBS5GezvCEEY2XtnhXLBcxe9rBvC6IeFgS6yYFxwkKWuMFY06pGEufKp9hkrdsioY8n2rHli4T4OPh05ECddo3rLC0/Wm2iKkinjHWEK7Hym9des6hvEHO92z5+u//2VVcpA1IUKpYk0j8j5e82Vdh7XhrJIyNRw8Rn6GVJS0JAVIOWRU+mhJhFz4t4sxivtBc7WPaVBFnZNRP2I22x1xNWFSLNYYRc20hVTAH2QXAMfyL08QM+3uDDGODAlrajrEgVHUqmwHiYxL3e9HYSO6AQ4FxfAWJPRjG/OXuZ4u2pv2FPcVd59Sz/jgXJ8Cu0vokbgH5Sf1vU8i/UT4zNSXygEmkcTmq+tXjs3erFiFPXE5ed9QChheO/OPaqailABq0WLy6Gk6OU+JHi3ssBYBiQLch7AMD3l7awVRXEuYa/fdR0f3kN7LeP60osd6tVBdX9fqTfSSqY1D2tqwKFX6KqjY5rmG4vrgEQVQlytXRJEgjlZ3txMQOFEl5xBlfi4MU1OIAzlaiba5lKLKBfCTvYPSRG25v0nipODt/YYpYWEMsSDV7HFYWzTMctoN9xXLHmtHxxi+26uJ5ZeFVV3nm+sBy8YGfDCbl3/vH6orziMqvNJcvwj1KXai1Zil3bvOing2q4I7qxBehPJ6GlE3bD9qo0JIl/7HXkeY9MDb0zHF84OC6K4p9UEdAaXdkt+UTqq+r1jnDfY7bI8ckeZtLAurgQbdWkmTq6OAr59lhrsj5b3ulYAQVZ5W/6acwkXRPyQRrx7/Xqd33/LeQzC+l1m5PTBN2sDs4AH95hWKXg3MFHzZGD5KmtjCR/Y3KSj/KcZI8QfM8iKFKd4xWfJ2mvhCPtwK4Rfnq7OPDm37MaZtsmmlF9sXkBF9OoH6Yw3TfrBXEQIHTutcqFeretwKLVuSUNzBr+P05shr9AgeCXxst8akSU9hppHgZZNKfsfc6exikP5nsPBljmZf+gW113Wv1Vpz1z0n5TafX46VWYFlz4qVP4TKVNIaNX6txCeHjuAf1ugHzM94EuDZC/F3ygAQN5eO8BbAOg7oRC5gud6e8HD2SHQexO8nJ3ObduM3pwB1my4JyTDwh/E0BBbZcBfZLSEc8TsmRJLUwkl6NjF3sT9Bj+s+7rfiy2iLx+0Kx/gu7xbqqk+a7Tw6yRe3x9kOIPbOoJE+Sr00lb7WQ6JSzWd/itDG8jPHiYWO6G65Kf0pwNArUlL3uR7NNhIz/2lK+smklSnn8wSWS3+/hiYGapKFCARhxio0s1bkrA66T2OQOpj9+897BXYTcHZVngOKrvyCum5ANs/opHx925l+J3/Qb1atbNG8XC5ZuniVFXiTfgABUs1Mz4C0snq4h3GmO3P5FGCVgep0NtfS9qBHLWR/1hY2HhRpawoEr72b0H3DgEvbdW7Ol7gar93b6/Ro7vg7XTe2avQbGA2q7s6o6wwUWIyx6U3Jp8nWZF6IHWb4lyUAATrx0ENoiY+44Oh7PYdu/ZUI9fCw+mv3MnTq6hFNi77vNGXPbYXH4Hnn3bnIT1fBLJDiazxo6WA6aAQNvq8oTTQGajbIWZfbUnIDuo0N6gh6vekhWUsY+M6plMCd8jAZkqJMo+lF8o9QekviR2GYJhVe8NyvgVGXVvZMr7DXk+mU2paUGpLtlAaWec5hEKlHxuktXoquTfkewTA0i+RLK+/jEiShogSV/49LmtP+lBSl8v9Je50Clph5Omr/AEF7w+DbIpdrb3re/uJd+1kuCmqsOlrirFm0P3IUEiDCLcNcVS16woJ9v1fP58Q/GUVjfT2WVt1q5pc96Courp5SReuSLRiSNOf6EOMr24KDW9tEj0FtYm+suKRH9RkWCXtMXj69D7L7VLW/HXHiQm019pVFK3zkhfZpVDn50cLb/iIPCmK29u9OyxP7X0PVp4cFvRq0h6PkDRjj5CuoFYSaeyT+ooCACO0jCTzaiWSDSFMhSaTJEdn+ccepkc9WTmH3ujnhdOhg++sO7kgwpMTbUy8I9Ef3QldsOC/g+IplCDMH0f+TfVH4vZ0cZ1peVK27cvm5q+F2qLkEDoye7PuwEzQTkNEh8/AcEMHxdjss/x062YkdM/vK8aoWhImq9Nfejod3BHvX2jPJlTHv1d1bCrFtbv1J2HJazohIxDRHYEfqh4+W/yUDvH3Mq7vtb5/2qdL4Zn5XP61yift58QGcf4rZrWSPqf0zyHlnn+9Vrlrqs3h6px8YkDkvF2NAozHQ5gLpXhlmQ3FsxQMl7Uoi81W5nUMRG2ErtZVWplplR4vhSppfGfZLz2YsLe8fdFmrQZ2kCZUm1npwG6ydCtZowzXytytyP6WuMv5EUxjgn9Cb4P5bemsjfTKRfQWt/Q0u+8F2m2UjVDUlHzqZzUinnFW3PE6YnBcd0QnsOuXo2W3j28MVnL9ZL3cr2iuNJKpDiEw1zZF6lqrOVPRcZf9aa0oq5wHNvPj/g0ytrrSTL9VKy1her3XFU9umD3D6sGr3usfvep57novq6bIDxFPNf2dWnWu8ZMVhRJpHHkwcMeJ8KbYE2qraYmk5UqPvW2QtVtOduJYn2XvXHynOCKrhk9CmIG8Ob2CyQzVUrICNZJHDwuNKSQ7Y3azvGMfu6x382bHkyEb/GvoywIr8WIA/4s/jltvGoMEW/hz55UJZpSsIUOu5l+AqbH3qlwDQnV8qjX6l7j14cPrzI89mITuo9yOOowB+2zlqmyQIiD9mYRF+RD9UsxDLIk1Qgj08SyI9gKsQFVHNp74x2iDMMikgj5//mcbFTCbDOtEA2+82m0yi++WrYwNR7xf4u+6MBFahpinoYs+dxr5HBpOLhCp6ei9+kAePAl7JiWceI5m419UpFrt5zfXSHi8v05hZkJ8YfKslzkkguko9GW+WFA318Cmn9xAUDoMJEm/X2VxhZr0Z3te5Il5Z0hRbL3QtlDNM6vPgqqmL7pMBsO+DuiT0GNCNH9cncX+8DUmsrGf15G4sMZV9B+ahR7TXm1eRmJhfNq8zt6x3PflOcqAOHK3+HxS2PywpCDYzmQrxIE7pO9pNOcWXl42h+p1JFKxVp8uVpZUat8RpllqnLL1GS/HxHEGUHQ6hQPkvG//jV6kAxUIL9L+HhYSS4ltaeaR9SuQtLphRQBkvxyZaiCayl/UKOI4u+JY1CJqr0fk0cqClzIsOIJO9MeccKoSijTFQKkOil636P7HIbxJFVerTjKnKS/I/7LtclHKz8uCs8XqdZgN344QiBl9eclbWRdfyhQXqp4eZGGDk2MvV3SC6TKCiGrn9NFH9mecB2PIlMJ68As4YerTAmv2On1xgUl6dV6X6bsaX9FsPdr6ymsiv/mgvYvBrSQQoeGfAWL8xE0hc6GYqVHdfBcD9JPLTPRlHWh4mDoeIGAezR13GLexRNac/zLI42sQXyFEcooPiWj+OkemXB5I2gD0TEbl4SC8Ohz06sspgp6GNMnnDbQb5V7a3NHlHvLufT7jk50RBiyF4XLmpxzZZgx0Druvdk73aOF/srytqTqATFzv7mCO3fLKfcLJT6WdyKnAhTUe/KL4vOFPtFw0+rI+j+NgM/sY+1lD8lwjSZ0l7F0EyFfIW2tJc91hE18uJbTqKI6z6AORvVR60+oRbRxzL7+heSGvSiv+tIGHe1O5ovevCnM7RQ6dv1cDXMO8i0bjmJKwZFPdw7XEe4dHxO3IJIcUI7O4PRq2h0HvyXKgrZKQ1ADURcjcCzqNUnILSM0hAnz59Lu6DJ05JIAuSLq/pSG12mYRjJzDfGrutiHCmDjp+S0P3dtbN8TjGMzSPkRXAy7aU2J1MgQUbnc68miZibTlRAcxS2xRfc/0QuJOp4lWCzu3O7pft0/u9ibf2VuNS9ti2YCsgoJV3Sg1aYm/aVebDwJf46+0KTDua/Q3rzijDGfX3pBGtCDt9/nblEfrxW+45fBVzhMKaGlSbBMNskghRfnPFXNIR+lVeg9tb2oiTDdynB71WpstqFmaX18fNQtoZLFupkIZFsgfE9Q2W6YHzYKVo7wVqzFyZtX9c69ER5FXXo739s31iZF4a/rpY2k+JoOjIU9QSyNe7Va3dZ5ATx3KD9zUp8MD6fAkORovrZay2i+6uqwmr67lmwl+bq+OkjidZhcgHNvawC/qcvbtvzf0W+DzF6nX+rEr+4cCv4NnQIueh1yJu3JML8qcXLR9vjoTy2KIWGZnh7sH+wFcI4+09VHX9VVXIpLtGfIo/0eeC0yyKn3RL7RKYMKcAIx1c/PJrbwwBGpPER9LrNghBN2E/Z/01raj3h+cdPS4Gs2EFI3RfXGLZT3pV6khso+xu15ctN7X8Cbkan1CarlCmqaqUdp3ZZq53ZOO7deO4+cdmpbMCu7OVXRPLwQ04AqMteT30fl2UwWwgY8oZddvz5n1If7903bQ+oya6+bIFd83EHv8RVkGaly+UmnoRcp9pW5p5BO93n5OcBmOS5Twm9ZNIbqKZHs9+i32ZPQ0HH3qXU+2cDdsD15cTFIyWBROxFw/F5ms0W1Y9nMD3GmoKe7EzvdiZ3uZDbaF77j2m5YoOjOGT/NR8q3tHGUU9NFmNt7/dtKOcE22oWD/bs0SR0Fw8bv5IE5xKWf2/THgiNM2ZBv7c0ctXjfLfsN/xf+xjHznaCc5OxphLcwoE9S+tOG5aPXD9u/tEEVT95dXJ2HonH2p/LJMO33wbCNHneiqQKEpHC0MZ3WZwVYd69wr3zs7nrlrm6uVOsLCzLyc9wX062aHrda1FNU5N8ptrLU8ZTUqzwl0WrNnXLtjHXxnMsiWdBqLARzZYtEmHupcm9fP2wug6fXorOF6zh368Ah7tShiH/8yehPxTqi74JiHr4BpbuTTsqQ5p/ZVPW5WyF6k3O4ip/19EikKTF/IogUEBHoffWSzdS/RdTNpytSVDBJYlIcYRRyW23yCXxz2+DHZvbigijoYnZv+rswiosaTFYXxPnmDl9ij/d0RM5ucPbnxWjjyTneolMwuIG77KAfAPRf1TnM37mpFRNMD8hzgOF3VdUTMy7KnYnkTGet96r6XiGfy8YVp8o61EFnx2nLEVGsLWxmMH+cMrtUBk6jJ4GIbOprpJ6TUM5PPkAyiaLooYOM2Gs9aOl6pP7pFkWSrk+a31P5tmJpvwJRuQmbc7K0XP9Lak44fpigYcbtinEdR5TURJqpzvGHpIo559xvzjln0k6rtMc2sVuX+Nj2GXcRvZDLMMWpm9Kx+rhFf9r43cE/q/hnTfNhD3pT9sJvrXj+27mzn2Fmm/bT8UcnAABE2ywj2UbODoLRHeakjKGknaLGR4kRN5RG3NCBuEErxBduiA8aRiHhrTqv0uOcWGNZwrEJC1KCb2jdPQhoNXOQO0qjFiu0IAoIaqhK4NbAJF7RDwRaVVHaS31FOygkgTkqRoa1b1PVGB82egPywzjNz8UKbSIPovrBQieVt6tYK4eDHRYP0qToeqThunw+LwdBgRBwS8WKUD68bTiDfBF/VyrHq6hU82z3igs2iH2kqioKtX60f1aCC/oPIT24E/exZzVZT56hhjE3CeypfIM+vtHeQcGwnY6DANrMYKtcPjyEi4oBiQvgcacuRETBFeqQ1GIFnD1sBdpXBzaQAntKRX19XaeQOo2C+W+rlIobqJxJCm/KIrEwxEJhBi0Uj7ANxwLM/vRDkh7aPXrQM9K13Jp9HPQieH9csNcOeoRmLpeVdtnjx0R3Y8x3ri8kz0KkaK+pYf/TxAMwl7ZLrXF/Ko9fzQ23YI3TN1iDepVP4ASqvuZ6eOzSafiuAx+yRgEVSyPXW5N9U7SRdczf/jOgvuuyWKrHslyqo1RbdWoXOLULPrULnNolEkpKkCU+m4CmS6dAxFJEoP61TMdhFK1Qeysm/YDIg/MQt6+XrBoA6KlNe40bUiV2nfJ8LU4ns58MTv5NyHJZlIjJxsCxniiT9yr85gdDTRKlsIJhrojdU/xq0a/X+NGmH0QAEPvEX/FimDuuFUnu1VVoflrScUljZCWeLu3pr/RSaTeLkeDrqib3VUVeTWxVc/fd5sakazWDINqBK2U3DRDVFbS5MeqaW0h3ZJSIpXSgqIMUu1xQEwWasPXQqee1gMZ54dCa+f2trTEhautBa9UHGpu92QxZWpdHxaeWlo5qvmehHkdM+d/SkJzwhqJ+9SIpzNkrZLbIUxjg+Eif9ZPJ6Y3gRLnJ7MJ1A0tkSHGXAvSD0cQgYMRDAp0Gvesr+CjAhDcqTfvc17RfqtWvb8xvBTQLtc7HejfM4HhIHf6RzCytkzz6ezBNeJhGU14RN2jh78cutDCLNck51HEWXX+LUQH0Tu2qMKd+aXTg5bmqRQcsCF/t/M8XewR0s4b9gAWJ40bOk/B97R0/fbefGJ6S0ZfDGTvJxxejqyEk++xZxmd4ad7DNMcrNxyv0x79rmFrpS5by/qgc7gZUPLJPR0f/zlqNH4yEgmnyRe+b9j1frcl//lxWJRdcUCi0Z0SPt/7bXEX0+M/b3wseUxgBGTJSRqqeHo2PZIpXIVmW5TdGJ0nP6eSfpylyR7+XqfJTz38yPLkZ/Vjgl0DZUfWDTy+pplUFTnB+blmHZ7f9VAHcioHQfmJaiDaiOu7KiOJmO6w0zUp3F0+7Fyq5efKjMi+tPffvjzsBjXssHUamQ968tPOzt7JSS308xloEj0eHtfCPlWybfBxJV73rv55ZsbYUqM5oZ9QV+S5G45omGaMSVNiRrSDPvmuJ3/pyV97sZXjWlV2SdzWn5M0fkdPvfiXXpLFv/YSS2biXfhJ/84etvRHGx9tfKx18EsnryJ5NQJ+EJ29KvOIieekFbfXN3P1dCTA4iIl7hPE5Dnow9gmSfoqMULrtr/Uxs0lJvFBQnG8pyP8/5FZL+c01CyhwRYJDXc3jOIwe/iMeJM00UDaMPWcPAM3vvxRtR418NJJwvBiMCjH7/Co2rI/u5U/PvOjspabl9OglyL9UcWVx/1lALeWAbKdOStN/uTF7Wl6hmd4KLJhcati37qFosdw5/SkvSJGNyLWXqMl2J1Powb54ZoQ2aqkSo+Vg+Zsq9Ve7651IsV+/IM2VhUrnR+ynbbJelaTQwXWIh3TvqaJtGpkvduMuEu0FLvl5JI6LhDogsuKD0n+OK0FUO9eyre180BN1Z12VbVyVN157oFRX+srnAWNYqouxJAIsnpY3xKo4Le1kGkS5jSqvq7RHy7NunTb4nAWtGupBh5bTXY2vCI3FhVE1K3tAK4W8nYp5tYvmosqR7a7JfgmVFsuZ48BqafY3OvVQLjOGB0NZP0MwUuD9I0uq9dYfKieK3hDLXaDWbmQRg0kbyTmN2KDwj5INBvPGnTgFPq6QVomz7U37u6y9Sr/pCAguvyKk9dXufoMTWfBp/rpdMcwqeTFZDgLsH9yaADu5Pc4pM8b7GDqgp6VWfh9pgxfd7RqyYnKOkrzS2Lr2V4dESkOC4FXP+3v+rzyKII6mpqxS/+FuoK0EPzQ8NJ/oxIXkxhVZfi4bYG4NA+1Pt8+XhcA8EPWB4nPiS6iO4QVhxTBwXcaEW/hOZNjInA5xU/+ewDj6f8e//dAgNUFOrTx+4RoUr65TtME5GNXHP6g/M11xTY5P6fTTMs/2J4KWc+6Qivzm7R1gL87Odh+G5DBByxlbE676yoEUa6OvWrWIWBuP0A7ACWnsmV+VRYMVQ6uP1aggFmdhRnRYB2Y58+fdisaZvfirCQxMlF4/Y9ES1n9sKxim7CC1s/EW9mj503EHGjyuAVaGiTlc/Uv2Qtr5cCDhKwxiDinRwj9QBDKVXmavk8/bKl/u1PWuClN9iRTpBYdDO2ooY69pFnxurkdx+wic7SZyERQa6q3OlJ5saFDSdMJHcnGKooywO/N1NFiJz7yMwrTSRKSFRQXI7GSyUyBs7z3D3CjKTGKlYDsvchoh5yNoT74WLl6o+MK8Fvi/6RZnpYtaIPdD3xG2ukK8u6XNElj3PquCFgPjscuNlLjW472AKmnj4aKIo7Z1VxGT7+KA/xIcXwfbT4k+uHjJAa9xjqkwhEserUHFGRIt9d15vc7llo0RmOl3cr2C0RXTKcglLOi9ciMlTQvUuZgzyQRmEaZlm0j0+c2r0RFPrDGh6YgQsGaBpBiNSBppdnKjCA57s94MI0aaVGEWeQMN9Vvn2fWzsD0JdahL2VG/xX0n1JWV+hxzl51vrDif9rIte3C9lVIV+/66sYlIX1r83KLSMnu83V8ttod+s7oe/Upvtee0WdBn2XSutOzvUqIupLRA7p0jGoK9FADpMbTAf2gVhWNlvoPfWXiuQPOtD4/0sbLxkF5dT4sVgRkhCEK9GjlXRnYPwU7hVCqge4yIAZ/hWpXOIQ0s/oRUaAtcknwKMjLfl+z3pOm+pqM0py/3MBYtL3+K86GMHJ8PE6LC3o0PwOPXguWeFPTVkbaCEkuXo7z/0v9qGn7xNtw04IwFOCd5DPyc+c8KizFjwlVOPRnykj0J9by/Z/pBw5mdkIZUn1HNkwRpALCJXvoO53t0RAjHiRt7lKYbqU4RbDH1Yy5YzryT5GaMGe8jR6poT2aPkO86HLdVZo+4RwP+V+rm05EEpcPSm8RDjHiBVUq1Zoxa0VnV6aJY06wTVxlYS/tw60bGq8ZCHYIXQmfsi1h9EQFz6Lbm/SMh+jF4ktVkHSKXOcwbpLqPgyQY1YUu9iRAmdMg9r6Cqe+4gMIlSSz9RRz6vnBmaPAe//LZ9GKm7Aq1/2Etlz1E5qSqSg3EbyKVtuHe0bXZg3gqmxNtdBqy9ZqDeS6bNdUQGmOy3YXnx7NUcBF8nwVwnZN9EGS+Vl7ixxqdPjjRh3EP8ATXwjpBGWx+5pty8j9/9UQaMl0ZiOngzgk3FKX10TayGOOR54v4X8XK9HdkzOXG1lUuF7tBlLkQM3kIhch47fwD13K0d1A2QVODknHObE12AkDk1zdyuaaokjq/ncCRZvVZxtTYHRJPd2cSruLVVh8a2O82z9LHOYikVszXgEmjhMXzwlyjS+XHSdbyNQ4c4lZfvpJVUtNsqFu8ntPZbwsUzBWJ1N9eUDMFyW1tQFVkj2lBZ+3Wm5KByltN6WNlI6TAsEbeEatppBOvBNY6z6XYsoMzfQHyow/lqb72oLW7yTTqEa2unQcjjhvrVa9AwVLCWtVQosT1qsE1/dXiidw0/fwhI6eltGdXl1aJ165RX1d/GIFewHdqIvtEK2EyJsb2CHa2KCNUrSbqTdEpGTeGJGSVyltnVJUKR0ebbs5s0JoNTDNYvS/VKOnFYDfloVDXxyygR4T6x1JERMiHTahPuJBMhVNIUK5Vf0yWTdPFJQcNoV+ueCrr79e8FdLSLwzKVwVvFDkrlciIoswToSP0EHeRFWszb7W5pVBZILK/UiQlXRqUlkvogOWwItNobLtNnrgQcdVTIfkpyx0gj1AcYwy191MG/NB5z51c/3QDxrimQthIz7o3OduLsuvnXyEBAGetOR0RIaO/M1BjE/rmLHSQw3z0MRhc2ieK7yPUWAKOdIP8cXo0zr5i7hO+0mTBS7UqawBYD0jpJyKJDPO4yFYMCbRDk2neMOJNBKhZoNGLQ+NmhaN+OtF9cVBYyqqx8Uwzip5nWWQGnzz8GkeULASYMA2kE6pUalpcSX3cQv6mg/sTPmYhUyb5yGWP5GzyDM1qbO4ky3EnWwR7iiXbl7gHSX5+4zzOlCP8l6al6JbD9Kn/jpQsmOpgWWwSqOSN4n07U1HMjX6xB1s4o8tEd2uYPlpXaOQnb4ro0jywtQ16MdxmW6aV4VzauKzILk+HMv9fXI5OOy/j9kFrm+jRqbVBDNXTRDW9dC7s4A0p9MpjRrPLA3Hd0v1u6He40kiKscv1GuOvGS6DBaM8TfwMVWNE1+ysT/ZUeLbq8TuEg7s1uJgNPWDEvIcE3B3Z08sXoo5B5bGK36SllmS22i7dg7hyaHYKKt5KkhaEmV4p7JKZQmzZE00Q5sNL1BDhg9JNRlm1t0WUd8E+3P5HuArrQ9UQgYqYUWlkIbPmqoFxTeVMjHIFG9TmcNjsmBbeUD1G4v9i8kMb+oIM8Xi/O08J1accYTmz5bid8UgbfeL8JNSzVTs0EkkOZQoHp/6lOBsZpr+pLO26hK7r7QImjN/KMdExQ8nyD65KNTWMlEpWrpum9K27jopsSQnPRNIGbw+0Iho6EdVpqRTSrJWgx6skDAIz8mV81N72hBCvirCHEKSSH5fYI78KVJ3YM08ycyZqb3GOKdKlDHsg1b3QVPmVA+JIObMc/RFT+/7DzWT+u1T0eZRvy0/m0H7RyvGqvCh5QwXewfroDVlnVF6OyfHRKcfWC6d5FPrG5dw+pGYVc5nVziKM09/FRzMx8RzPxsohVjaML+GAlIfeMOOP6Mt1v+lZCwCu+9X6SbM45bQP2g/7FYXuVKVppPoIIu4tEUKEI8FKbxf0Lub+jkWWu9xFu4HQqoZnPpgrDiEYHXsJNdbo1Ie6EQRZfuNyBpAPPm1tb4Mtq+LC9uboDKEUxOuCyoHGxRu8r2piQ4imiDqxLk+rKrqRCTpxzSs0nJwYRPxVqlSxzx6hhSSeWiZ0VCjH3fQ2WJ0gtWFzKzGrj56sc12B5O/8IDC/UTLe09sVWXW0oqmId3cdhRXQUqTnH6bPbQo6CqBmY1VBV2NjzSt05Fi95ZwnEg7ygkgsud9daiI5avh2Vm/nLvRb4ncuy3ibdprdq6A5pisuVttWQFpdh+kDeyrg8jAK3BFBzATVjSUVCdP5lmj+1asOmaxb08+nxfVrMxn0YvgYcBd8szNY+u8LLlvRDYYsUTf53V3ArqE+8shi+/roWfGeTUmSZJiKguuyPBFH21y+zKYYDTpJDg88YsKxXEVwSNVWnRtBeCq7pYF5KOooLjogbTSlruo5wmDOrOFxmj47mQZWkEYcXUASODjQYlrx+FZHQ2JLXc7B9GqiAq4SyD9yzbeGrxQQkCa3Ucu6xnSgyFznkeofaRqt2jwNvOZwcAKmgROPoGyYwnRuSJx2KuDw2zWpXetvgDb/Qse7DRHgxluPD4M/argoVMUuxLeL+Fh9s1whj8G2T+pQHBt2x+vDKiQ4rz6ybmqGZ0Pz0uQ/LMhIWkQYCtTSxSai0guqkfdT/OOPsxv7mtXpF+jXcHGEwSfz9UtyJfQLcjv0S3I79MtyOfqFuTtVUOWkHb5RF3WK6lRF8AKEtcQSxPwjE07slLTp9gPmSJRh4MBbQOoxJDoNDkuFEbrTzNP08TUb0UI9uRTKXQgNQ3vsTd+LUDwFB+HRHEhWKO7L1BLP1xdi2wMz4PGWeO7jPJMmevREiXS3CkBK5klypykXGY8xFRMFwgB8kuh/gACWfC/e6oJuHJQ7GzvujNS00SZh2iBZgUrsQ/bdluiYupwJLMKc/UkziLwyv8sDLZ6YVfDF/1h5sT0jr78BAfGCp1HZyJS781CI+PnC9LOZReF7qLxLY5H7lHRSHG3TnlSTG2IaD+AtffAzeUvRXRXh/2LKa2F1To0V5wvpMjrr9bYqq91V/2blgRahdY0/KrbtrmpmSKBLr3xhPOn4FqbzCWpgxQxYp4yPeOXam92xsUsfBTjgrN3br0BH0aol85WYS/j5abI0k4Q+ZXqLXHFGlGL58nxpbJGUt3L8nakOE3CCEStMCzUrucWDeSEmw5M26HeC9EsMcYCGL5geVYffcNYMdf/kZEeIpyKM1DGm6mBKgwQ34Tl/fIszRchueflqKCjdwblzYNVkmQGxh50iJfFXMTfG2jgN9wybe/g00X5mebEllkCl8FCDNaeN5seSbn8RBgkBj/CX2xOmwowCq64cfebkMrt0kjwjJHgesSTt2BEGExQNRg+CyC89Vdanw38AOLjkc9hL6qFlkFabP9qtJhkfwNG3I8EX7PgRuSvIq72WFIb0E9EBKJwzuXAsObLQmzypAQqnh/VUbNZ+IOJ8oWUVpnLXF2rzp1gXXv4t6EG8w9GB1gfW6ecUXc8cQWYleniPqiuouoYb+MKVtW8PwFGYZ/o6UaQia9EID2gzNR8bxlLM+lGFUkcxcAT8BiIBYW4OBTkwiMzfiC6bielXwxyMUj7pFKANT4FV6LmSUL/GlNCFH4XqX/VE8UwSsQJFlPXI6qgAM0NBeo5AUoJsfx2/8dTiqxAzXMHopCd4txpDwUqPXamEmZT1VzqleS1Obn401ufZ3pJ1HmxRSjUfh6ZakiJ76bTFBL536UhfcoOLLF8qGfNm/ZaBfSsKdtrUeQ2+fLGfyNQHbrse/3oDV+2mkES7J3srLw/PIjAL+1fcUh3N6+JnJ9PqR8rfpFfI/KOjA68SpOQ/9Ia/Vfng9sN+G9xOwK43zX87wwfU+dapnNvi/ecRbVcFOVYTeo88jdO+ezePAA/DjTbZaAceU3g8iKdenpad5KPgz1SEh9fQMqU9huVm4Tgyf0csZ6K866eVPuWX7LYD+Ia7oM0z8vRVSIaFx/PhPaGp+pijwwh0r2b7N6u5AXxkv5STyZD3RMVe153BMlTVGK6FPOtWi8s+uI+zNyHhwMbV2X6Knw1TvOSwmhNk/r7REgVCAbg3Y0V5au64pMGvl82582EaywrlWs2dhcDY800UTYpGhynxD7ZioQC47we94Ux2MxhsKlvAoZllRTAGLz2FANdRzs48qkfdAF9uhgPB0BJEs5wr0jC6aL+TckOjamdslBLbmOB35ZhK+KaIIXZH1xcYWaKnYtxupBZZZ1qDMoI61zPBgRnFWv8ua9UWfUa8G86Rz/6lxlEb2KG7TcoSXjns/rQ16DqbHB6TdygPhZjB4uhp+ZgNOErffbZLbOEXI+9IUsIus/p1l7fSN7EeUI9SGNVuXWQ5TcljKUDaaj+XqoLiykclgNxe8fX/bKRSWG/mP2aR3G+FDe6zYjQWkAqrruk4nU5Qyo+bm2GkN1E1kFjidXql9Hs81f5yaLl+KMkYdL7JsmMzK8Gep4kfZJT82/iy3JH3RXibJ4CsEGZDvR2l3m988imnGMyPf01M5MTfv6F2Wlu7uwfb6sDXV1dU2dEy5sLQpFqOl6ksxNAdb1BXfsDrqt+4AdHJ7N+Qdl74ka/rEimr5uH9lfNAb/hFuLJsjjSqnCk9ffhCL/A/z4saf/fwpKWiyWtb8ESO/R6PLkroXWijC6LBh93by56JR4r/Oq6XyTX7lMBPH2WfYBiRtzFd3gAm9yFwFRZzz0RsTCyVMHCu0wZDXXWiThlD4pKE6BoYILB2wDzMZJZkqdhAY8+Jf9ajZTeBEpwwjNKaG5yFaDFCwKlrnXxK5LLYskVLquv20Fct48lbB+R1Sy5Gb0M1CSxJ6A6NGrVl8fy0hMcDvwkelIGKX4LObt3TqnrZ3RTXU2hzhJ4gb6N70MK5rTM4gTqRzVqLvtpVvY3aySRcBdClovQrh4YyokWuiM/lbgVUSvzsPHWrVczeYm7WTt4xT6Tygm70gjhQyXQl6xzxoCpjld6pSSCDyE5MULuztsqb0d5U9G1ICfSd32cdjWzPm8gl7ByWFpXxGX0pXxfVF70yIzv0wXYKzRWcMuX1o5L+mn4t1RkVdWUVd7fU+dF7+/pHMX2MWqARP8WCSqNs3GZXgbp3R0HJLjjjV2YxvYHX9sKNyHhDLFy2WHUkES0xSs+bYyMU9fE4n0YINxl8CRghHwM0OD0zYmIJJfVfC0KYyfTs3BUyiJqcNr+Ll7di1rYKSmgdw+JJbVwQD5w0v5MCx4UI+V+GaZnhuw8us6IuiRujwPXgNE+dMV/p1mIFApHcZG0tKu+ZC3yuHI8OMTUXgnxppaFfFVKSK7pBeGStQxnt6N5CCzuSr4stfs1x3Btz1hTZ+b+bjdbm6+1P4EA2iB+dmcTuu1GQdI/Tu1B9S0nKhpc7kBdPB5uiy9v1OkfrSycur83YN3WyUtC35ApSJKgGfzrXzPpm0mw+ix4+DCYSt9IgrWnUSQWj1RP9upqp/MVg97UqIm+ezyFBcQOj/Y6H3ijz+/R6vmGTjk3xfSCLIfwKfb634LwIm5upL6m1jQbxNmUIorrZJ/mZHxiQvz6e8EeYrX7gYfNas68AoAwyfejJzRb/74l4rEsvzD+TqHx/43YckWMmbPATup0j1i5e3YCc57ApdEppxX+u9DJt9+tfQdOGfQ6HKrOKr/1cFEByLmJap57FjG91apmha8qeAL0riuweb5XZOMbRTYuGFHyppzLJDue1bu5Yd+cOfVetgxvjBUycfLdq/x8mTNduoQS8+kFU5n4O+NG2ajbcmhegEEn6gou46yDgnAMBrviUouqhKMbh2L4pKwE3jTv94qBuBjDcXlzc2OjtpFllEkTUtuJ27S2kNCCjDYf/h8SK7zYiYMDyoADDXNxGUDduJbydQfEcWDriHMKNIIJ4djtgbaTQec5RSeYAfJE2Cnx0wODlRbApBi+nRCytJyOvMEri2en9ZzNbo1h9CHprwNDHAzdHivfFKb5Q+UpSkgNy5/VMpYDmnEm/gwEpyHJQhHaYmwWhBN8bPCr4TS3Gi+bM7xecMxUQHACfyugJXCkBi/aNXjR8vGiHQdvFIWVVrd45giKT0O4t0F/lXubQO8zIRVNqtT9Xo7L8k9fW5PV3vYan/Iwdc0XlDN1UKUH1GR6hkJCnufQyYp3+mU69mpRlegAxCqXiZyAfGhsmcjD3DVVT0f2c8jLFBC5ebyqo4rBZ7f5htfuu4NyGeiXOXzq3ZBapCqmos8J5Zi5uYEzJWedV7+C6l2TRhbOnhNzgSNWgFVjmp0J9lt0ScbvrgqsAlbe/XhgE08B1pmey5yqT2GpsGBukL/03AyquUGxqbmZclE1wBREC0bONvOo576jXGbJQB3mRVwse5hn8w5zFbCjoUUIwzGfLlSsShHSya4KvC2v9OFXlahORzeXCuhcG1gEEGqglKazGY2RoX4ozjMrK1DKDbzhMphhxQV8xJlMNjtRMn4k6ZPSeoizS4ZsOkxdv9b6MKW/yHSdA+U82rIaIloN1Ot9IpTLyLZtD5WlaYhv2YySxMl43PZr4Nnn7rtONKIoUqYqmBvG3Or1uyLsyWMdzhuNcZSYu2EGUxsGwLxhGNtrdg1A9K4ZqF1TFO8gFSyG2tOAbcjx+jTKG8qh85liwZQTsEJMsQaMJRlh2R8QXOD4fn6eQYSKsLK4ep0l22scYvWFpYU/n01SJaVjgZ6SyWXDm+r8/xPKSYFYoZJGOBc8oSpRC5wFnQ6XaSL7liYsWWhGXkWF78jtnNeOJwB90DH7NQxSvC7wce/3QEsg/Z68o7sY/ubsBaE7JLMoBkSsTP3uYlbz8BdzMrWaPAb20Dw9jImSY+Ymm2MqcI4N4/xZl9kS8l6cqHq2bXFs5mSO0yW1+7zpW8zoWPX19Vrr1evp8z0KezNPa4TB/OrenV1fFEv3rrN074y+HGsq0QqN00FB1jlMsO7vwmsO+YgT1bfUoBYrXlHPVDwMMcUsT1e+ZRmU5+WlR/rMC4EIYczS66J0I65HQTipFfd8W+9ZHe9b+7++fO+1al9t72sPFuzEmxzqHaia6QeTV0dCpAsPaPZLYOyp4rRBGmqw6SwLJtucxxvH1l4MEeazT75hGi4qBHYwl6pgAvOius7fzxT9YMC19b2xwsGRnDZ0okqrILU6h4G8Qq06zQc0qGTsK+GXT6eZJLoaeKXCSSRMOb2IXjmdVlvOCqCqc1b50CTXYFfaEjltmK0KN61yTX7KpTL3juv27czRKXND/6SwUF3fpMOUbeOYCmnAdm9H0zzEXAnba2sc2I6PqErZh7uURwbdmGWj9WCtKkstxRrn36CmzuZ5J/hGnfN34DrVM6tgAr2BKY7RO4X+7B2XOk5PzJI73shqeUnZSriXKzPuBSWnHcihhJtSq29wT338G/eM3vfGgoNLBLqIYz94TEixIr7GGITLeocMsEpdxLr+2XcSL+q3X8o9VePii3l97sX881dezF+Ncty9xRKfdY9j+XOdHrxxNUXeQwJ4YaZfPJU+YMsCbh8vhGyzMGgBRAcQ6z7EMtgwGww4XdZ2QGlHjnjKUJRX2U1dvMbeRSkO1WjSfgCNtIlYes0PcPhRAper1/D8BhwgJcq/hAKH11cZfAWTCPWUKLDJx4sZDdD9gYaA/UxJATGW2r1GudNftL8wUvKBSD/+GsJv98nhmAx2aDwzw9wlz8G1We3NY9Cnby5m5qbDFfqJq6qmZeZo+69MkIMC6VVq8dpPX/r0erY0IvPWhVSfyYO/bYH5efYX1ldxUDd3h8Hb4RW22vQKM6eCEj5iLy6zQhVXbh6N699z+jxTbg8VwYtOaj8BnKXp3QVukzgYSawcFMF1CO7f18X4WbPdMrWXiTAHMjZtj6Q/QhbJO9IKYfZFmCX7+fuiQeVIxQSGYf39XdTwgdiclCkIbYOqCgMSiJWaIlHUNd3YP3rN8V+djuwfze3C97oL+0c/c7ACt3Uq57brwWmVocv4MhHWWQ3I8qKBn5R/6bDpS/Npjljbo8xkVceRgOunosEjqFK3RM05KLpi+uizkbrTyFBsY1Bsb/KoeD9WfnSSMc0LPmSavMnxl+MprSZ+lLpxGpYRgZYuJw8uaxtixUtr1aS1a9I6USR1/CAd+pcmVUSqT5nDvgMczwrPQgD/83ZS/V0iZAvzxUcVi2UGap63xK/lhKbo7dA8DixScr3gCRYOgUlPgne5vJTvz2XxwSfgpsnyakv8mifvP8SGjPtq7gWT5iDjDLthg5MCpG12zdeI8KAs8MzU9q+b4lvovt/+3XQfd/fKME8qcpuPTvDVrhCQFAyuoUHoK94M8wfU6nTQSt1VWXdH+mltBpQ192ZHgdflrLqFJLBqCmDNFtX59rSeno3xzcKRLTNXFwN/qv7fmYz7n0+nv+D0+qWe4LSzyFt2oiG01613jZnbp2E810B2xPn+tWAhoi9LEwP1Xra9xb7RpLrPiqeqHHULxSOv7bRh/ddl4r6K07pntetjR2wiATv4rmLHzxl/lCW1OXwzfkVL3Cuz2PZYo6XmGtkLVo0PfDpavZmCzMJw4qeLhxGv+iJsQn1cxndZ7lNCtS/+rAAl9BtTQlNNuyc+iSJ/zStJY5/klT1PvAnigQBghFWXK9ECsXvGSiOlvpEUF4qnnYJCTJ9xh+/VTlnEEDFqKz7NklsuiQ7eZlKOqlunUp+2SULOgmnCSLlIJq2XG73HcTxsCfwrukIdJiL2IdTZYRQyAvUloikYdavjeLGA6qvyW2dPlEpUVESx7szxvZ05XqIzx1/dmWOvM7RUuabtdsZlivTX6aCgB7ci11Js2nkAXK8lXcIVpTmRFvOqpPWO1Da1zFFeMCot83rdrnZTsUaLQmbWhdg70t8yHqCXNBc8ydhckG0Fvslq8Jhjcb27eHkBRX7fMH6xLeFJxrLEJ9y8a1P4TrtGta6mfsf+d0a6YIulidOpvUEB1Zkph8SaTXu/OsGRZhdU+zB1I/RHFQP9RCmfN/DXpPmqmkKeFcR+9xM58o3Dr8/HtyOGPgc0J9RAkiHbkBWU0ob5HZHyjp047jj2vyc+/0xTx9p2NadapX7zNnzEQNZHreGbCDDstx7J+6bYmyZW3qnpnOfsVIWKnVepkF9+POve26oTlFZeFrKpPKdGFm3I1apufMEW0RFwEGhzbX3zzzT+EzIEfXS3VO7v2D4LexMt7uvvH6qFSxJE2QlzxAzL6Ufd1U49EJv4E929QKCH5yq6Z942njPX6XdL/16N85bxKp63nplf7Xb1q6N/CbXf2nz13rs6e7jlovhjEVaYxAFspvQw/sxwGzIC0dGtAv9OXBiFDJyvJOqfQUGnCkz56exJoZxukKaAuofTPgyvpiC3hF5WEzy77ii4ng6NLx/QtFVONUisZ5b1oKcu3uQNzv4q5nTDxImO4nlR9pPcRfV4bsT9JPNdZJig91l9LPzMcYnhV4ru+JWyZ4wqDH5WHx0/86Pj8y1nxHSGsrUp1Q+r5nokpBeX63TqG9L1XemmvKaU117KAaUcIMV685aFibXvqoNmxvV4BltVY2sfUyOJSiIeES51MgROVNRB6m6IdC9K0DmkrNQLv0jr/iIHU0Xa9xW5c9fIGBdWy1Q0fqf9H9LaRndKeWshtBDeihfD3HV5k9dEE4fPG67YunORRKNqFLLRNS1WgSqZi9NCyPmInNcjcl6PyK5vFzkfkfMaRM5nELnZFPKeqZPzpq4J58BrfNZhPnTw9Ook2HrapYA4dPaoo/WoV/Fct/vl+H6Fcz5AlvaZ7Z0aEdLf4WxTcyLnHUIzCo12X8lASIFA7lBAN2Oyu7l6GhiTZ3KL6u5/exBU+uvbPUpRJ66Q89DO6EWpA5hW7YeyHOmPaMVXKlapLO73xy4zTflqELHi5ROde9yTmaX+tC+POh44gRV2WWy83M+9Rk6ISTXSGhHRiVhnQnDcz1IN9udyUKh4hFrlM+ecaU3OnCPHVquYmU94B6KWGhP6S4RxdksoKxAtoX8xuKzqekMfQnJiFE25MoFjEkGj3e7JUhYY7dnw4iVMK6fGWI1wkoV5xUluTM4veldk+EcslSTph61VOmPHeYMGxnzcLIqq1CTTgUbp8cqhR5to8HBUDqCSqLtUL1/4rodW+boYUoFQPEk/UigFLvNErKRS/DODTzIV+RIg5VjZktJXb5hfT9TO2h1+VtH457UnMyZIqblMR2YdhkLInR7lNWVNo6/2TgVoPVax+ef4enCifs0GAcuzf/2LJ98NjN+RJ7T7fa1Ergtj8Fzz+PEajTeeKlo/aG2eobPkntjiqiUd0aKEW+cy28jOjF/nEo6d/3/ynrytcdvpr7L4/ZXHWiup5DiXHUHPLOz+2sJu6UX5Q3aygYcNpCFbApTv/s6MZNlKQsq+97H7EGtmpNFoLI1Gl5VPTsewS+ICT+LeXkA9vT11qDNlgqyavZrw0USdQl86oW/fYKmb53D3oP0olo9zJ3LBnYqk65V3A8bfT0Ca95PBuJQGAJCmmKjx5PT95KxKqyC2GBQT7ClBGqT6HWQxYWdqDV9MIskt1uTAWPa1Gk2y79SdDjfsV++y6obfItQ0+iUi3cFVfWx3P0+lB0+ahYYbg2/KB727xqT5VaNI42fGzNOWF7NIRVYosYKTK3Js527mMoH9nQZJWs+Le6hBFpE5OlQg+oIUbrYGpdCntZ2aclRT2Uflg0Fs5mSrfBjAntAu8meT5hs+UjCJct6E6VSoX/nngMJDTMVL0EgUolpkY8Qyw9p4IH6JCwVJXqLQL5NGslpIqDFbMuK5slkUjDIccZMRg8JPm7gyDcYcrHgcJzVMJM9UCMgeGwxadTw4ce9DoLSA0KnpaPT/QEd7e73dOOn5akJ0azduxytaQh1J1F6lo3HZ3HLibmcQSfV8XFM3TZDV1ZyJgWo0ioy5LPIzNeIVhHKMazAKAHlFKqlyP9+cuy0UH7uC2PxdAf5Dcr/E3N2FlX6L15/W4q090c9q69jMKynmK1J8ur3Tz7NGq4ZO16WAvnmzDHiTuZ8q9uHGRqFW82psFqouwqtQb3sZz8gzflae29TwviaDjLsDva+jVly/hnwB/dakid96DzdtPW1xyYX5z6KJhjb8k7aBE81YxWdmXntOmx7G7rhQ3izoElRSwPHIGSRCe8v34BLi8n2iLNH2tfsW8pb+zddznCu5D0USLN3AFG4Tulgg287fs21v5ACHHWd6hCy6f8+iw9KxPjX4M7oZhVz0SRPvLuLaDKqtJ4BKgIV0TJl5pQFh2wNM1hd7+AghLrw0lkkZE17GSUXotFvtHst6ymI67bgHcL8O9yFtq4botwDRqRBt0QZEt47oAqJXQ0hIEtditDBGq1VDdNqASOqIDiDadQQm6dQRAhDdOkIColdHxIDo1xEgRyLqiAQQ9Vy6fUDUC9cCwfodoznRdpprJKAmKVzMJEaw68AWgn0HooakcGAHQelAUpdj1e4jWBVMIthzkRMEfc59n3Pf59yPS7AP1Fj2HSgBjIUDYwSlA1sIurQtkIpqIi1RWKMwaV7meJk/1smJevhWp+bGgkeIelwod4EBgJfnSjtvzlFoqsZ+aycM4hFFndnNTioGgC7uUAJC72l4BYFxDiVBTJGrrsAAGTyMZI0aBX/S9Dgxj9fEbVKoHYSW2jz/MMTjkQGnZRZvCH1oqF/R750BftbqAYv37UhJeBzoMsmxod8AZyA4i0rIuYulTazcyubNtJh9bM5MwyjswzsahAX/IuhfwD0i7LNahGhcrQJ4WXzGN/YIinRSaquTiLVoVnukNKfLRAj+Rwgl1qxpzmmrYGSWFAOWrlBQtfuOnAZ47p6qw7VenVUyJxnhvTL4owm9E5jp6tEt3hAlc9bubpUI8Zs4+fBPsqSRrgEsu8MJQYzCRQms8eY+B0a16442K1i7Cwi8k8qPlzGSZ6kENzLhYOQn+OC9kegjXp1E/ZZQytZctLcDtZLdUsmY2whKctuBBm+HX70QotUUovf7VVAdgJV1buvMEAETxJHkW3piyZjLMXac4xrnZI3zw1IlVJoddYftFFXYikPBmGv+FyHLtufqmnDrscy1Vcs13pCt13i0l3csSL9+ikGcRJrRJ72ypUIge0b9JzvieMtOCKyf1R4gkp8Q7CYuqKF5sStbFzqUHQZoCoqtOoqtb6StY/B5gvPKOoKEjThuARd6/693d7cwsU4W7/Ee/Epi2K1+0enZlKzNY26T1t5UgjZYz2lDQRlqngCPDNw91z4ONFDhN5xwVCVHtTD3jhP3jtkN3UcTmlrKHgoNMUSKcfb892irlZMDv+S9omeskeZFE5s4haZUR7SQb28z35WqlLCot6Eu6So2ULLenq5R96Hpp+HdGh++VLrO5G5fpHeVMqAgg232gKzK5Upl5LOVSsaXHiJhfO4hOox/qZYv53zoydczk6fdvSFZXbm3/OuvTjKAX7k3p+DcFhlvIb+5xk/DXk9wDh0mymGGfYGTgTjj+yIMomUU8CCaRwHj+BVzeykW1ivAkDkwKn2zoyAD7EF31Jw9AEJhP7o0nSp1pnMSyx9cteogwxRzjpEhoUYGUbAMIkRQX42dMe5zwClbgDEbQigiuqaMO1HG1dwRsCGeZnb3BNm+RHgwKMfVrUwPTrDtJm5AjVzjdvvx8REys1f5iy6IO2TPMDXL53W0c751KCW8oZTlTWHX7zNOXcvWJuqMv0DpH4aQINPwE30Jani9qUU406qRGpM1YuXpQz34kg4fjsJ6XRziXDvXjA+jsrtZTZCTRRhG0Rkt8gM05Zd8Vms1HRKQQist2krkN2gZb+obZMf1DVDUDsZoDzQNKSl/WPn0BI8kiq6UbrSZ9T4gHrSpYdTmJ+rOSHyllVl+4kc2UEMdg4fIL6Gs/AD/LNr6BSfswVcixMkOQCcHpETDP7LPwaDH+IF9ZauRcxsJI2xSH+Z1pCxDm+O+45sKxje5mvNJHtL3YSl6eIRzX4xafYgAzX8Z+D0g7PRXGh7ZWSob9cjOVFUpW5JSAoIF6D2Fl2jhXoUzxsHybXBsoTB8yec1N2hwAtazu3diHJO5ku1afXyo1HNC6jk+PThT6+rMIP7J/lxBQ0mTPQUsw6WKwZS2zOpCdgkVdHd3OLjzHD8klcqEV9prLHHS7SA7aKglvLbjUyjxwe78jF9i3aaXsE2i/wwp8jUpNtWKuLdSB7dk93C0SYEHSmaj6xcHkbrSZXFuz6GXwGPGCpCVC+xM+Xl4BDJBTUXJ1EFVoc3U5UEGOjyyUhPtOVL9myQZ/60kOcTYor/+4IkmfNIA5W6rejav7QmybSXHAldFPVLHp1f6M2BCfSDO0EGRH7Zr5HFNI9YyuFeUblSRX+L11/ZcRT4uFZpko1BvHCGFUJDQOUqh80e5mf/T++B/pjCgs6fvwwVHLCvLtCw7qp0VB2t/wwCzGrHZJcMlY2k5yfCII9ZfNIUxNPLGrqaQezpj6CNkWunPaJykd9YWT3K10T3ghdrsEfytT5Q/kZAXm3PK7CgbSgMaxYdbq7WekV2uDQOTLHAbpzHy+vTMCEfUdOwLP3ITmvld+kWa5wPliPD8nQIwVJRx2OiLl1W5XtKSz9Hh57IHfIS/MjRqjub6ljy4cKWQJl/5/Pib58qRSfzvZvLEDDvLWp9Qnqe5YCX3q4YnMtucTuVPTAYVW+vaFobFEwzzrMRvqSIuiq0GUAu0//IrAWoThp7GftH8CgdIr+CHudm/jUJVM4KbC+NGs+9g3wH+hpO12TQ0MgUjk/BbfYvFxrlJnBZ0uxRoDz0OSpi9icsOUJDVhc/qdkQzKX/iY330jfbx0U4ieKZoPSrFCbXdmjHW6uFIwwdvU9nncOPXDeysukxjwd/NdDFOWzE//ni9gECf4xa0mzRpc7Nm8R3M313MPtylSWwxsKUsTVr8CMYm9o68NEk4fppYQ8BGgg+wLvB0csXom3FxMdUf0qTDze0EGHr3Qd+cp0m3jHMB33YfI/xuPL3Arz9epe0+//aPj5CwI/kP7/4JO8vSvuRfzelItQWB8BZfEVGAcENs+3EZzRJb3Nqw78ZXHxHEuH9QwfsdFIG0IqEQUK7rDx8s2DY8SVO0MMJ/1DmFQDTgN8cwcDNlqGO+vSn0DBO1RJeb3WMprSXwg+sp4TuCH0FtPpkR0CYANwsR2OHQR13fUiERlga2kWMDUdkI0TIIlzwB6UYU6nLYKj6eU7Runw8lBJKu4MOYApIPWxSI+TChQIsP2xRI+LBDgTYfdinQ4cMeBbp82KdADxgKCiFr4t0TEIopJPk7XJKyhWiLtoFJbEJ06K2Avl2UbompIvX4lx8cD9lCyBFlwuHEgHZUSWBFjmneOa81GLutLLimrwQHSuF2J9x1zR7crfOj6qIF/dQndRKuT0d48QoZNZyqI1icuZm+wrqMFtzMJK+SM2rf77w9XOX12Pj08LgMc3pqNAYyYEi2ylCrXQsJR6UQpoDQmbUOx2pH8t/MesX96nEauaOO7aakVeOZ6eb1lb17HGi6IER1gTleUE6o6rZxKJvOID9BdvR2tJKZeE5myIjsrJe/j6D8CYWFo8zuvJJBsX4DT8g5QfY8MuT6a859rC3LLx7efdQeeoMclSfoDf3plUhszoQE25QJ4jdmggR6Q5AJZugZ//oinKYIv26MMAsFN/RfnqBLS7/06RqW4mgx3p4g291dxYQMVA/7E2dwnGKmJ9bBWUNBNJPXjsRsJt5hCsT8w88YF+b+UnIw0E1zVDNzZcVL6blRhy7WEu2aJdtGWEvLNiTG4LpdSPbKOWsrraBm8pSz/vkHu/Z1TV9fPiAkH232RFYi/4w4ju3izSi0JGbWB+1tCKC78S+NMRqVlyOg5B7lV6BIoBSZwQ1x3yQmj1SJYJb0ypByR3oFJIlOz40mytuRuqS0HGMx+lVzD4NyYUTytfP9cItZa3N8EXZeUtsAcmFuXnKO+Rb48eNyJIc4xt1CKWMpPlQZlwi1gZ/vhX26JJnL6ZG3BcDrTemN52jZwZwZOsZmjibHUxk5vAWc1MwYgpHS9v1ip8SRWKF+vJ5x7aAj8tbKjPNHJ8JjCPJ811zolY3JRXnaSdBBQ3tfSAAr7m4eHk9UtHqsia4O9qSQgcrpyLYR32y42Pm6efnnFO/pvoaLy7OPYSJ5zuAZjGBJHkzPTWBhXKL/+RuCfsTzUIgrugFOkNK9k+N888WTxAgswI09CeYuoNTQ2sc5rpHl5lvKdNwkHOdQ5N/Q9X2zsifWbRDSoe26f18KEewoYNKF3/r2GWZ3yfpYqrHncE/rPhjlcLQr4575zMemGnN0ihG6Z1D/YkoFle85ybRLl9nVrpFd6JKdNFdwhtRbtUoQ9/vHWPalT2g7Qit4XOydG9MB+S6UDbNsBmi7h00CZaYq0OWe29yD3/MgFYMFcmg0+P3ubhGCMIy5XCnSIoB8e43FZz3j++DNb4M8G0UR0xTfj34VpLMoAkG+pHvowvPmT/Du+Bj+ZgpxeCRgiiWZB9lCCS814NIKZzcKpIs9VS+s4LD6DnnwGeJrpcU8vBIzXkBp+SKKYG2mvm2aPbw9nZ2dLs6UzpY2FF7hZHUUvhoMZMyieZUgh7rmRm1r8XiuFlk+sBJmuF2dmOdn+Gr50oa1t9m2YpivMyxAA4VjWBBDPLRhGdpwXjEcu28/5sb4gKLFGQhFCm9IKxRI8Za2e/IlhpcUdgkwYiTLRJQESZTslJLQk1ZpnHDaMj7VVjgbTpLeozm79rCcpHTldvAIL/5Xvek0wFd3h6PQRMLa4bb4yAxbGT1eQb6u4kAlg/BFTigSRPUwaEfzcRvC+TlQzdJpIOjfi6++oocQEEAIHwAhDBA+iEYQPdr078VwiA+AIIAQPgBCGCB8EA0h+hfYMwTYOPhcCX6luvwV1ltwCDlW4Bn8TeBvrOHnGP5+Q9W+hsAd/C0ReIs/9+iDf6sx2Zd8iMAJoq+0ClAD9EEW6qkAKAob8iciUOv/WHVnSq3pfZ3WNZfj5t22m6KwFdFSsSZiwymwHmRL83RxjV2wjMk6YMzTka0XNoz14rz5Ea05bOKGhoXinazK+8+avNC5kbW9AKPuLUH/CAtBf4ZBVNitEVHAUjg5ZT9ZSt4EJPuZTNDPkSrsHBkZboYdVKFGY9xNefL2EM9zXV/hROeYBufhlY6Ai+2YxuwBYFXYXviR1O8KfgkFvxyUUmSX5Tnp+429QVHvfi6rLuHY7X2wiJWIlhx302MlM6wu2Z16vWYqdXjPHmsWVZbs7kujfxoAh9izuiGiEg/FENX2UGeI6ngoFaRQKUV2vGLG9wgv1/DdIJ2AsYRaP1uj9dDyT7KZGus12ndBWmp7aqzTdI9MHNiraaPBSuItpLt1dfCW6uD07PT2TMGzITHElxaztBhTg6eWXUMCaww2Ks5Pc6WaTWGq2SS3/z68Gvvx6vIKBnQv8F75C/zy5c053oWGdTDg9wwNwaO3fwVdGhEMFHTNQT/YU/ASfzt9fabwZ1+Kl/iMwvuGYCn8mKzdYlSQBQpTvI6iVcq+odwpWaMAa3EGW6zxgefwjbZ/47fqdSQ5LKvZKeEjtlqlPgRgNJSa0vXEIZor6TsF52sRBHPSCGRJLeawXAxfzaAI0vPmJA99rl8GKYhzCxyF4b0/azTSWYPCXOzNyAESzE/11XqqKAKXxaSq/CfPe1rh8fUajwXwWFgem10zn8M36xxA9oWTnZyyNdlHLtWMIjbkkwI/Wf5XjsfC8qhlV8nekIRy0AqXoyC9VzKznO6Jkxn4HEIDPxyU6e6zw9IfOjxT5hndQyu0mGWJsWmrdI6Hx8F5VIfU4jyZ/hmkh5VMh1Ym0O8hgdLIVxmQWXSIbZxaMxmIQ2Md1JLCNvYsmw4opvWHKPapjUldtMjunaz3pXW4t7JSeF3W1wE2biNqrIyo580f8rD0Ao1TiP4svBfq9etbc27xqAmmFTYtOXEh44dQKom6s/WAlDcKD5lLbdLJtXQCUs0a0iXwxD2ABgzp9kO5ZxsxPkClHBHSICQhkFCvkwjXqiVGc+3DprIg465WY9WUEGDQJ8xWOoOp6QyMxLck7xSqA43FMLAvlXn29vDg2FWkeiyNDQ5WxeKSOlBEbiC5a5FzFadxBYi0JQbKcG919wwaajum5VcENloCR069PeUyY2niUiVlqlcmdiLSviP2+5ZoWfXiVApHlcKSga9N3Y9ZCmHjUIJ4/kt6Q3VK7FD1lztYSczLAhQGwIew75/Rs6oB0/UxiOn0Fra7m1XdnQ1PTYWKS6s+Cst9EHm4ZvzR7/VwHwgnPdyc6hjK/qU6tfXA1AJsxdQpI832Tvj0x7pEqTAmjTRppE0j19JIPw2xBazLCsN+ed5tNn3Oicimdth172zGVr8kul/xSyzGsURWkQS2GESen+aV+J7UFuFn/6Ml/3GL5Naikwt3/wy/DY39muwNX3ZkZXn6HD9Z8l+M5NgxHqkZZbBSCjEAE3JUGW1ge+S6OzBw/L7R4Ie1WRC0fvwI8v8kd9M6mnzKj2DFesXbTNIVr7u9iuikU3Xvf2OXGydzH3xMsqH7IS5uVB/nnbpPxpBbyTi5O7Q3YcrwvEIVF5xSSEotD8ey5jc853aUSyRGPjJLKycYf6L79P7xsRpOvq2WdHCuyx/M5jZDGsz+KztXsSU2DAO/paeSus8ySmXuqXwrM18K//86492ss7zZMhw0hmRkGQKW4zzd1jM89xByLgml5N86c1/dJZYoMSWJsUIMkiGOPIVkSIFEiEMMUkWd0iQGnhMQR37OkAqJ0KkIqRtcpT6cUyMkQYpYKi45RBygcijKMKAEhCAGF22Iq0GxinmryADbHILMqkhDrIlXdYIRkMwti5dggOqAFgDFCI1JZSwRHFALIROQl80AHpGMzNMKCIFKmZcItRIagcnCZGuErsWYFwEWmFcIlRAJaUrWblUm9FOc0AuvAMOBGozAmCqhArotRWKEIgWRahKPJlFjmCHUH8WydVVijX2Yu3IkFGCB7dcYKYQq5h4JCWciv7HBIRYjIpaoJIgldWQbtbATwkOs4//ZYyj/6jH0fwyd4ixh3N/mjmTercczhP7b6dB2DuVnw6G8Fn96itMM3kFfz0rAQjDYeOE8dQ3hqzN99n5q9bWc7slTeFsLMt6hHp7qrp8+mcncB9u9ZdT6YWb2jk69u32z2/GnW5x6T7ljAFqmT5qm2MoNLspR/6Wn+y5AJ63b3P/B3aWo7Qm9/C8vtvwa6+nK8y+fPmDj9dGxUZ4/KsJXt/jxO00+gtmHpnnehyN0cx89GQ5NmbQAZ66ljgqa9zsuvtP0z1tMt1npKc4Svh4f6+A/5FMAmPVpi1ncvj5MCWdHAq9Uo7Xn7XWi5qOyHwtlnxZylkNbZl05dS96b/ttfA1jCg0Flk77VtISujSXautKki3llsH1pdxhfA5LubVz+8xweaVdD15p14NX2vXglQZ3qjTLTQu5JYnGOuzOS/l5I78s5LcwuHUpN442K0vtDhvsznUpXzfwfVs6F7O/672Apa0+e+9bEIMN6rAjIKyQBkmQDInS2kMs7d7PLiXQ3hLZ2yVLKVKqlCbZJCWp+aG8mBRaFEtiWayIVbEmZmIuHsR1dWeH6lf2noS9bVzHv6LhvC8WR4p8pKdtOptefr27adI5vPnmoyTK9osteSWlaSbNf18AFBX6SpN27905YokkQJAAQZCEiH7VVrq+o9aIJLa5WihZ8ktz9jWUO1CqM7gbYx/74cioU2jKia3NEOct0ESbEXRuiwCJiNdxXN11rlqaSv9jZi6cuj5tCMwY9iQ09kPoMobX96HnhJC4vyDhB5h5rO/kDz1J4YXpCj0sX2MyV0DVZ64+3hCQ+HgO+Kq27zzvFTeOJoKMu1cnfikEfCS+EOgb81yi++FX0eF+rINd4+kmxY0EhA/8BD8TjXc6kKHwMREPuE9R4oqFNHGlmA7D/3PDOx3Fg4HaebB34rFeKKPTcY5BQHarAkwXSLAAYG3r6liPbgbFE9icOrALICqfTVPFdGU9NmggTf0m1jpgXgTExUCyOKzaZNxo2A7rIsodOV/0lnxmWL/KmZUrGYMqY7ya4VQZaVjUyMz+CubE1fUmI+lHZCwnFn9sPxHG/BD/rByie17EKzEIKaynr4XA10LgRz8tO7WEnqiEofeo1eofX2+uHIvj6uskk7gLJTgnN4tgmqYq//vR2zcAnmRpSV9pi8a9xqAfQmceV9fxMu5peWuGg34TCw6YRlCQtzv4pQnrVbsxYrPPlgRcH89pX4N6KDgTcld7vcFdrXMrd7XOw03uamcuLAvRW60+PI/qw3MZjIkSHx8SeMCCn3Z2nuGFm+gA1+ZVze/i0Wso8w95ghU9Msnau0QIzJuHQNqh9+YFEAZ/yMGtQw5uAMIW7T3GAxnHFE/hzbQAElXusjiX4+wzRvX6WwKm+jfLzpT8rG5XOFsw3zaIKZA2TdVIMATm114Pkr5K19/YqJxM4+Uk/I5WFUtB8/WlyS8g/ZAirfSiIKPLScX7GJ5zSDwojoAX7iZUIL/Qv9QA495zm54xZW/VM6bwHXpGNwyUvrUE3Eg/7y2vord3l3bwsvGF/sYeCU84fpm4JS/Au6bpLuNzlT8F2XX59TW1LJjOx3gt2PfDFxnCu9D4to4Isk02Wv3f0CJotQb4694sKrhxe6Mo7buh0G5I/mYxuS3hodgmZt+LWPeoG21HfHPbAHYjZPsHm9Te1qT2jzUJEWun6pr7QoRw8a9y8ZJoDEf4PdoC69MMDsXtOeF3AOtvcv9Fsk19+CHvupqgTxJ7y26puVSYQeiilYxwlkWnBeO6I44S40ceIY4VneaHRqdBD1Qq7ck0lfmFNjm3qjb4Ryu365vJyuzJLIPu/Oyy6B6jzCLEy3w+hbj9NQ3FJDTuLNB28qre2YEi7XuksU1aAtR+/Wre0Oea60L+HH7sZI0G1I5GswdVSbHZG9o+9fBjvHAC9/DyPp5sTGfxuyy+Vme58VdLhZ09yk96mtFCpDpdO2vqqEN4w/am9P3UnrC70k15j5X5mWKCWILaGFIowGidhJ1XnxNF3GNMmCwrWavzof40VTM5DWQJnAvxdnxUZfa7UUnYEUNx+Qln9250pc2xtZLmRGg4Yv/EPDt3FGmBPhGrqWQw9OJRGpCf+zssNK2Cr2SJQ58D7C9nawN/yLvLyVU/LyfuD7uj5RR/eGLu1ottd2az2ch1JmN6TboS6UhyGUxk8f48xWULBr12Iz3HiOtoYdB6XhmdeAu9dVV1m3sNwRqehKZ7DdaojbzQdpReJwVemUZhf1FXwUrMllbImiqj0T/v6jjwWf5RlQPrleIQCXYNwgYNz0aBtux18YF5MajqzlmpYuXbPqBrrbtizi+hZxrr1DS82GsAIdQc8HMNDlWicgX0fJA5lMCIgOYzkRAIlF0TD6cuCARgnouZB3GMH3gNmEfIqlds2HUeFNtQCfQUJBfZWR6hX6vBsKFkYBVDzMtwq52DfsxbMVkl62fsCRoBMP/Rr5vz+jwixROFfm4GXor31XhLHAHZc/NReqLDZOFTQCN4hblMe6FsAq4gt4ARRHNFyJpburS5kV1XpmrslzWEkG/Gh7dWEyPf+Bi0Uhc8K7useV7MZcquenEwFF+ky+EhW1n1+7mf8kutKMjVSDCG5TAmQKO//2U+cz7rqL+CtYMWc4DKDEMPCnZWJruP2P6g/zz9rGYgzA6UTovul2Iq2KQsF91m8/z8PDjfC7J83Oy0Wu3mb2/ffIwmai53jUpjNVT8bShTWNZFC0ovAkgvMrkgmPMCwe41W4+aUos10GtAz9dA43mZaLhQzXWfNdv6NwCqKsAtxO01W/ebWPOuqnqBOQ0vBSnp69iSOKJ0BDwcNf5SIAbFLwEFWBX7eMUpmT+XL7qXz0OYUa4ov+tKEQezGA+DalubSsvghT3WfOkDKoTYhOpBqw1ZiDLnKA7z5TMtYDckuZLynoYbPkKTwUwW5UujzpvM6Old+jZPdqWl00OvTZh+jcRSc09R2Pyhn/ilxrvAuWQMf3pD/KObl5h2atfTRr/sviyKMxUfZacqLSo2lreQgPvNVqcJVkJRGuYXqgaLs6gIMllMi10MQlGBGclpN3UWvrXau5CB/6voDMOK7cID7jLBeCABGQCJh+pfz1RRfqyKEK2HVcQ+zKcEjIc9+N76zwqVo8WwWyKq3SpsHBLx83GVRZX0m1ZtFmkqXiIOY7d2DeB6Csx+idfoN+0kzP8gi+I8y2MHsf8HdObPpoIjSMQ5uEQ9Z1UMenOd8Ob2Vja/xZvmsnwNUCJxLsaAgiZi2110BpAXVcxpIlQzno6hdtYcNMz3I0PyvWTb5tp5V+Zj0BZDbDq9bJ1EYByyD2D84cLlIDpluO8VCXYTeXbxLgHXFjPbokVp4xpGdvOZmk1hOrh4i7Y8YQICbq2MazRwYQeuvELVb9bKsS9BaqHRcfABm01v61bHmkmBcG9VUcgx2GgE/snzHCxmp1NPw8UigNOyg+46hTTzDHgq0yy9wO/+l8ym5nUNzAvdlHsLHD5mDniSxReDvurWLccX05sOdudaJza8yGswLPcuK6fJCu2wP75kuBlxsUozb6xTTD1ApU0BQ3PApS7V5DXNRA5jIKcLdBpabaq7ctjo23kN+CWIsjlr0Lzw2+q8wC/vLkPHafG/XopOucfWZchqefNmJkY/xkTNrU9L3Jr4p5XJeDt0j5tlte8B6qL838gppPr9QunjpuqygMGHowetoNVqfew313O1hljnLaN1njF/qh30oUCTzJWkZ/t5F8d5oxpeOa2c9RLRLIISXGhOOGCarC40E05O+8IKTvXnn2w9ERfrhohRAp6zzAgA+6lebGMOt++1sXIQBv9uXq9Kr2pIglayrcEI5sP3LUgR9scXpLSKL7HZP7ImLa/XpOjPtuiXZk26QPfg9WVlOVpUa1J8umlNugm4gtwCJu+0JjV8qdaha00jtlPrdMvwfa1xBonmCraozExgRY/VlZg2rcNsB5gI6blVyhBTuCZ0IphWhak32awMT/1Wtfo5XJ9/kFW5NdLuqtso9Lj6P6Xetqs2vT+9Ye4aA9PyWnuNN2ivlCLAaynC0ilJRAQbNYjNpFiTHqGEpG0c17QQ2z+uL0f55d1ZTVer/T+rNaujNS47TYsJhlPW4Puy6neCXMBCd+XDUJX/z4TBjZ2vu5e6/TjasPHnD7XmS3AfpqRBWOoBWJ+FRKPyhK/NAphqzXEIQ0mJ0eRlNW5L1P5Gg5fXKn+94EqpOPhDEqEJLkWI1CtK3LKlpGUIGNwEbJUF8f/DM1lXwtjruLL88+W7D8dH64akXlfqQkwX2qhc85onR9GPjWiVns0r2qECev4P1K+N/6FDe9Cv+0YzTdy9e5nT3MDLhqUmLla183dz8gOojzUm/j8TsVu+n38kBOatul8WhiydBW3I6RMXNg7fSFtGSwbSLF76wrHML+jU1T6/r6Mh9iDHJT8IA8GgvGOudywn00IIMZ5loZz16gtvTDYd1PeuGOcu56EgRG4O27TTXLm4Cxlnc8aDZ+/ffsCT+pxzfWubDmmtYxz7DNvYhMJW2KoawmCtE26BwcQ5RDgU28/qt/e0uHXZ22mUZ0WWlAGcRQFOOiOTxUWKbgbwiO4fkONG6HwbX13pXsITmCv0kgi3xKjWssE4eqqkPYiM424vK7tWaU4BaOogOjhXW9eo5RscMmLjkDEUdjYeMkbBi9HQ9hsY2t4W1JZkK1koWkRSLwHykxvIx5IW8ckS8a1+sk40nUfa6QB8TaefWvsY74+PYKZiXIjUeK0+JPB0KV72dSbnPrQ7eKvKSQYsh5dISHelsutbGqNKhkt+uSlw0XEqw5lyyswhKXNAFvBTsJD71dX+tYOFy3vPt/jXmMtok+BZCMXKvqTLUiQ3J2PBEaQsdHT9hZA+JrjSLzndR6JLt7jtw0GnjP4Yt+2qs8bJvqvcxJdEGKX7sWvctsjBidUTjTkkYUJc99XODnRVsK5t9pPgAOYPd+xvzvfrRkd+7Cf+mF+GroQHBa+jE38MpFzxrk3dg9ZeTZ/tDlK3yU/9BbmGUNNSPgbYSMNiDkIa3WBi/6mvXxlqxbpt4Kpet81GgJ9s2ihq36cczV0FbcR7Jws0juuXUb7mqsMNWGnATElubauZvTM7f1TCNtqp9u1ZSdcU3Qy/ERghb+TexFff4J4k7inkXoRshNdT4MeCmIe95etO1MzxpQu8sy8pRC+yYCZ3RdjD3wGI9TBExy94eC1NpFrpAraQknSYWZeDuL+hC1DxjlP80zlB9rRs2VDk/R4b6cCqft8VOqz1QkQ1qlwAsh77hQmx0DeAYMo//IVY2M5JOP7dxXXbJ/7Cz/2/8Py6hOphbSMu80qQulq+8n387YKO9cNu7uPVvmcF3CSAI7QEumufVzgKFeIvcNL7SZzu7KAA44Vc9+h339V0/xJVxaEbsa2JH/pYMZAw5tBBmFo3Week6FQ4wqQJvvSgiB3tGwMek+OZ0bF9EWIcTfwQdT8M/jnEOqgA/IQ+kAW/pRxDZSghX0L4eeZWKEY16Am3BQTJUcarJP76lRqnVtBjrq9q7FDbKK4HIoYSR2L5FRQ4irlf1+R5pk12DHFTpVEFUCnDK1tRFR2S6qXNUa6A2W5S1Y0CVC1HgzOQZj1MtNi/jPEQJJmqHBiurOryH6+O1DxJaC8UmNyLTWRPZSSVEEVZHpMS6V37upmRjtdwrZQSo5WE6iaTMWoe0JNVbBm06/59TLd9KWqjTZZZyLi7GI1PeFcKfNUv1xPnVaWE9QQ2EQlOXi3ut/ow01cB7jqP7w8mnF+eistn6vM0UpUJ3pX29Rn3uE+++h8VzME5uiIs59+v8tdzHlQ57+lC5OW8hwYrrT7WYR/VtX5W6EiwnPuY+5ocCM0Qqnw5s90C2LRcA2q3TbrxNFzJ71R1YhjBLsySuK7oGmFx28/3fnEn3oPWLzGaXZj5V5Yq3TgX/YtJACaivdfrtAeT3gSGz2lQY9Tzw1KNeKUclCCawFCGcE/m7QTSn6kiwjhqwUr3+1WKrtm3qrCxoYFr42bH+i4Z/GRNk3LKKdphWw+ld9nbLFdaoAv+jUE6UjQ10Dgz41qPvyrRnobq1S1Whh+VGmO0Q/G/AWy/DkaJrWDdFvo5jUcRqPCTrpL6oYfgj8j0gnsuNGCFiR2MgTjnHIU/zsYO8wrpRqN7J1w/7JmHjnlowwPbrco9MKn3KTUIAgeYlI5VjEYm85LgPZDwUJNwnyhACk3l6B8Pox6dn9A+IDofd+piFrkw8qABWLv5mpNIMo1wcjXPSuV8BImXM+c9SL7z5uCdU6gCMUP7CkeB5IazaTFRcaCrWkZyeDOKZJpqWAe9epxIh+MgzDmgznKDtrOFtpfPnu8eqhjUEDH3Ztr21mlbR3E32q7MV821/7Egdvb7GMYQWQyP7Qf0uEdR2TwUBD8U7GfmIRN8ix0uJJ9PATHjfq0UgWq5zw5mM6g2UrAyjZ0FRZsBCmelyomiOcoa5ADdDPcEUABUnshIBaxbo+rUqLKzMszO0u9H1SJUHxdZltydIPZCF6Rtn28VtyTYdHIlqfvM+HU5i2w2jS4A6nN2iiz7mM2Vk+WOhLamqjzP8lOnzGWSTCPHPfqNU6X4we0Cudjt/BjCwzWE2xCZ1iBTadCtD0Z40u0zD3u1xJIg5tqlDWPfmVFg4uJmKeG3ke51DNI9g7S9jPT5wVNH5XmWdx1Zlmq+KFHNjFUJpBdQQjkU0c95B+XAmHgJjJn9y1mSJLFz8PbImRYYmReXwPENld/b0qK//3rgPNeVj/HLOznTtNS+zg9IztAhD/V9JEsamhIIikFSaKyZYfYIo3065RQNXOdoopziooD2gGxdOKFy6GtgbCLIKnBoT0vwu8wJs6ykJfwctICEHD1Mqv28dGzw4HdBZwsUggV+h6RFND9blAByXw8HXRAREo3QeZD30M5Lpvn8XOZAXCnzEhrhytKZKQkMzVLlPP1wjD26IL+N2YWjvoAcIREcSDZzpqMnX/LDdECNWBfBDzeaqMYYBSMiXrVDhcIVVVpbof6CbrXuX9uThTZrVczJoEAhwEya5qsSYibd1TTur6XYZqi2E9egRpPabMz5pb3RkgNzmbexfCguD87iaXmwWLx81pWVbUnFzHuH+y/TaTmV5Saj8R5YS2FgcMBFcPhiEJ5AFuGC9Har9Yud51VZVikwdEx51PF1AdqoCQObCoo6KVbNV6uMsH2rH/gPvDH3xwJ/eu1NyMLgtcpDlWcFqoqX6bNsLqepiLAHAPNKXY+X6xpCKXsF3PLbLagJweih19lUpY2B9aeDN7hH129OyZn2Pu/t3Qbo9ae3TnU7gvMhy0sLfqGpH6OdiEauWLaAF2gBp5st4N7YE/cA7O1TJArHB1a/3Adjz8M61tPC4J0qqxXIEhvG/thbEO7FFsDnX9YBdDpavknwt8jdLkc+lkPLWd/cQMFGUeiPslLOtNDTd3GD0/p7tKAIXfPmtf1hZQ+frpjCp37Mr6otXbgUH9b04pOEn0XyRYzMicQU1Ts6bBr/4Wg6B/9hOS939WEFvDD/Zp9oAwR/DVDHAG2vYroorCpOerj/I0b4+7to0X4R/QxD0Yafo0qV/Bt7V8KdOI78v0q//I+9eDtJ9mZOAiQhB9CYXHPlCVuAO8ambZOG5PV3X5VKtiRjIQzZ+5iZYMn6VamqdJVKMlQHv38AmS39mjExr/81QGXyASD2nwY793Av0+CRQvoDCOajJ2GwN9WcjvD6nYvekF9Btu7fnNZWrKeDa51g/QGPzHo/58XBhQFElutEEPo+g5awgjzCugiL+qzRHPCDAW85qoJ3qCB+KhUDot5KAajVn8jqe3n1KcOFghluSAysDqqB5oBOCaOI6FRlM8ckBhtA3Jut9c/EOGJLa2kFOYWXUYEEQn9POPQBm1093vmnPnSIzSgc+5MFrn0dGoN75OBXDP0UPk5RU2GAT1kzOwoySFk3n28I5sFTWUrG8ZXCsJRyQL6Cdgmey4Cwu2WhEsN1Ix7XdLNjEBMAgSQwZO7XhKaKXd8PgsJPOfVBUSPCGB9+o7hLv6QscwZS4S+8gsgLtQjHOpBwak9/+QreyfqoBn+Sult7P6p7NeF8rDNvaJ2hpWRSH9eGXp1K82sVL5WDuaXcoQIVMKeZ6I54hwuXAZMv195sdq7X3jwqfbPTd9bePGZv8mZb+KxefnoMbhliuzwoDvasuSxhXIaUMQG3vPvLQq7cD+M0LvVoAVBDz+W/IPdiPZd6ee7ck7mQde2iGAtH08CMxNE0Zli0kEdQrtzV0o9pAuGsd8LjwsaaAZ3AZR4xzz8AM0CcD1TnzI7USBIa5xkMymELMPiZOfs+i2o97QjtTBcpfJZxE3QxzmYbcM9rQAnA7QWek5KU1kmtSz/hz5Hwhob8dgIf3qyz2wg+TRIK6WwP3p1S94l6NYRxPL7NIZ7axOWPn2snYtPssOaiptxqmsKgykYQIHDCldXKQVFtXhX1Z9U+OKNpzq1iA34VsNvGBmsaV1E5YFWxp0lV8CoWRXVwOWjaiexkWa60Ik8xIQojLvAzrVrZcst5nPE9pEdvMZutZG1nJo3DBPyKm2EzoCSGn1K7UVFG5SWzM4ZQ9yZ31DIMkUhz6YioIPFN6tFn0VqS0ZY0iCdWvAycYcZ4IpdXUUDN11VaDubQVDy5TwwN/iB3DNNhREIvYQyfBmTCVHlOQi/g91x4OHjqVMoptJfzKE6zBMefhAQ8SYwY/PbDyTUFl7afzKSOPpZZpLECAueSrq5Jyr3LJeC40K/Jd1l9rvgsoTdu0hj2D1yS8qFee/RgWg08xdvw1OcevsEioMiaksh4akN4CHDBk6mHPopR7p1wa/gq8CoJJ3sSPlkETzsTn7k24qyNxf6LPo2EbgG8Dg03aIdpvGovGQMtfgBWHNkFRjAhO9HLWFEdFo7v8Y7CpUnSh28McE886zCY+QezBHqLc2GFCotWzmRUi8KfTwst6YgNZQg+1+tvxYdxZq3m2G7AvJuesPDUNfS5NvybuQfMm0jUClIeFaXsrknZW5cyzaQ8yaX8UWXYziZsqDxrbGpyOEXQpKp0wbK9mR9qdd9gUjn7USUjOSuQ4QPBCyKlanOsDuXwSBBlZFnshtelqREyLhrXdoIFOOgjcJxSjUqkgzzbnhhi0lH1lmEmwaZ5WdNYUTP32U0paLHik/2SxF7D7yed7tZUoWL9KBGDmvgFvagcz5b7Q5+TZGqCb+wKj52JwMxUgok6hWeVQiX228TtzaGcaqAvu6vYKUCyh1saelEM8xRFVo1gwmwwnc6kgpsbxPTsx1E44xfzphRnp/gFadj2R7K4a9OiYxomNB/T8YeU1MkeRLBt3M7DQbSA5HzUlvCtTZJLpzQOwWLiVAAnyPqVHz714+ykJ4PVE2SbkMJqG+txThexn6S+2+c7vbh/C8bDExPeDBOa4kFTbHWgKPUZ35S1OjWYVzZUaWICq2rGlAd9kKBJ3KkwXWlfZzrzVkTHiFiU/7kRWZxDECsIiOEJ8ggVBlQSrSJRL81aVXH37OAWhiFcUDCufRajLbk7o9lWnKnCtWuyVNYv9d/95VAuWjq0Kh0jmX6Ea81h1KVLxaovzOuiIpEMomGjdR0908YoiYIFX+/i27jGlkulT+5WdiP5PvXjRFBGVWQ98XZApzGlLxT1iL+ltV1tkHN/MQp8ly+lQgYGnZU2q28OrmCIiANWcYzkwZomUsaODr8lOHYaDB4u3jWv3q93AwfO5aqOwStPcNWmJNDbmcAwXkAjHERRuiWt7s60WA4DZv/VAd+bzNsOekZDMG7av2w6R4eiS0EafeKDnbe6XVxR3ICZSdMevDHR9lKSlSt2ZTyvdRdBAMlUVaooLfnq72bmkivBA3Ij6ZMae0TXgTT6pbFZKvFklSaqUqtDWgl7iF/kS6mD0WsMWfzS53Qrd5PeMCIOJ2Ga6V3P4ZGCWDC3E44j8BZ7x7AIOxB3ndcg+TSKZyTFzHQ1l5kwRcFkcA7lybBywMhvzCTsOc+UuoYxTlnhKmvbZhdcF5cUZ5m7VVDNUN0qr8PYn0x4lz9chCENrvwxhaEWeQ3YU+orAmgvUxp61IM5BuMykxvjshOmwHyQJQHPAxxrb3RdW/ltBlFC1axmHv9l7kRvjUQcmi7mjdDTdwcltWg281M02MSMT8c74t+E8zh69oXV9rPf4MeLPMV0ya4E+iSGKZ5Kx1iL0Y5EcCQ7DUgyvaMk7i1SVpHUppO7XXWCZqbKCud94HETL0sq7q51YtnX7ZOlaGoAnv2U4N7Y3OHa4YdXTt+5BOBOC2ZwfUf2rveqcLZGhXmiKhdwfGpTKo79vztj3yx8Fej73YGkOZ5AZCHjlbW0eRTC4UmFwsNbi+H2WEEfjw3oZeteABXLDAVioluAFcRRQcQvxa1R7L+teOi6UNeir10M0O1kMcTMtHj77IWwDqmzD+rU+i4Dz7YsT9xNUuhDtCe/hFZYrZoAclh4IsKAAb7Ka6NZpdAFUe6GhKo7q9CdxlFY5jdjl92z3p0p1l3lr3JyjZEghxtnY7Oz3kYGKnPuT6ZldIbkEAa92VF9xP57zKdYYn+gVV4hGJ1FWB8Fswx3mQDl3+RgqfEqu7jqlwd+OF+kP4RwN7Z3dPRTXexN5wOvvvzFnekWsvthQxd1R0c3nTfyJbYLYnkZMRqeB8E30jPzCo+Zu6v++vg4F1dwYVTqgeKweXyMs9sQYr/e/m0L40NUABYCxOfnB5D4Lkt9d3jwuaa+lpHvgBBLiOLBVaQJIk7mxKWSYhkUoyxOenMG3KM/CUUo9n/AY8VZHC8Eitd1FjMcFtIry+ph3mJS6B4fiux26MaruZZ1JLIch9Fzj/4sHvtMMxB9z5L+kiU5lzB69acxSSgreYzpn2uddrv958Pjo6UmJYx1aAY+DRU3kUhtyBRhak8e7pyNjTs8YA3YVW0wiCy5Tjbob2Ri2V3n19OYldvtT4ZO2xYrJvfcO0O8IHfTnDDYmwr0KXY6Hw0tHIyX9W0QLrtv457bSZQtK/FyuJyHVxxRGBmRNKSzeQCEc0JX2lgkiZxEkZCWUDpDx1pATi/2aAz4vL8AycRj9J0ocAU0bRiQ8IOIL3zW6NV/8ZUIh5aXmFS8h73yvSxffZFfw1JyZ+HufHyl3DODKJWvhv+megh0iRqhitqdN8pVjbsy9tWGD1toPfI7YOad1gTfHX71hfKhC/3iyBIVsBuEwF5g8/zjmE1/jnAvckNjaRKYieMH2gAaJlNguXkCrAMgjXq9UImT0SHXATsJTJ9ZJUbcfMXgNIyaMFGQXUVqxpkSZh3J9lALI9QpCcX20ZxSviijCRzr448SoGto6uw0hOrkafS37Lzco6MsZu/b4/rvsgn6JyOf14wKQRdCi4q+AKKBeLqIDFK2oQxaNSDJmbLYVpEPopuV2m2o0BZYmMmr64/nStXDvR3xKLZ6VJ0sK6H1wsAPJRo+SrBVJbD3C58mrkQTzxKuWUFKDnmm4vZfhqKI66SaqFmDLMd5qWAN+0+tjYLsT1eJ75LgFHqk7dvuqRUQNjrJpAJkzzVCguHrswNNJjxfF4zWVrCoJwj/dxx+i3EYVLpgzOOE7G8/CDdjinfqBCRJIOngmzI2slJr5bGIsAR8u/JIDY0LVzBlq+VRPnx3NzRtNMzFfB6sqnXxlyqoEbDYuZ/prBjK2bv1821w7B16ZzsYe1d+bZfGpk78yl7c0n1fbKfjfTvu201k4ghGiCiuZkiOCmmAK5pRT2fDUMpmRH07it2E3m8FYjWgG7sUzOYztBW2GM9gG63uazp3BibRi20MXLk38yaL7svbg5mIde+3OrXxxEzNoWHlFuSqeDpWefP53mCzsoi17fyvBcLecMjEhmBvNdRWc2OT8cwl7e1lZFXgviYyMQsn2xghAWxK7xKp5xvqrhziuqR03oBPDSm1nptrLYtWMtyZnZGi6U6NgpGFrMb7wQ5iNd+nbTCsBhzZJWA04dBS1mLEwRbq3Dsc20wjdxlXM5lURSxHK5rMR7OmZCGbycR2EKvJJNtgWE3m2S4Bo8ksLGUtJtN3Nxf/B+wJImNtXbL63QYET1efR0l6QhLq8Z12OZTzR9hkFocyYFdJ7kyJI2diBxpfkIedrt1uFLpUP29W99bj3SicavFTEuRn5+BYzhQ9OOvM29mGnUgIiwW6nZBJ2g+hDiJFhlh1kitKxmraiKUV4htlvF2zXJDb8AOieRtZrknPW5Oe3Pk63Ul6N/NJTDyK+2vDCHgB+QkeyiMWizxIqbV0Hrag38IrtpC+OB8B4VHmPbGOSkNSKDqXZUh8aRShXIjvAAd/oE2HNIC4CwXtXBdAdbw7JmSoPCSJGGhZdc+T6Ap0b84sX4qUH/2DNKxmOMapmlKWmAtjrD8kqkJytyNMQ48nNVGB+e+690em2gQsjLXLbH86QsYuVZFZapU/SofBtqWj+Xrhi2KTMQDsO/pTz2QVNg9qz8EpAHlm1qIT17P+61H9r0f1H+FR3dCC1DC9N3NQXOsE7eSkK8U4ovQ2VMJxY0pDc6CnGFCyCbvyCJWAXo/fc/hMBxRuT0y6i5msTH8TYep2em/U/zTKJjPq4Dwc9pn4littVsVTsshxP0z1GHmixsSPMAbezaY0rTBxFuOxv5Rn78/0KXN+v8/z6Afy07fiL7sJsnvZ7d11H9uDQW9wwKf57BLEv5JVXQmvqzxwL34+Jb29YVu2+WPKL/DXXtj/Lu4gkmuSe/qZAaGRRvLm1oSl6yiE5tf21mgbia2aH6d+7W6NdTExqf67+bXPBz7UrPvkYzKup+bXYcUMoqiR0kx2jFPz63hrompnSoO2I7FnRE85nPpQegaD66fy5sg6fqduou6eBpDUN7/OOeeweO84Up90+AjpgzhoZ5tfl1ujvJ91pyL+n0qSow6RON+9rlkVmMu5XkUFoZvX272jICHoC0fBb4tssm4ZpxSiY+gCvlvDWmUygpK0s+vu/41RFab9jpTcMATKxPGN6NxiM34qj3pioyMUAzoXCG0jxn8vz8fyH5SvJxcnoa5PKp8vNLq3WZ8a2S2+BA+5hAE0ZBb4Pfndru6qaYlLlmAg2KivNGujxRfdJC9VatUSpxS/PQGG1vxfsvFZ69JdUKf1Rj91XuwE+LzC2ifV90whAL9Ux51R2koHQFxfbLI6ZA/xTP9fKMS0WPry1IEHvl0jFXuWXPeVZs/uQ+cwMC7ar2Lm968PufZ/iAi8kh61ISBVh7Xt6QtQpdYrRuaRGHCl1lI0KtwBQuowqzClT9aRSqnRmY6oFwHXKrypB+6weWeCHq2KCxNI6IYu7wIlZcU3a7EOtXj8HhwbFYHXI+/DikN0q0OELYxRFlZ8eu4A8Z2zlrqXdh9OL3B0LuHeNwiUgFHlkSyxElLb3ICxNP5wKXy1hg5XxCKOesimoprabrITex3Q2DIg3mHMwew2OZKl+On4nvRQNlxqVSAh32zkyCS7ZOdn9rh5ZVuXp9LnbIVeLfUsiMBVUQPsp9X8Qle1nYDNJOihdkoISLecrkwFsbMREFV9bKekujmRjfyd67eEEgzFzSsvydDbUbALsKUsv3II0ukDV2c3poHdD4moEzT7u35eTXf6DoJvC/5sWE1VgoEJVInMPRPsUPqXz0jzYKluEuYo2wUEt48xX3cM6FPdhgKd66nVjnUs717K6hzcYsvBa5UIUw+96Iekfd68ltxPrAIJI9+/BMx1WswpqGy1XkdxtyCnx/pFNXKLvbNkResF1UIzGKgNwFJeSZplJDbXk3yH0vtXF0zZ/GB0TlP/PC5A1azb59ymtRiFvr5tGYDbjezB4BbuKAiAlCbF/afi7BqgoTws5O7fren47bMq/H4dovUSGirvpXYZBmIZ7zAhL2FlI5j0pifbNE5MqsTNreX5H8Kug7t1m4f+FX777URy5uHXFWe9kdGoe9sW2/hEtnwkOW/9+eLiijQtK+1ZiXFBkAQhSAJFYKUeDVutZyXE8ehHd89+HPmzEz/+LJmcrealRnWIeuEmOG2dv7CXZUjl7WZl9V4zZLef6RTyC983FoXL5T/ThLzf2m6pYZP15s+McEetSDW3KBnwbuEqCbFMhDyam+W8cpPy3lUQ4jN6v7Bfx2RpV+XP82l9tyXX5vXLLaknYHJEYx9swdE8H5fS8iEeCHRNI8zLMfn/tn9foqBw1UO819lWigTmX2dH5s6974xA8/coH57BmQ7dzJHLHKUCurLup7kre/qE3gl6NeSa+QIreeqznz86kqf2x+bm6kIkIIk6zCJiRB70+7KQZJvOzKa1lgcwjxZ+b7mWdR41pr6FrHo0g5oWiwKLeL9q4PIgg7VqWJnusUoX+xJc+eRNKKRrf1EviqlU/bNywMGNOoZ40ZqfHnIp2tM0L6zGXCAkLEWHRWwpN42rG8v0aiMREubyqH7cYbea538UH4Yg7Tn5REPeomuECS2W058VMZP4JcxeD18+BDGfCtag2/83WL0uUVNkdInZhTla1l3qa29akXV0WE5mY5fnLmbZmoUAz180POZZOVM3+psJ/W/RyOomDLA88PS3cVLZkcC07mnC2RZKL7tVAN6O7tzz5cLca3CAa9/LiGvIr7JFTJcqKSszK5G0hT87s5Olwung3J4W5WLx/iHF0pjwuoke/XVGYjWdrdlXR8aahX+5ZuD2CuOybZUBe+0lQE13Fm/LC8FHhc04w2i9ZmW+LJwHdIz+aiG0khYICMu11639IlfvPUG706oUiYvR3BWUJNqb3MUE3zbu7biS6IEZC+eiEE4/lGl77FpcuwhA0IH8mGtHRDTEuJelqE//7Yw8mj3Z2w/IzbgzWj+UCXGbLcf+f47C/yK7atvk7XTeR3rXn7rRR+R0hFKUJezUDvmXox3CQXPqbWkQvxi0lJ4FRIFTeGYLx2zDMYGLk7Cmy9qeVeVysQaevPPqXSU6kuVqhPre6xPDGhej3Fl/KPAehVHqt1PxvSulb83W7OXl1tWm6UTEi15n4ctr2JfXFy/NhJsFcIIYP/7CDjTSi9/ZMCOQya17K/siI1fo7ne1xFq8IYD4ykFM75N/WhvtVVh7LquHzg2ysDa2rS805OhsJu5CRmw196Lh8CtPNbqjZFk4yic7NVpLoUukWDucVpPltDFHlRvdiaA2pGQQ27LMZlEYxJ6qGX1HuPfyFJo9efmV1Q6+vrThWB4jV37MD9Hb0XImEjM02N6RMegpYxCsvL+AWMysZSeGZtTR4dUnHxGdEUeZsRyKBqkyltHRcNTNco5IJWJEyCqKUxSMrmRL8VvzXH7yofEHEbW3qrvDITLqcjO8YrwlWi2/AIy2dHSzAtPtWKSfHqMtscaFkgYK+57WDW+0jLOEhe5iMsk1k2CgpbO8ESiT7FjECtvHSdDKFVyr6GbPmIu8fDHGIrtsjKnok4Y8CDx/OTc6ipqxE8ZzzZG4UtwWGTDxX3kEzmQP7yNxRDmsI7CkgyE0XziPSi+wEmQzxGrlLXkQky/KHHcmIjsxwlyTBHYJtDYqbuXW+AJuq7OPHO5eLIPRaJBFb5KKgATDuDFFHxBgyg4TbYELqVGOwwc5OEQwJdtkarMFGWynx6yr6SdJP2dHKHlT8sIO8CCcG3k88ONCLNPnPVsdto31mexEHBcj6a6CgHUeUa0mtTDIaoGqYUaLj2CLip/NgEmUyltie2ZiXYToVvqnNzCdQk7CSAWJntstdsM9btOUvFSCzwm8CO7MF/1Gt68G6Sq4PVEIh/X1QpFkEzlGkmxg6SY2fD8pnIKDGOS0Qd7hxPQQXchNmBxgBPIOeGPaTQ7BxBvnCiUdSDO5EEpbiF8SkTZoaXxMJVG7Ld/0Sd8l0iN8j0gse5+kNdEH6hmCAKqV0OE6JDcGAsk2gUh0kpAUi4atfnM5NP77DXPKEl4D9Z41vDD01vHDudKTDTpbC5qeDPr8s9HNLGXYRvMOB1NHeCslV9onx0+BLP1dceLk2OnlYDLslmW3l+WG79XKgxgPT87/t3J/WHnKUh3xwk5ToF8Nr19em2i72GMyV3xBojucnoipsQ7UOnkgK4JajJtiMA8ki/SK8mQELa/v9zZbDDCoM60aa8J9rmmq6XjZuMCE0Xn0BF44LADAdAWeXm+ggxWqn37A7Fd3UHT/RSFe0mQSLZlIvy5XeuLp8pazjqS868bmQmAQA/Iq8sGhi110MTwyTHxJf63kJCbTORNIFaAGI/5BTI75dwD4Ilix5gHuKhiScNatvwn4XgfnnSyal96o+dgQ7uIYFLFkA+PIiKabLSdR7+pyw1NHe1ifwhVNelCKJ5724OHyT9WdokRhm+bVaA64ymD3DWhC1F+FIKUkRdcuPGkshOpRYIdA5iIfLtUt6dVAkphLkA4kiRF24qGUUPBxfJAgNiDG73tgp5OJc3kL7qyD3rsN4N34cOYNgiIFav3aPA+t8AURn8wAYzDqv00rQJMMuT9buwolx3Eg+i3xkbzR+iLHQY+WmZnJMIw1gcX8+73ulh1NbqDuMkWRWk1ijF/pOPhJ/uIfFgEyo2hhZm326xcCCQKhoMb6KGetGnYm91DOYh03fTZGUIdG6Gkfhe5c4Lrsa2mH/HbCCXrovO9rTF6Mhxmv9ALt0a59q6gf3y94+9FpY5hWBj4s7PtgXnOBq97jJP/tLmFvN22gCafUd3yOj1PMXAA2BftRtmyQeI+9Di2BYFQWjC7ycDKeZDsUOcaJZqBlJ/i/FJjw4xCLJnYEm9b3RaZyLVqP6pOfulwW9SSiZ0B63gd0SgBmKnf8sHeohLt1+PVzXIwhJjlH9OrDR8dkbUjTPhcRRtpd+JOJd80gcuHYCydeuIswwyFLtO8lGV/exH4kCYexEYuqmENeFtFIPkrFmIKF86F7M7mgKp7wWIhBSI73Ocerz7kdgDZEt/WzhCKGSKBl00Xou8fWMWXmbGapT+r9Ug/PJ1VXqBZUAoB6jAnuWPzMZfEiZpQrRg3M3B1M9ehkpsL0JiHtHeaMJc53M+s2TuPOpfX1dJ3gDqcqWN8PmuvrumHClGP9QDdaLmzaASdcU8FI5u8dLCzI34CIcdcF2j0OPLBvM/uOgP4e2+u5BZwfkKTkfijNduXRP39BIzvI8s2dTXpvLjiAQNMbDAbp9WgPj9HXaEcEHM4yt6gn/gwYxgn1Ndedm+2Q7BkYXik3pzjv/Q5oqTHeW17MdjC1DItVYk8PsrJEfV7EUcQwbh18A65lRoQoikjukrjfWl7L75m9aNJndTah1bhCMb3l1T/MHU5iSZiPUB4vr3O7EJ3wsF+5Olhe7V6tNqmaRdI7B7U5mjHAZQCPA0AfvPyDIkB1ba3W1vrn0RY6reW1vBaXbhZUV7cwS+EJ7s/Zx/R2IQl3Ctsw5PE5lPZEJYa6JgIBPk+y/fpGUEVLRHE7OBLC9Wh7ujvdXP26v7fzHbMfBDuUoHcQqEHCLHX5J6XLQPRMBYF+L39AcyfL8v3sMf2l+MKZHzD8qL2lSaFzXVZwxtaWv34l9OuRELyRE1ioAN0B5N4FouM8OD01grSCtpNSdSV8ViYqM2dzRhivDrCMg8iNXNAP/4NQGDp4QMg6SNgaOJnBtFXAl/tDOrvZKflGF5OZIHkzhjfWESMGDw/TrVxVC5lZYbN1lARjSAZh9Eq4ZKKbMbIs7IKJ0VNfYgbAw8xruULl6KxW8sAeZIejVRhTRXX4C0MAQAxTDPbHJxok5tYnpR5rzsKFTxABnr2bHjkGucRs0rnES9p4BZNmac2wawkMkZ6/rNicKT2mmNagpvQdpVdTeO3TuVQQNampHdGCRoNYODQtlut0qnRjmKBYMK7JWGf35mI0XZpYc1NO7xE85jeqCNOw3P2k6yH1FQk8Rbrur9gHf/75aE1BdoOoG7nazEO9mdsNGfMhbkUcqTTHJ6F+VippLlXSGhhRMnZuJ/RYRQNaktPQDvUD0iC1j7ouUdMzcZ4Hi/qvWvt7GEEmB4vAmI1X9AP91r7JGJP+YTT688/GkbGk2is8jNajt7nKxOF2LXI/GlUs98EyKsEymy3YJvy7pa2/Odv64bHW+Y5pafPvzjY/dub392BxExgrL8r0BdXcyt903HEwvvQPMP9EzlWaAwA=";
57
-var Small_IntelAmtWebApp_etag = "DFjfKBJ140JXdN5h4p1E";
58
-var Small_IntelAmtWebApp = "H4sIAAAAAAAEAHq/e7+Noou/c0hkgCuA0+pccxQHgq/C5sgsOBuWuZxzvr8NakDfCEkn5LR8fveTDHjEYV9yVqtDUd0q45W6Yrdv7adX6wPDpERalDoKg+CJsSOQ27cVajCOWvr4x4Zuk9/9Xz7wPxKVBE1Thl4muEauk4dffJIgKfBhF3K2a9zrN7ZGnJWgatTJRuf+6qGb9KPW2f/5ILGL51BhkgtVgfYJasw0FdzNylCWgmPChSnJKL/zFLLkITUuDz1tEiW0ggLfSF54pcI8eUhAQ3Q2xinUuJi9pr9++N2Pu+CrzwqRmEwnIm5TQQ6Nw0Zcwd5312KLKmdiF5WUEORxLgz8HCrKDhEoCuy1VyLboqYZvPZq4LVfo6J561jTdxitpY4zwYSKUgbZXZyaj0KJDSfRrqQaTU1VUO5rIaOgXzDM9f1KWUBm6e8wvaPauG6y0s+AMbHRERccz1sbU95AYJj1G3e2KRfslXh3yVqPjSPDkdGmhWZASSCE8sL8OnoQbWlNNZLGjoNPMBMKbEfbuJaGR8Esj48Q2Wb+G7/SNqHpbPP5PD6WYXPPbxhK3dK9axuXCkYGjLuczuXeJTwM7tep0FpU0cJYjuXEqbD+LwUWwwKLUX7Dk2z+JmI2jhjOwcQC1GQI0FjKsaXnbqNqA1YKyjUqdwIfAUB8vLEaYPykqOmpCzndI4nbiexGsZ/B7nQslnI/SBRMF7F3vJFKFArrOoWL6WzYlYyTcUKDjPIBVzPTL2Nlomhc3zRNIZ23G+HVHU/b8+5pFXFd+llJGXkuCHkxCMAVYo4mIN8wliFjFy9jLfdn/F2XeqbkfqQax5sKKP8fycL5YpyuP3EtI5Y2s28FiPnAaMEjk9SU5LBNQV0taIPdejtKdNkVTIUiqO7HzasFo8R79GHw0eLTjy6UGzXOWTPKEZRfKCAUuX6uhdcWfe09SnMS5pkXPHnd8e5Z1X3Rog+bXlpCAyEwb/u9Oh8PS/Xfn8uTvvq1hAwjLnYKZDw8Cm2hyWDEppPheQzclON49RcpsqagGYm8sYZNx2vHeXgm1nBziK0SdoxaHDZi0lwwTv9zmmkrAw4ov1PT1XQ1Wabji6qlQiDuP2M/H/bnKE9/iZpWqDp4Dq5HkGaA4Tiu27CRlUPj8sSi4d6V+UlwXYUffbSyz5HuOl21Qt8mnTQXg1yvHSjeXKuVBfZhpSkTPGw6Xqxq93TNB0rmK5QIOuKi++XunW5Too1iz93bloLm/W3Lj3/yShULbgJh+F16qset/o8gEyYwEGNvE8LiFiOTl697e95fr591c90meUwBBFjcAQv31XVGDt1c9Tdnd6rtz+dYqLyyN7fbPlLFWFd356bXuUyeNTiug5R1WbgtJuHocul0OsoYIaAAMAULvpYA9OW5aspz1vT6Nt+Fxx0FlVKOF2hdpWalMI8Z+H5E7F7bctxlloyGFKY6qRyk5r5EFK9MRto4smnbalUECz5PiWjxgRs4HigXO3x0rmaO0Z4gp9OJgUMY7UuTOS6PljdtgoRgcySaexA6j4e+Hrdh7voukOPbR0++K95/UMUZJeCQNZcFJy0AOL8ryP9S0FSl+axGB5CbMqkWmyYpd4IFy4Fkt+5G93wZAQtOsmub+XF3b1r91S7MibjO4eglx2VKTKjAbt/+Yjt4ULZz0wCLBka4PU3kf7LT+Z198Bf7hQytQ2AVG27WbVLfoYWp5z4a3qBONekjSH2x9IfxVveaGG/cgfSsZ6ik06sJlEYSXQURCQw3eRWFkScsbbgy4FgN9bhgJfXWmTuBRvRFFqyMVe+Y4WwNx5AG+Fc+TmHxiZrnUG/cZvJVEKXZiWWzqMaW/vOqJP5i7/qsbV+5ApGQxTNF6ghobaW8+2HAEQVCVOHK1/4qA9MwGEwDmDc0yeJGE5xAEK0yesfalmlhqIPYkuqbLkSchUHqBwuuJgs8qNcat+xND+rJ0mkhf4JIXpCsttHJtlH9NljU8ikQ+POcgABg0DZyO118slq2FjKBwEo7zgaxPXFCQi/4n8VFSBAFIqBhYR0C0hTVIRCqNusQHOWbgxsDfxNw6D3Iqwpt/kf1k1flGmc0koq+kLYVA+i5rAx/PN11isCccqkkENygB2eU1y0gd6pSFGu9wXUrMyf4adgIbr0qeICXU45XtX4UN7ckN9s6il2tLLvjVlcvyc45bnWNsuyOWt1/HGiVTqPQKp1Gxstp7OXllONVdRrHcHNLcqs7x3CrleTWbB3DrV6Sm23VjmHXKMvOPcZOIFL9ScgkCOVcGrfIKhJog9yjITtRJR6J59QLxPKkIf+AxkGubq9mVav1PcHiw0iCLDksi2Iq0jKHEGKGgKLKMwFkWXhO1L8kafnba8O/sfLciH04XRAqNrMtKgT1pjPJ6xfuJXEYgmqcr10XyFp2YSitpJ0t8r9tYTb/39oxasG/ty0Mp4/YMf4/uWUo7v4tO35l4Xi8ECKOMButaYuA30Y2imVGUamfa8ltJtWZyhIWUhF8Yab3wMP/i3Ve18TC9HM1aWtTnIUwjkjt/MyqJGw5RWtYBUAC68nT3h9JYYVjuW+ug37S8JKuk3lJ19ntJYGhU56h6xzF0S3PsVE7imOtPMd24wiOyfjPHfP6udQada71fUFldXWRXgtdiUDI/7tjfNpbSX11kQ5eqR5yHC0iSdnvVO7oyam8T/KDLyTwOxbxQsp5J22oS0J0HDIcw1IF7+C0ftoqC5QGKjEAyydfVAuvU5FIFZL2LjuV9P8lt/mapG2IqU05IJFtkAP0CyWWEhqhtbZ9thYnf1u43pOiFmDCfElXYub/F0m5yGbVU0fKWq/SY2rrsDbFuxkwCb0DCPrhcxoByVr3NqYAe35+fnUBowbP+uZl56Uf8HlIl8o0MsAGCpc2zOUGJ6BgOfEY2+spm8SRFwbeU+czPbFPu1e0O1pywWZkJKhY8KsLukarbcOrKcQHNosFI33Gn+RCdUxnC6Kj8H6jif9ME0ZuInVlCj5Wx25swW4o7MEXqWNyGz/mGNrbOOIaRZzI46ujtLZgtBTCWyae4+SJjJgQcnfyetmqz5TZB84Scu150q4EIGZbxFMp4MaQ47bmQ06h1TWR2+ryJZtoGZZtG1dPrQn1Wv7KGLU7Q63nnrMl84pGcUImmgfqXgXRfCHSa+s0fMHJXLBORep5TkZeEsxFJdPMB+lbtDUhQc2NSb+ZOzJwRk1RfojGfH55Ne4+LKJIAiKXq4sxHqaUqoEGamp38WAVKde2XluJO9ao6dAIBtny1SRwyV+P1Qs0pBGX05m2K0KWJmdkQkPOpEv/4dsXp2k3Lnfpv7ZJfa3v99OAk1V77UdOJkEyU6eXT+NF6JMxI4u5TwXzzxCHIof8EvFZA7yj4L9cXHAmpwOxrKYu8xxgQmjjXVD/SyDxlueUz1/+ocblRt28fT+4rY6uq5ZlNes/hDR6XMizJGdYVJ0klfQ9RRRLJixJJLsojucsYnJGyP1iolP5t7HEepKBY9Gdh4xyRrwp857IlCXSMyy6cFTPwaAKDcXeFvHwAUowSeiMKVBnJ+gqsFuSQ4pksnIRf2V0Le08VF/QtDPwuSQ0tXNxZGobJOcr6XVLBTTT+8uRLDbZNTw5JjFnCzEczp8PsPxCl28wq29h1tjCTAsEeUINJKQNNbfQbm2jbbp/g0Vrk0V7Cwt7m+bNMKEzcKxt1GoF1NTlQGprzZbKLhDcsYGRGacVp3FikHacbPdekNhGrmE6rfxG605I+obnIZMmlTDeDx9PTvUsTd1/Ibd1JY3U4LZjM1jsvM7AY1J8tRHCueM0nMVR9wZ8yQ8Je7wk13fvyQPzgwSfas3jRJA4Ib9/vCOTVHAScCJXDzmmv94Zt3tG5BrRbRARExYBCAnE+Y4449ReW7338TNLrpX0/2c0jKaWhQtQYRQLMgdZmS/lN5UXcL5ghKYQBIur85wGsfhgYYhidCz1FzyISP8yvW0mr6XJbtyaWesqBfHN+Ip/o/43Hvb0er0t+ZH+eEENaAd75eUwvmp7loyJKs06lYdYUMHILZtoSZSfqNGTqswxf4hDmiQY0neReADumzQUiSQjgfkcyOdZuawOqb2PHx9DRqDsIdxLGIvILPYZEH5iy3nCJO9KwuShidK8A2f8+DkyJjBRHAKpTCzpmFIWMHxyihrNFbbu/GV72rny0jL2rUQe+IEgSWqNfur4CEewr5JbP3roSVdsS0mM8vWmMoFhREwZmj5XGxZP1BAKPqPeNIiO0XPlXhFP3QTop7LDh2xfB5qJ7tA8e/v+mY7HcGxG5przgXguclkrjhUoE+RwcKm9OIqYJzKpEu+EQYZw+hXay/x+p7L6VUEp1ke50e0H3Eu5Mt9w/uhZAK6J+lg7D3yEVdA3MDuO3SuPRl8oB0JgdUQ5uU6jZuG1eKdmWUi/OuN4m0297BFq/iVuGkLiCDjPWLTY1McsXnCmNOJnP1d6xNnFHOcWc2NmJpNUnIOfq1m4Go/n9D/BHqFtky7plbwvaLi16YN1kzU2DsxVbjvHBE5dxCMB4z2rBi3FjeciyFyO1f0URPkhG4Z+7sfPxrijxj/M86OuGr3ND9bU4J2Bb6nRB2MUCUhRjYmUCLh+Y6beHU2Difh5kwekr9ehfNFOxwYxW40Pa8aw0+2JJKx+yg83ukM7P9LsDp38SKs7dPMj7a5J3ra6w7oxZHeHDWPI6Q6bxpDbHbaMoVp32DaG6lJOyxgD2W1jrCnHnKuL1ES0KAkn8VO/MBBF/jHBBYwNaPzOljKqoOGiY1mzd9oFrNV+wF71WXhUfJPs5VMk5K4dG9fSRHDtVARVQI/jl+4bKK3JSCUHebEzfEfHdw38jwF7ljKEyxwyHmJs9JpV6PaaFrt9uZrKNavZrW1eP6Bh/IjEK39Ug8hnL5BYWgV3WYPB4FIuoMqnVKr1l9UtjWrJfNtoNHLfWlyn31r8Vvitxea1VcGjZ7uxfmQhXb8RPbGDj5Lveuv6rWW5rpQO/xoOh5v8ibp2IhZSBR3WC7Ld7Hmz+Q5Nou+O/JnRDU5ONxpVyLFh9ELq24oXXCnWOI2iZmpBdmMbL2yhxDEMwc7hqRKpIHTjrKuhu01DdniXu8PinE1GObLjRF+G9sBBO1i+A8/L4HOkgp3CdxBgNqkjkKE88rB07H5ARFPAPfzmlPNnaTroEVZ/EhAf6sCQCWmL8WRSKS3RPdL66StFcl5fJJllQgOUrEQrvCZqbRMSsw2UkiWzgPMgjnZLsZF53MYeDfODWcfKTD2uo+UqgKFOM66m6N1fExoJ5pM1CMfZRajW1V55ljDgoqp+V0HDyvdoLU69fa+sWDufm8/qwa8WX9BvNj0vN7/XgoxyEe68X7Dw9Px0F0TBbDEjLQJf91FPsITLlFpMyWIut+OMSF4s8ShnZ8Sqts8IVfFc1WXf/NO3333/rz/Q2fzyp5PTn6vbz3G9/DkusI96msWP1MgeCzG2WKv5TClzlyXrO89PNIlAmxghR/FsVZemUnAyo0uSML4IpXQRgVfYUlmcKw3BnJ/VQqqCxZr7jAgwpoiGJE4A5okkWteNs9TMzrcrs/EaTrHRk0xYJN6zlz2qlGt5CVn0KIusSqOSOQAvxU+rdv8kX1MGE5KWOudyrBf7jHQ6xHZPCWZYH+Gm9ZKwkLPVULSYjVnC38mEJ0XFy/cuCkqAjKGUfQbT6KeZAERVJWcn/T8kibNS9nLe5j4JpL5hgxW+6XdGTOrGLwBQIsnLo8RHzohSeHmg4DIKaM15jSCVfWlb8zUOn+eWUpJssd8OWmekB+eJDCk3SzKYtxsIoCuoCe8JawhWB7Dar2fkVzmoyDAuNqBbCN1QTHVos8B8uP6UCTWSns2oNWE+E4p8ZMlSQeW1fwOvXsgg8mLwtrstcn33gGFC157p91VyrOv0UqOydvxLfPa1JULAx9R0zEI87PmiItUZ9LnSLLQ7kj+Jip7kDpoUpKfGry6Qxjg5kBz1U1p60VWKShjMAjGEu78HKlj3Fv4k6m8CA6VoRbFaTNry7fbj6EdB0j/UKnVieiB4J6YsyS649h2r9p5jpVgYJ3scxt7TVsG9Wle/gLmPE4GSIjUFVC9Hs9GFCxzzwkunWo5es3vTH1Q1OUGJxxBsSYcJRWAVLLx6e/1WI1ioeNs6RPM5hlDBxek/ksC3LcW2nbnzt7G0DvjnGCTM13gfSMe21i4PiZAJXptB9f4VFO2VP3LatXaj6bTrsuX0TJc8E3Oviuw9KkLomrXDwO3XqL482zk8vXCddX7xMD45XV0N3NEXlaS6jpalYg2+G+Q+iSdByMjbslWcZ7v/m3KPRjf9csmOZ9f2CIytBSWhmR8nQQxPT8qyrJdhaXZGP91fO+R+9LsRhGEchvMSXi/ElEXQIQLYsnI2vkZOOB92JlWvd3dfvR6M9FknSyze/35zX33o1fRZd93tHtzrE+vs5m0csfw6ZV6RLBVoSXNt5iv7Ejm9W2y8t2qejJl4huvNlqprGu6GJZeA/8r2hWe3/h8srrgRsqu5tTuObQ0TDoQJ+D+ahbD+6lHGONmPNs4C1o20aShh51BQHITrrfP3u15JXD87LYrvD2STxDgp1tSh4ay+MzdEeexUHjuY82XkZWf/Djpa7+YsoZD+EZ6+Aru5J9T3oaolAL2ZOe6J6Rm32MpzUl0HnAuzx00a/cMp2zso20WUM301Dmfi7GDiFDJBRpsXifjge/+xb2dnF3huP/Xuil53vV37PYzSQFNn6FilGY4W44gJIlf3VM6nOXZpXr9SwWQaWJKPU5ZP1t/ovx2V5OWW5iVLReixC2Zy2+s93Vdpazj7syZsHfU9LTcwHW9+3M7Gz0j/t949Pgc2WyCDSMHkE4D+Up68wAN1wMMwFomSe7AnJ8ObDSUQged/iRSHnMyCaCEYPy3JrHEIs/fvb8kJV10xZHBQb7rPJnJT1zIGnNi1mkVQ1DOiAEJBJH2YbFsWQS7nO+ym9jp20zzUbqA9cu1/US1o+aSop0Y3TMnBHvVinh+v47i39ELDgFo4BXfXG68FHhhnuU6ZU5vXLQsB5K/uuxH5RJ8YmSSxeuwc+ePlBoKdIdiAkDIc0S8yQuZZttvt7ogJMo5jQdIZnjdsbEHgB02H9s2UrltHtc+aTqn2GbIFBfhvgpjf0wVnu/IKBM5g92/9mxvQJS3uRBnsR/BVAHsj1XqYDBrCfkEG8PbcYyTFIYB0iERiMT9UGIA9UCEKdjf7IUh7j5+0qdfu/ABBCrD2i6SQyByxCFNou6W7jb0nReeNeoZygGQGxn6pAAGvocYKZb9EyhOUkggxSkiUAMbBEo1CxualJEKMEhJxwDhYIvm6aBzTxD9MnAz8QFmeEHy3HPDYYFU6vllCqXuANJtIBx62rJQeK6zdoj2wSUj5FA70ATJp0PuFQWACQu0WYkQn7C72D3HFK9D97AFSvdzeuzey6/1wAGuE3M9ZAhKA3M04bY2/k8Hrlh5yWHLw+4UwO+97ZIEgMUjoQeFQg94rh/4ZCqYJGJEUviFW/vYeYlbxnc0BSVz7dZM4SzX08mM2RpJe/6L/sa9CrJH5IcD950HBrIuz8LkYXPg+FcDUEKYf0Mco5iLwFFAu/UI9xQsJWFJLrvU/oaUbeFJIbEM3OOwYSsFht3i4VrDyO+YHlKj5wzoDge//mzRjOKJAoM++BB7L68V+bb0oSUVMJMH53HxXkM32+g/v7vJLVC5HzYOc5XfYee2V4DeUWKHhbMrLzRb0z4uA5edq2b5/ZMk45iw3W8/2WX9bm9eEwvMCsSy1yw+jAURRBNylCnR5+X40uryEMxgxb4YK6eHjL92TSSF29Y4zwM0nlOYH2LV8le42il5HU/h0fqtwLct4Bao/TpXPd6zTHIdmAYd3v++krlOzT4v2qG4so1XApM/g6SIiInHzDbDOyTkt0ipXX853RyKB74XnSSxiYHXOBU0E/xSI6V9/neyY7UwWkboMP6Gnf+KDJqvT6YhpwM9DyoVyPO8mJ/TMOv379HKDFIt8g40xV8ykan+DTIKMQcpT2V+V4g/gucImupB+7C1m8E7rkYlByODnm+WNLyH+zuDnAC+SJeIo/HOl8L89KrzpiXf6599r8ETK4KUICjL7cOgbD+HHOXixhp8DPO5cx/tHpfJLRb3hLsRbpniKRxBFLPntv8j78va2cV3vr5LovOOKEeNIsrxJptMl7dN2Tpc3adOe4/H0oWTFTu2szuJOkvns9wdSe9Q0d/vrzqKQIAiAIEiCEEV/evdPEeUIUmoMLbYpm/Syhk6RPbuAyINBj1llmOUUWh2Waq85nW636zqdjQoZy6zSAGWncx/u1nJsFThGv5DX9f4nuU0e0z5UqaNdz9Op41ng+FfB7hIjp9jTiwTblMNhr+G221zSs1Axlr+qqatR/XLNA/lrnq6X1nY6aapejunj5aiSJDYVarMiNdloHONLwXWBhHESfsd6ZqwLGv44Zyu3R3Lsy7zqYbHq270P75unEouPqZJLJdjhwQ/gFNjNVZ3DA9PQCIbIyLNUiOZ5jKEXxeZWY2vKDXWy12A5dKig04sScKCAizLQUMCzy5My+Ikmi684AA5IGMQLF7E8rpNGletjoXXFedMWiSlfSURFhGFQRVup0lyXt7ekWCEkS2oa5nsAmMKSOLmLWfw4ItLPznFskCEgZhKhGEXgFlrC+OP8j2PDOpI03I035Nf8w7Biy/DXDIt4j+IxJ/MP1HnWKtkPqjcV3XqaRGpN1NICpuq3IGl0mDf6SPVnKm2EZvNQ2EE48DZkEFoWi8BlzUhrFubF46olZIYGZdlCZIuGrgp9phwCKUzDsDDhHqkJeavZ3JqyIBUiDEJUXtIXdSYLSIC6QWLYK8MKWY1gJwWzNqXltjsM1wBrGqaDzPIyhMjmpkvwz3Q+/YWE2RfXqoxE2Z7/MHf/YMr4aJNpsGLJp3dJ0QXefMYozMmdSVOblRQ3v/ujMd/zbf5V+g5/gcSPyDe2rpdHMF/+3c9W54iHPOZTPuNzdmMqhe7d3uIxkM2v+UBv7h6wRkMV/55ofFs2/y2T+lTbd4SYblP55bFW6ygrHDOfCk4vl7MS9I4/k7ksqp/XTTAfCnBHB5cYMt26iEBZx2khRjYMceTQw6VHix7emIqfSaj8jv9b1rRZMbSpeS8Y3gmoRKMhmy+lebNUN6r4gNxxLfJY2/kN5LOsIIL3Q2bGlMHNBSkqIL8ASXwL93XnhC58ojNwOAWc+ARn8AnmqJegvPvna9ymk6CwYN6kG2/M2fbMNz5+2Ptk8On2FAL8iKiMftUAV1wLp/2yRaj64reC7mTzTWTOm+kRBTorz+eZ6HeqDq7WOTkvV0Jbq1gpq4fwnjcaz5vKnGCIUdxoRGCK2ZF+4cQ0vuy9e/Z+c+/l+x3TsKKk/yyD0SSE1kxV+z/jm7KemsfMFEUPzxmmhtkghQWWNWPT0WwsouJiPSOl0NeO5pT699MBWfybqNLL7OYxgu6+fLFfKyi6enOT5t7UOlhuMDHszaRe58jxeOSm9gEU1wZS2NQ2VMBMQQX0NVUacVQhaNFmX5Ztlt08JE5YEicsiQP0HAmm7d98kX6UyAJGaZKHZQH+VeCvp+/AHuQDMkhXseKAzOWIFDnQuQuyZTCdfc+lQHe9QEd3cFotYOdy9GIs7NvsFGln4528mDVluDRVYnl4bFrWC1bYGiylKbMpIdALZ9RoFEZlMswDYhbkq8/lcbyM5GlsxnQuPv68+wbNY3wuUgPgZ2IUCqfbcts9z+m3eCw23S7yrV63z/8O+d9Y+BYQfjEQ84DJ0QIu0/hWmCULXbDbW8ftkaO5YS4s6zcPqh1FAn6rObd6wyHcUscbi97GXAmnCUbBwgIKwzxylo0GKAnanovRVMxpcjND/HXGtzazTJNg9tgahQ0zRhIqv/07bEz5tBHe/j1txDz8M/5zyuM/Tcqz8WguZsOhN7ZMaH2GP3I0mvH2xsxyeAvPNu9uzIA1/s3pWAtiwtAGE9y73HG50+Wuy9u8zx0PVss97jjc6XC3xTvcsbnT5q4zHnkbc2tGjYY40+Fw2HI350zNHkmrvABNOhttbmJkn5EcczyUgajVu+WiybQsmyhE9TFE3jCdP0Gz0WUNp11eblMTO5YlN/4idR+uTg4napeb+Vgi884oH+SOiZIvJO8nMa9YyFE4pnEXMzwMdUcZbCc2QCVufvt2KunoP97800/K6TpTTHJxUGQ8zRhP2VRQUo9PzcEYnPvwNCy80pX+M30qaKjX68FWDkHhbsr9Y8oV4GuAlxQvJWseGtYUUp2nkPNDyxhslVFQQ3+adnKOePTQ4DOhJdW9Q62HmM2ZXH64PsbrSLgvuCZ7Rk4AdvGzbAtvfPtmAGgaqcoNkbm/NGnf3qY7hCpczfzNw6VeAQiG8WLGlnhSkE2dhRbGE5jSE2P4xCK0vN8ZtStHHhqM1haQALjcPuiwXnFbqdqxbxeRNb1TfTIVYanv4qzv4nt9Nxfr62QEx6CpfuQJqpxvG4Mz3/CNgcHPVG5LZ7cMPk/6emqZ8+0na6ujxfHSP6M2lqigvU98TGQkGl8UO2dBnROzuNo5i6RzFo/qnHi0uNcJBKNOSLusjL2drpzKiwASPhhYA+wK3NVXlgu8d16oEx50Uw3z55aYWQtqgIX6pX47I3jSX3PVX0oluh8sMb27u+9xX1Y3EXubRnkDb0NbVViX8VC42GqkO4UtL9txAFdFFryNWhf/Kp088o1Zec6QtIM4XRxemCCltojeMGUDw18aWHUxNWOXvJckS9XzpjhBlMkXRJaVLqxqp4z3TSbWjbFiEBKdqEyHACK8C2t3MBLrBLNqS9LAW4tZf+lVFsFPyCSxhmypPF7emy5vuYwx60Cqgkan3W61taMWiVZV8BCdJ7W4+T5QRyy/pYr9RCE2h257PF37fnmkbnZaO4WAF2vJ3Q0I8B3S1lXvodaUPcMKla7Xvp/A/jXLte/Lk2OlJJUiXASak2oyAlUqI8LXy5Bc8BhbdKRPLwmCiLy8iJGYYKZQiXgVR2ta2uVpHE8AAi0ChFR8eZznUHdCZra2xC0C9A3y5PLo6EckjdQi1mARdQ13haH9DtyfuTaJ01Qantd3WsqLk3AtvDiRa7N45VK78L+LNDyn4wnOQB1N2thVz2Og0NBV4uB9B0ZillqpJBqvQTpBAJQohIsTIpwnV1C0TmWJ1S+b89UVo8yP4pM4TV1LTo1ohug88xqPk2vGqUVlyLHkxUhxdRUWdmHkpuP2RJajeSErjF5eE90u2LZKah2abEOyO76UfAZZcznqA5sPhg15iDqSTyT/i8egJPlUjmvV1RLGKcasPrCtve41AqgjO2T6lJGXk8MsE9HvHB7QtySxRr0mQ56gNCc0wdKGPZ+CzNK7OilzSXeT4NyUyuhryWQU0RmhGV5bqKv/1Bdvxe+/MfiWhxMdbkky4Q/UIzvLZU1Ggj4892sraYnRSvIfktM/f0n+jFK1Kqd5HiqtL7tSZeN8E/C8FE67+XrgR3c0T3aGlcjQWmX1enNMt5FPktGezCcG4zSjKgKO6/TcludgI0c8bPYLQjBrOoes6RUIOQOp1pif1f+MSeWU7q+MM2Gwoi7RuJRI2PwsZBJPouWzwwCiU0ylLTrtLU9OTSp7LWw8P4oo0BvOWDh3OnleqCJLdd5KIWl3B3chhGchQD09zGpWuMSocccpYBtoAkUxdMAIJEApWsBqMioEI04gTkiap000DsO6d1Kp9yW3dcoPm99DM1txm1APGgkhAM8JZC9ofkqmEDXcjjKieOdGNyvyaETr9JglIZtZJg7JfEfMYllmRjq5LxePtHrKknHQc4r8NTcx84FaJwcqaC3HJS2TXQmR9K7KotcHMJSEcBoIhOkByFEIioWc5TI+K+Y92v9SokObX+xuc1eTlLwovD9M3Uq9alIxnLvCDnYWLFIPZpKymDN+JJAoWPHccjn+tyaMPxNHZTcOyEcFVEe5PrgNJQlCOIOjVNs3BsuiEcTxSpSKTsm6U8AdADpMoRmkYVVgWlcWijmZonmF5QTKfUYjAW2j1mIbLLKlzTyi6hrMgjMV1QTsjkREtdvbFp6sWDWS5hFHqxLctCocXzT/jrSOoRqJUa5Fxx4ulBojXUUJdkbuuY5sHFCoUVnBS7icbAkHJJrR2KHLT2ioYKWfByrj+ECjuKgOow8MISjXaFDAdECxUriqA1EGiwS+Xoavp/AyWKTgYRk+zOBlMEEZTVMUuFU7rrU0FxQkd/107J6h1nbB3s5oaPg0FE1KcqLKilVbKDwLt+lhhvnGgzhgdDK/GASslpcIeX46hbo0dYVi3Q5emo7DCVWHm8PmXkQSIFWq2vazIaTkowd6cESVEpXBxA7EolSr4x8IwkzfH2QR7RJWN8VKt3pAK2P0Mjpk/PfL+2k5udP3ix07Ldejq1TmoKzwJu+e9h0XCOX3ezVIrYSDRcxLJV5SsnmvBDrNNkU1JDul3vrU/Fp4NRA29ysd5HQr6EcPo/cq6P8KH8bvV/A/ygfxXbuCX32xoetw+745uI5Pq6keQcUV2KxZgvnj1nciyMpc3IqAl1G9hNkLGDza9OhUxG1VCK00oay6U8H3SgM2Z0epkisOIIWIRV1BmWTb17mJPvWVCdTnFf9sT/tkLynH1y6P58cIcKRXXdN7Asn0FObSVLx9IOp3SSO5ibl6nAtfqyW/3nluNOrhIAquehp5EMMM+cOMWaDn2nVx0GjkE+tB6ge9ZTdpVCgLCr0F37fibfMI+wk5jRlX9Yxv8SqK1b7A4G8R/s8dFaL8eihyNwUEUr3bPHVGyUecwHbpaYaFMMJdQFNtxYH92NxRMQMd7RMyd3mT+dopkyMiv8ucSAgi6WvOUMujnq/VbyeR5DxbeJbURI30HL+/JJDJC0PVfl26m7yEWwoC5TgxkPLSEqrIkxl+BqFahzLBJ23s03kyLFqC4Dn+YeKU71ecTj6nxZ+cWWo8/maxpzNanjL46GycFy1UEYGyQixf6FDVzREHFd3hKkr9Td8uZvB5HfgbFgKDv5B4q7Ctnr6hBhQdTqAKeZ+V+ypfm0s9pk3inkGG25VFByt9eJdulsy6kwk7+UvzY7NbeLsUYchkO8uJsIU4aNL961S4LX2nlD9o6kuR0z/qbN/mQfNkM/LdR2JKv1XCjOg3/yt8owpf+Qvq+nAiyE8lJGk9DvdIbkrwzsoRLFPXSO3IC2nCmHnxBUsISP4WDue+1HmWQc6HIV8SOkP+7aD5nE9EMfC4BRALpIg2oBHLJLU4mxMWaNLJNFvWiECVDRJ6w9v0qo3EiHmAEZciYRExxXDCNSOGxs9gghc6stpwXa8AseDwmgDSm71WEe6OxZGJkhYKOsUjYf8HdKSOkXm9spoI3Gq4bbeiJdKRQ9orHFdLh5vUGlKjTquex0V1U1SwqGbELMTmZhSwjIXEXo3nOZIjLuYhAHhZwsu5z2q5p43icdYQzT9vwP8I9zm452GP8ogPHzviS/NJ+LixjmFeOD70gBSPm+/Cx81G1YkuLEoBH7VeBrxLr9Ryy/nNWqGqvDbrhSqKMDHDhzvjlzzdR/F8SA1HBRkctzvAVtZqwf3OMZ6ZCIboAzB1L3da3OG2/pfe7hw0r6X+e1U6aHmlO13ipZ8U+iZLddSwGYFIo6Ga/3uUTkcaXAoF4etCigV5Ii3MDodRruiC0+FcW6Rn7lBvGw2ymV9DdOdwenhBZDu/JtuupfAer5XkhEh0f02iw/y3Iw1Od084R3LQfK2Ot2nvPnEDoIP0ltCg1BjI2h5Qtb49pD8mcNFjLHAcV8Ed18sLOniF1mNBTySQTtvtId8v5vuo2yoA+i0AOjmgbbcB6BYBXQB6BYCDKm4Bo0UYrVYB0GkD4BUBHQDaRQBV6RQBNgDdIsABoFcEuAD0iwDI4dlFgAdAkUu3D0DORb9i7He05ux2prlND2py7AzTcynbzbItyvazLGnIsbNsh7JOllXqyki1+5TNG+ZQtpche5QtU+6XKffLlPtumu2j1HX6WdZB1rWzrEtZJ8u2KJvVbUEqZYkTssT0zv/mK0lfPahIoLj5Ln2DLks07oD6NYQjq7NU8/OBkJkrl5fQJxQv9A+JmIY7IVT9EUd0shAuMsmmDKkDFa1H4oVESwjyXIqujYSe7QgpmdGEAkr150rqnKJ2QXEzoiX13/9HZZhYdG6WcniuwEe65ol6TnVmJcUNte5lJBz8Wci0yrkuD0EYBdlsqoAyw3qv8h/Uc7e0k0A3hNtmNkHj/r3Fnr6+4R+2+sfgpcJdbDhMmlaT1vO07YzXrgWCFIJH9sMvvH4xEKQxPPKfheGnEOu7ZE19+6kwkkiFwfxKCel1Oy3OPkNBU/+dN1UfZCB1CMJn+L96CFOy/FDLZbUQ+E16C6jvFrNkIcOCyya2V4TC7TRzjzYvU2DKsi7Vea9kzgUAK86ghJeeMVwJm2uZaBdCvzahJbo8wJketWTRUpVGGWjKrbBbCcflqVk7PFk5jd1Xz9dsu9W07R6OuOeH4p0itRpiANCZO4c/sAQ7jGUc3YyyW6Ds3aN8sxJe8kXAJY1RUmHLNfOXjzATkwUPc82Gb+su5doqcHVr2JZGjizxdm2l33KNgetZkukI2kpQJniE+dMcktN2OiZIP2o4YGooV3RpB2QYamrBPCktcSDpGCDAKmk/qCNXO0X5iSDLYZa0UG/TdVv69Q9kbjQeoJE4V7zHe3g6RK+bPVr1J27a3M2csryXPKQQ04bvRQx1qrkLGgF8vGxsLCRK8TQPOKmRk0pY1r9e1r/puyBtodkLIcIZVnpdm1Qmh2PbVkXHsMbyCxkMoyKgRXR79XQrZuQxq1djRzLHRknQG8pC6TaGvW9e3qPDV0IWiVxu2/5lrgw0ZPDQXKCP7VUMkZ9VDIyvSgCP8f0SoMP4lVht7POdknw9NVqc7nBHv6Udrm5vO94AT2e4r5L76VguxrSzYwQXdAMs3S21ZhrWyjK4Ye1bBuOFExpkV4CoqUCr9Pm6AANaOtfFPrsBQNACutKrqVpF95VY5R1Vq5hlVGOfEzIqSiJgGSvDIgAt0gCsaHtLdNaRBxsNEFSYDWN9qCoPGIGMoqnfW34hshuUHwz0ZlqKViAHX2jceqVdtNtu4+g4mCVnwu0uxN1hj5hmVo9bY/f5g/snu7J/ItKUzBZ8xtWi8uAAzaZ9m2S/2UGFQOJhXW2AZO14SCdVGaSrxTXTirKhqCsoymKxWbTEHb4O+5WM71jpQlOtEKr5YMeyxsALImoEn/OzwpjpKAFVqjqetUTl4ey4dauC08lWBTS1QxjtgdT7SOKPNxUlwS2HRBdCbraZ9jsIDyNqx2rzL+JSS/xdJsdf+fs0kYPewjHku8Lm1/R/Ak0cgi/spqxD4ATXUMm11qEibyV/6WAXv056rIocJkhAqNUe8XovUoKa43ZG10f31LmY59MQg5xqE7r5nqJdTA15Exkd8dL5IwLogJdvvk/iUroIWR2bymvq2BQDgBn8UizMOU1vE/OMcUx7NQ4tGsNXfL/g/wy+NBqYxL5oj2RfOO2COd7k6vmi1PN2dD0W99UZuNDL9r7AOPGx+wVJE84C5tGWfssQ7A6uGo2dwWXJ4aOSVJfo0d7miqJs18H1plih196O0ODrxv6Y71qW7oKH5PlfkCGsylBnEW6vxv7qmd28r9PdNZbaycnatSW+y7Qt1zOsDiZmRgGgdntLU/jMfM93YaMQS1znlqyjlNcBi1GeaW3tERL9l6SY/kKKEOU/11t/8JNh+2UTSn3Q3DSrhysED7SaGps38714O/oufwMNteZRGA7NvXlYG3f3tJFMBmnX+DXayVtb21uPVOHdStD8q1VZ2i7AIRKol/lEZuZ6ci2r3Iar6WPf9kl/+mc+4wRlaXNW6aq0XvGltmv2kfnGLDnNtmLMT+MId7Qv/ZFtzD+UX+fqNg5lwMgdoPP1v6ntkFy/93IkFLWeAI9E/eL/S/cn/ElFHtVzSr44o9aQRqlR2QUV2glK7qgwDV3NSM5uXao61QhMsnH+hLPJS6jhyNTxW/VEWdndCQEouzYRIOlPTPftjbxd+ju6j2+2nB7olEyTFuPJubxWzppZaaTm6zwevz4WTkTc/zaRn0TQWdD6T7Tn51TIyMumURKZ1dcT4U9CPlG9rf2aYFRPEN2dwh8wkRQlNQNYgSx3fi5AISZY0tgPyRe0F5rgQfiafa1QedCvvjHZxvUdApn0NA/uxcw4hSuZmhJ2ZPF4a238kWJ/2eEESYcTaAPCksMPyWaEaF2VSV1HJiMo/tTttDFB3iXBgtJcVINKOKYEOkkAx1Pdiuo7ff5Cni7p9kTftfkefb3lt1z+/3GhBBJ9jp+tw5fkXpvrtxLvEKU7PMXPiXpuAsHXfb7X4h/pExh9T5TveVxdPksJjYTLu9U3LTmhnTg6PJIL3+vwjzjmfzKh1B7dUOh73RTn8OpwElN+Lz46pLtjj/12n788u0TFjsM/7NFPEPt9hz8HcXxPorNUQD9BrEtQsFRk+26KlhS2eDKHvcOXNZQl3DPV8H6HRFBacdCIPXWRbZJta5pKU+rdB8dxJZWCaHQqjdKgpttQhLxUX+766l0G1/cp+ep1AX99cqTgHZt/hDV/PlWZtsrQrzqrbIdjjTq5pkaqvKPzCbKrc7ptBGhpQFbdg3QTleryNziXc67Qun3+ykHC69r8lasSDn/VUgmXv/JUosVftVXC4686KtHmr7oq0eGveirR5a/6KtEDQVuliLSi3bORclXK4eqHoHUj6D2QzmuxCdBRvQJ9ZyjdFJIj9fizRUbDaVEuK3Q8/i6+kFmpo7J5sUsj5nXpHHyonLZ7R3KK3/RM1Oid0MiVP7tww+NyNBnTUTWa1Cgkp/L2OAvo/Qd778LWxq39C38VZ3bfxrMRxjaXEJuBl3BJyQ0akqbdHJ4+M+PBeGMwwYaQpnz38/tpaTTSeDCk3f9zf9rgkbR0X1qSltYlNYdFE6wuJCmyh3p5H5z4ROEq4bLnrxfPl5ajIxkxtOFIhoZfgmTFV9OmyhdzaL0Bs8c/aalb/CERPSlL7oO5a4SOysSzGzcKN+2gO0kRQb1KRI1slHhpR9Qk7qK+JugoiV2psubDlZmCSGa9+v0I1i9R7Jyu7MbrGbp1i5OQPQTl1vXBg0qUH2v6MizFi0dGJFwkHLxmqCvxetSsrETaWlUJ46sqkQTOkK7kokoDxb6zkY1WraICNrCkD+9Jb0k6CvLS4wZawed2MTqITaYUI7ZNKBBJ/d64bw44U1FWqA1TgmoOvRlhzMhvGN7e/oxaa9CpE8t0XdtVqsorGY3LqTw/ypvsfN3JGlbmnVRQhaX1nDlt2trUi+S+o/rChXnfgotfnHd+0pGqV30OKQF/YpziEfuntG6SQv0CaHx8YuCyX+evSVH+2eMNxE34DQktJKRdidvlIywyz0V5ODQpLyVlX1IQRgoWAF8idcKbNDpjTgWYkH+iz0WQzQEIs8jz4/2kbFlh9IXt+I4/zB9anmNsRbzzixvjQmXfPnHz4k+Uw+oE557nIMv3NqJrK7lTyzwuTi+an/zbnVzb5JLYFu5LgnmIaDKEvMpuyOBcFJu55PajmFhEfYBP2tiGDvSxrJDqtE3QL+MvyBncVTvSSIUV2FQv+Y8fP/FfHM231J56HX2jBqsYqFSfTjqg3Sdx50lT7em/45gxCf/eISo6CrYtLz7rBSrYKvjyjQbC2ji8fG5ZsGP1Rr0ybXkdqzfyWQicvqUk6p4+jrL1+wb0oAz3c2y17N5PS/i/x+y/N3PfPUT6h9g+Ir2aBn8F8Fc5+EeCanOZ3a8gXLSisoscu43rfAgbv9GWTKh2TQ62uWsGuGsO4rvdTygC1KD7a4ynmJYU9rYeiLFk9PMCK+1cvOTqB5DazbfmHcaq2VhtLAWueNIno915CXwxl5FWE/eahXQu+P8C3mbRpd/iOrYKE2CDm2svNcu5/tOPEDTZqP/0Jx7e0fhX9WDz7Yffxdyrtgp7mJ6iJQGsQ2GhSI5WuPFHXLehFYgQfUVYJuUHkV/Im/dbbiDgBzAo8IXk2NHqb6okqrBZOX7x9UPcp2GLeqANhmKc07XE1aKniRHsUqfJhCYbEkhYNi4Aj77x27FSiXXm2JBMgBm7uuu7Dcwjmr6P/xtbe29/h/Fs2trdvIkHQ+b9MDKtwZBxYGbCBJ4yrthVapOnxBY9UH4jjRL1nDMiSPgA+KPAWCpFBR4EsmoG7ejhEkF7GoIV3Ko2dhsDvModHP6u4wqsNSV4Y5KotDQm92e0FrqitJGoJCFuhR3zW0zmrcYt4nYLy7DxGulm0zx6aLKCfxLNX2Yw9xUPc2vjiGbsDt3GwgkU/bXaJJPD8ZNqO6nrMiUbeD7rBcfdZc6pqCfKOO0d3KyUi2VuOBd1S948YAIz7F9O9mxNElcGdmqEPJhTo0DLZVn7sutfX8V+y/85Y/I4pL/WgwDzliaK5KOlyUcvqbuC20mB7ydJPVMxrKNo214ZBSZzeZRMpcVn3DDbK1QzF/+ZNKDeFDfnVnZg6bDRl5Q/IJ+zrzcwzLnqJ3j+Sg0iaNNBidpXp4kaJNjAHIUE2xjPoFHSmDkQaOhS8xFgua2yh+CE1Hv1z5w2Vv8wlK19NlhF5ZUIxkrvT7WVVSdXVFJGVpZfmWCLnkqRUqVIKudVrzcQKhZcnWyL//FHsIz7o9ZioDEXbDK76fS1wnZo1JmO+nhw5V+TcZ20KYucGMploj2It/hd348SBxuhWh90u+JLCdeFNzyLi8OS7jb+mE/H71Otfjg6mdRwQgu7wPLavHYH0P1pkBjfaXXGjgETdnNILz/T52nFgueL8UR7jxmL15Zu4TUAHUXS1TVU8+rv3u6FXXpGji+h7JqSHJqqdQV9Gv47uR46zbFxU1XYFL9NFcWFPkRF4eE97d17t/chtDYzuoGjdsSB5/LGxv0EZ6213TjMb+9NWf3RGUBUnwyVU2xqFaTe7jBdzN3aYP2j6CyuLQzWg+7/zF24nkT/To6+cyM+ltNDkKNgEFFPb9YOOzs1Hx2AgSn/KMjG/qGGEF9iulW6M4HxRFar22N+GIQKt5tlRaM0p9INcWTBHHPYvFXtYHjd72e9+cFFoBDcpxWTCZDja3B85GWhCce56KAufQ/UkNpWAd0a6IhNjTLwbFBHrVQAOm38BFzjybKbICAmSHXQEAROV1JMB21gNbR9W0ojW5sURBpxe0GM6aQ065vmTWFxcIcqZQfqPKmn0qSd3kBXbdtzQck8yXRo/JNuB2qU1C+E8oK/fXmNbpvzOBjCcd8Z84NhPOErx8uPe9vQAnzDHosF3RCFU5sxySW5AlpZu0xwir3K9Ga1BW71mI0xpx59Idu86FWeFPQD1ecGmCo3gzHiiynWR5w6yq/FGOobxGnm5WbvHH8NQ7WmfffUN7fehoFaKhfExKoitrSzxFIZW7oMSFmH+WA7rmbe7qAvN8Ecu7lnDDZzPNm/IGz8IiZj5PYOlco7fYPLh5hqyjjtRA6GbPiTXCSE4f9UGjGpQ+Or/eR7j+saI/TmuT978xScGUYDzXpozYC3mPhmMJ6QwhoXmOqMmcmyeBLVH85tcglKtSGIw9ztv5S7Faoecy8e53JOy97Fquo4A+yT08ISTwtFASvRfTmqK+cd6uEcxpixyYPD8nfVwhzf266wO0QX+6BkqubA13gTwdI+s4kl91FI+2zT4JJmPs+MhJ5NQCMQ5srpMw7LuMY1E+QLdJOLGjyPDKiF5ml62Hcs17RDIY45QE4c78yczT7vciObCZAPidCYxwLz8JC7zTUOLAL1jJiUn0+js4ZhQ8tN4Ee6A1gvR3JAjqZLCg61X1M/bvGqZ0PHR6WSjnmeeSpemo0P8w+nWa0nMDWxW5Znp/fUCVJhDNTfFoyF0LnA+HcOVIsd2Rsvw9kq0cGgjZ1cxtWYWMskJQgliz64H4xwlPxqgYM5L94wUOcC48UV9LW5VgWxEYwDseNJT6Pc80NVlHiYjUm2bWnGX6wpzaaWSxpLQm0iKYHPYJl9g9uoA1VIfGYAziZCoR0U7dqIZuI2h0NMBAcQin5Nmnu6qEMKsaGtGZJR1Qo7OgUfikvHsgOpj4QnDVk5slhMlEFdu2bCLvaGtnoy/PPPJz0dWFSfk9CngeV7l8VpP83voCxtc0yujdlNHLZm5ZCJJrXDQutRimoohfAWItGCTjYhj6QcF8lKjeZTAWEtXi9b0M0hHGeP/WJmNgbukXCCgMGDEuJGxZhuEfBiYsYynwN6ZKyZpED15VwlQ3mVhPZSicqr2UCNVJ3j9nm+1s+5l+fgXqKM/tH5ccOjZOgCI7Ect66vRK4iOIX5+87CwoCnnAYsqix8STL8GUOsYaG1EJ/DyTIZtDEC1YxbU6bbogorvw3H8LHu1PBx2RwDwvabdmW08Q3VQ8d7a1eWb9tDz68SPFY3pHE8t8qUOmf4mkyOxnYB3s6sGcX8QtgJQlSjntqDvmTi3MFK8BB0LnzK5dBPbOHoA0/lpBS67HrOjyq+QsN+IqXs43aiiWcaD7PcKC8Q5etFukVzkGa99aMxTpu3MYNz9M+BVT9J8q7I9WPMd47qS4mf6f31RU1s6ZgcYq/m6vpCYt0s6NQ1UFc/HSwp7PE0kD0hEaqlPNpHUJlo1dJsODSOxaKmDlGiREKujy36LjMemOev4t4Awjir8NYVzKGOQHsz+/EiGV92gznT3Za0QzuMI3UDvxSmWeGn1VCk2jm2oVS7T6YDqxqfDunsLskQeZ7BSFCcH1gbARufzQXaH+Rpe93c1R0vkIjEVkD+Li/1Xe9crjWR6y0e3A9PYxCD3Z+33wmVULWxjqnR+Gxt/xBkolkNB8qgkXsi7rMJOuM2N9efvs+1zAUzyF3FB13dpm04fhfv7GaL4OXRfNayOD3FJidQIqA0SAU6f3+yG95YGcfoNgOCRWrQKVX34itd1ZMQ2mO5WP6XZDiKFV/2Yw1hj2uOv/ry1XX7wm40Bv3CwhD8fuM+3nkDr1NpNCvdmI5PG59w6nwzuDjD/XAih7M3NJitDRskIR4jE6P5l/z5J0L8CZrNef9/YkTj7eaWMQgvCqyQC5ibY6stluEAoYvYCD5hCxkCMujoz57GbD3+J3GaCfYxKxHQjBIbme+CLTIGGLE3/ni5IUmYpevLoGMDFLQQ89cCKuQK4+KEotPYT+32c3uH5xxhL81WKuGjc7Ax+4bvf9hc2Nzilrg0C+jWAK3MLmmbQO32A0URihySfJMrEgNvyC4L2u5Ab+gzgSUIGDd7m0XHeTPviw0+HgnNdYHFOUSfBur1reFBfLAbAqJqscQFyoUAegMziDM/43+9r38a7A6Is5BijJMBtqBBVvAQbYn69Kc7d5Mc+RmrT4rH0pdPMF6sw/bsMY6K7JCnu0TnnSKwSva28zMiqPWoZmr+gmpn5POqnuOF73BvWzM+xhvjjkdVQz0IYu/LVKRL6ZGIX2LZ6m4eFdROBXtbbw9qeV0Iv3+75YWZDkLqRQs7D8W9NxGmiXP108b78/SyIgnO6kIzbkz1NlNekvTKIGXL6W2weT0B8SaD+XqMHB7Z63DSmLR3UCCDLmLv8hB7felCRDAeAZwdRUYHL3tLQhDcYzrOo2SrFcdzB9jWdlhHZQcG91TAKSCFZbS5Ar5EsTjv8lLhFNCX2NpCDQz6s0CVwecCJAVzLAeCsSC6BLPlk7qkDXMzBbFHfX1UQGBzN2Ws9FsK8lO8jvf05ljjA7wZWB6VXYZT1eunfavB9YRbRDWUbA/W4lrkoNym+t5z9/Sh+y8fc+WMG0XCgaxfhTW0vsbW24MLBo3rZzOaOtlb87n9iPPDXAYB8LzkzPz7EXmTEudMlkSU5mNozxWqZlGei7u/EfyI89gF5JnN7ThHPhwbHJxccRB4KAjMWEuZ0ButP7cppNaI8MPisN7WTM9MN/ZgUZ1czap4a4C5KpG7YFU8qru8WWG7eQIkOsj0VsG6M95cy/MVTP08RngMoSrCVaVx4sy1QwUhWKLuiNlVPExsscXQsZR85J4q3EyqyjeXFRHZrSpaliwpgs3uoYdHF1YKnpBODNQ9mbzyHNTSSFmRoBxwD/F8GlEFodzWVZOKuzs5UeIDMoIvGmc357z9a0mdWy6ieUT/FOdCS+1QBBEUbj8wPhYqiV5lY1qttZc4MQI1X2rSElM+CbD6gLKLIih0pVquWNAh5QYqnXfC3LvFm6DTCRjJjya/YPQrdfyh8l0SSELWJl1V3OqN5EJH9IZZP8bBJ2xoN8cipxJH9WY1AJi8q0yxZeXx1nNKc1ZyyHZLsmGDGS5YCY5E6LEcUZ/jZ6unP+97SqfRCXK1ulf1AB6lA+U6Id5MrFHJQVx/bCPCbuyzRfPRE8anHT6A+YzBaMZoEHqKAxrdN3Ucs7jE/vTCpsYZ46OJf0WduiSYW8mdhlfNMKVyzuvBzOHCSKsX4PpxaB/PwgS8d0AsjEibZiTlNswsl43YSpwZf5GUJeM2yDbpfCjzOe32GVAkUmygQvqRhoXZOh5AKYSgmzJuBCjPqWXLr+UJavlgCglUIM0teLLp6HrYq13g8pFkLFTVEpNE/oVNsM4nUIHmZozlsbau3caGdOQkonCzR2S2ONzszFUicVRsc7r+VYvDiZDWRwipQKaztVLIdL4VE8RvRji6bychEk7TXIJlJylJ0G4nFWKMmZGqWZFnMlJlZERRtDNjBK53GBtz9ezw9RBIvns1+iO72Jgk9OMxf4IOwnCHbkWwqwP4hjwtxpAgu5Xpwl1R8X8pi2vau33hrV5E2HcHQwrCaJcIp6MhSopMlGQV//p0118zShduvnpomGjW9b/PVftquGochi2KIMsoyDcHgYkxtzxMayzsssBM4G55Al8msqUhIc0dPUZNRZ97//kxXJtc4V+vpoGi1SajLhlj/xkIU+dVyyv1uc6QmMGQvzsct7WF5P5crZbJRoI7G3LFQIrISBmWKQ6LmclBwdfCGGZzc3oIIVlND5i8jqzCq2VDt/EQM3w1mHAbOI3atD9YmURbCjwlYSCITrfg3GvU0GfqvCmLQJsUe8hZpFluouoyASdkbBgcpXZfaiQyEQMcuMAZRGnSd7MldrTzoq5g9RDqAl3B0nl+d5Yvb/OwxnhGrAt+4uJgd4AkpPmnp27t+SvkUzzRcQbKvHJ5aywnYnvKAYIM3NRvX4HbHXoFx0ilgcKhDxMWtOd72r6l6qEDNvUuNEhfLpUBr9RTTLRTirBInQh5kCwiWLI3tKwCOpWYPJRbeEHBLS+wPqcrshCN7vr6IKs3uMCsb966yKh/pvr5uu1ue3K0P2nB9MZuUs+jKvcxooQhCx/tbqj1FZSY3yc3Jws7X2MULqTh54Io9FgJtoV2Nz9NGxHfo+Cf93G5AuWnMVziMDGuHGX3cHgcTqQhNxDWXew41/fF9rOV1Y5lhmOxHTYl9nkpVtWEXXmnvqCQdifYv1A1K1CGPIg5OQnUiqS4uifI8wp5Wkgh7zlQzA0n0jqTPATUaKFVLYH7e7BZOzh8Hahl+d7b2dmprTbbjdYty2ZcWwCeScCDuFOvyxV92jnQ9Xx4vXcw/35rSdeyBT7Y/ObOIauRq50jwrw3fUr6OUo6P+fSLNz5u2881GGIV/CfzYGa2bkhZ6D2jH6QgYmq+gVfPOeG18CEPxngyzy/vGXNJGElWt429MbsH0JXWqQjLNGWdmlKwwEqntQcqS2cTbBxDIe1a7HgYZ+SclNeN1iFDZbFf4GxiEW3d3Aovx5r202MS4kq09xP5xUii2YlQ2tEYVVkjc1rzB/WfqrPX9DqPR3haJ6R/TIiOecBS668LvXFefBFfOURcLJ1C/qdkn5XnzNIO+J61iA7NpzTcg+vkqPqlhxL+mum71ykV18vvbSaUJxagHd/aeW7RA7YN1mgnn5BkyTwQiso8rU0NQwIxS4VZ5PStOJg3lnUk5q31vDc+ACGRnPblMzyN1B0Rcgrt2mHsJdrZfTiRzbWm/1AZthgWeJjGWa+H8FfUZ/nNR6R3mVf8jKCgo2OWBOpOa4dDW6o7/OC+t45l/99Ib2fCtLLMM/zzsKZreBzD69fe794Y9RWnBV7YBZ5+O3npJ6AmcdD+v0ktHxvODM1U3BrFkZHqa3cVv2+uHdDbQ8grWW51KkE3yvyDcER2FpYWk9DfrXV4pp8tezXkqTiD9qwqB/ilvA3RMiWwtMQ4BHV1gDLUwCLhSeN7MHVO3PtZscuOkboSlvqmGJCtCJh6xDC51YwbrEU9wxxz0pxNobVrMqnM8JUjfsm+6psldVSvDWmuDG8dAr4KTAel0z5HlyaWEjNy9eLvf1D01kNA3ynu8rRlYROv45BMIZvscqvvuqot+ASxJspgbYzXiY9QNMe1z+lOgT3gNdHvW9/SKzgT9fsyt18E+crMiVkiogXX2tsYK1+sH/4Qc4kYXevR3UDbouuSL/6WJTMVBbzfvNtl+8up1ejC6jU13TEVgxxEfnc2d7HP379okH5R//bf9vdpQGO7s7OgQ7Ij/zd0jkWpXT5+1Ln0t/b2+/5b77dfcHg7ov57b23OnoRge02v5a6bw7wI3/b8rMoP0ten35Bn0xn8q4dojT8OehyNrvb+PgX/lFD/WqA7YGzRPUPXemHw/2D7vvRF6h81FKAj7vvde59nXrIgGmgV+snnjyetzquOPTW6Cr7cYJrWtattWvb16OaxZRAwfb2DODD0RCvfC704gzondvJFdDRz7A0I8PP13HPh15+RPHnIxxcSrWszO5xZZ5nsztenWn13kyDZz4kzq7beGmZJ0zNzYNtD0gtgSLHnbpIugUj2tdg02Teusv/L2F/QAchSrqar9MWZal4LqqU+vnDSv38JP5zSbOpfhDrpoNi9WPiPYhAPMlZZMloNNEymJTySbEhFhTOUcLJ8gQUbGPlzs0Un+hZgAZ1jdgOk7C3TXNohRxRrh5hDrC/JvVvVtwfk9zL8ByGd39+KGi2XEPagxLIV4x0gsooDiDafKlAJKVruJlCZYulSMQ7HVaOMkdnRO+KFbRepPNdDY7Ql9W90zNhO/MCkckI4yO9YRo75LU789sdYL33rtOJfmwJmMqu2u5k93YnK3Vnc0yG6yTuMwmK2XjblxsxkXFDSx5pCcsX2e77j3xx/w33Rt5tglInOIt++3+BQQXcWmdMcuVUnLIJw4wGlinMFHQKab4ZRZksBGvwD/EyDO9nTjD9X7igdYKPH3D5tFNi7yGiS9jwdmEcVdJoKg76hMpiOei6xLA0josFrLlcl77mugQyYKpqwi/juj9AYOtCeguGsz5BC74h38f5qAm4CYQqeBvfDs7h7H08ormqmnbnTlxGvBZxPGQElvvbn/4IFN8EQDM+sNytg48SPJ41Iv5JxA5LOcEfCYmjts/1MONozPUrBiF4AS597U2cyBJmiIGZy9hi+bvqRXsIg9IdO/boZEw6Ovm60GourS4/Wwk5Ei/IlcZ6rbHUEQr5hePBmF0dcaw+wKhT5yNjpSsMH3tLKJUlBPGCiUNAGJSWzBrTqaOcDGt1mo91/nmPiRzaYuQP0XzE13Qxj8BD0hJLU8oUhOogPhXZyE96pCEzBl68z4+uL3paO1xjo24SwexcmMlwh4o3vGVF99nkjuiT61WZK/6vOL94ISkRSJv4G69G1niezqn+loWKSxJzkXjzTVTwM5f75wVF0uzb2quExmGKRle8xfDlTHfxc6J+SFSc0pBLkqo0pUEtm3WTd5EkjVrG8gjAuz8kgEUtfK7Gz1dvDHppxe32h+RoHrpc3wS3IKZ6PhhregJDJwqOiKDNxDsA+9ahNn8eUO+zeHg+7ogBnM9J5CVmad19uDtJq04+ckGW40mrJeeTJNUF/QS9UrAPzIj76t1Oehi70FwQu403RIM4xNdmor+6bIzDEujbxqg+B3B+vmtHoygt6isGpJcb2mhPYzDWv3WbQIEeJxQdFd/wZeomHGMm0T42tzw4p157bFPi9B74gQdf6K3r0ZQB6CPFycECOO5PoFWTpFahmkw/JYeq0gvOTK6f6AlTB6nE6SOTD+WmeHjFGiK7Tx5UU3MsK/h8Ku1art4PSW4Z6QeuFPaKxuNOtQ9/HwE3qLzvxxE6+IEE6agJqVXz2cLoZ9E1MGGij2ivs6sE5/MxMx0OenSTQZYg4X/YH2t91uCJHvVTvm7qxEYuYtjqiK33NIXiTb/QuWUcFgmtGZQXD6YR8tpUSpsrRNoojdTVyxpds923mBSgBbuNl0d5BJqABn6em6PR4zzS+rtuN0NT/OZ1bwDqrks/i6pgF8ONs7lA93IwxsUG0PpY95nRrdoVoYPO2Vz981wgoXFgJJZYgZ9R2QUy3+rGD/NJOeQFnzTPPItdiv5i6DSHk+Vjt3qXaBWAjXwog/wFIVBBSiWFbFOQjgcXw/wUq2bKrRKBUyPd9qQ/VUNAKXiqZpTKvK84KQj5nz7EVu0aT3yLTXw7b3VUxUTwy/xt53TQ62UXxbNbBrYtubH8MtzX2XWQb0tIh0d7d5eibZWD7D0LyitvbDUPR/0+TmfSIruaA1MILahedfqggl3xvtTR3LqsmPQJ85cGL0RHsH7wZPaP2/byizYfzeRzS97aFmLbw7I6yq0pajeDW5cIC67LjY/qq4mo8Of8YgOH+cN1wa9fpmqa8dwSCYE0HznNSm43lWdW6t9piaHL+ovkM52s6StFi3NidsTDWa99bciU4cP2EXVpyYSJPGWkEQtqmbiz6CambE5RghXQUZ+tiRZuFVZq7PSJU07bAH/Dw6IZi5oRlLGuVgoZ2CC3Xncn1vLONj5HyWQU18cxhA8xWXOzDW0YmqzpjgY/BXe+nskx60yKOhOhUj5OxqHnYxlUL6yT9A2PtaHoIUgbun4F5yvDsDhKJaJ0AKsi0sgYJqpuuft9Vmeqj/npzLckdlvHUm5nh0eAAuJO/MrtNl74p7Dh7Ck+RzKl/xZXlZEddBQFCwuva0M8cgx5VcllS2gENtIdSEYUGxHCEl1gP6agwNXtotZ0jWKXVgc102Ujz7vuEeC1BVPDAms7vaot8DXGijRwMKVBGbcor2znxV9LlUZFTWFXbz3HsqL+Sk9AGUmrsKCkpLnAa2lAiwywBZ26K4u57XsFR1Rctz2JLjDUYUNTnIYRdbCALffwYFEnFdRJC9RJQ+8UTmuqsf5qrpWXpeX+f4nrU0sRJU7FRdMrzZOEZFNHtFSmeQ+i6gpJX/P2aYLQGa7VBeDHmkkL8aR+mcq6eR/L72f/2H+lkXEP9nE+ojs6kQKye43tjSdUXUcn/xMawa5e7qMVgTd0e5rKCsz5Js7GKaXaSBr2Gn26Royi143c9CQfmZzgRrvTUgQ7S3BNW3GT0G2T0ArVcnVKO2RmOl5cXC/SddxJjBwnMb/pSHGS8ouOFFssahxv4AjeaerIhKAJQeknXV2n+POicTEy5glx6H6vzYlae5LXqVreWQylizeAvtc6pS7MPaQz/E1bIWiucTIL6Q0rPOjLgT5kMO5Y3aRoR45OF3U41AEtAAX/6cPbN6AOrh/cdEoixeTTBSSNyjY0KK54mTb+iB80cEbIL/49hkHnSh4E5kLe7C6uJ10+MGNCUPreWKxM5ORpTvHQ5dKlQAzyBjWcMhKd54+SKPHGUxITQoJB0tcciHk5ymyPev3s6gVWcPBU09unNVniAQvTklFBfjQ61K7ltIyqyJo6II5p5SA3wxrjCI0Ua4zZT7AnpqAnsrFSvDS4/pRaBWFgzkJPw255/lpr6UY85wghObYTqy76Zp6m5+Er56FYI1Fq3km7XCVR7xlP8XLWywkqUvZsStxzoseMHg7OB5Ndni3e4zjupCZMvRi9pTnt96OJmzi5+vptSFpoOFUNripcJ+r54Iztg/mrw/13DbEvApX/+mv0JY0xcCSLd3/Qy0HVeu4CqbGsMBCyMB0jwFdYtE13RFjIt3wYHPLSrRoMTUy65cFg9B6jqwdDN6x7z2BomkP7Ds8VC9Eckt4znrmXAqW1J/jtRK860bL5HMbaAHvi7RwfYg4RpYdb1LvYqHsO+DjOcvbfxbJvBcitrKpGKGUpZLRxGzOyt4OwQ0O9oD/IGCu25zBWdB2L3xAfK/lHu5V/BWkzKL7RAnzi30b9sv6MjPxLkAf9yduT/m4thg37Poa6LGCw8vzyNnCgg9byCmP8PMEq4lBdiRRvFucSHsFbLff8rVLnSBU0kD0xJy1KQ6CzjvmbFMRBxV5UU6VUJaf0/uwzNYCsTaooRqAwZwbuprTr5HPvIjCKfVbtPTIJnjx/pUXUVJWFYirBXsi2XRZJf1FFZWb3KUpEvt0T6reD/Zgxiad17nmMSNtL0l2cgTrA+Xi2rnzUms7ilsJz4gy1fQDmgjVxrqyPuJWHRzz+WyO+zaHCMRPVB0ra6xw+0QA/1sm5Ywf5YXtf3bhs8StKlyyhLumRaDFPON1LnxkI8suaIW77qzaijQgOCsUfvdzFYLjszydR31XrmG6pqhkzW7qQLX0TkcstlcnF4vsTMfPFu95HR/YrUel99UzZ23qoGjPL1XaD42p9EB6sZvatdvDxg60kA0kjktxby67giZy377E1/FJgBJlKsmq71Uu4urqZq/hldUmVbZpZ0E/E1EdfOIrXG8zU1ddcfdc82xyRboMcNo87BhdzIs4lWnVDmVFxeeVW5N6rXrZ76Yw3nldpJNYT9Okn1wvtyn2wHPtyOEqcoDZflBqFoqwnJmDFElV3e3MbF2TKovQ1rGb54KUIR1SclgCAD+hCI9uCE5ndXg5YEs7GQ23DsXtRlFltsfX1VO826vu5d1J2k1pgoh5qdK206tdHT9+rUFBWtSxXCitpf735no1CpY9CjXYFasRVNgu0xbAUxr+QTNsF94O0Z9P/27iEHW/1YbP1vLBqn7abbqDlBtpuYLEIPAHjojVqOyyPZ+svc01SJA0uadkgsDwRd2DfeQM705YL/RDFrgGGiNW28lLzl8i4sHlgoxw7BTauZNTAxjva8DbOU4jvrmjTpLFvyOG+vgqr1G/qn38+MEBOHyJOj+z3bjc4UTba7wmnzSThXQehQmLV7VyREBq4RQvnd7hIsuhVPUnEsX1NhzyV3P3HrtKlmi1papla6f1LyzmeWq7QfdJ2sF6MRp4+Qumx/qCiPfdm5TbxFbO0HOvMspQDOuhQvxprXLTIo9ombK1SB2q5iBI7PWpVx2DtZiii1dTG5e6rmcIfaVYYsWY6psaWiI5gZHo2PVCLzWZR/nQi9mHaKpQyIEj7KT7LxCqVMaWMFksJTJVKxOoyE1o6gYJx8yNqxLTaRcSV6dCSRNEqeaAkYE2PQ7UlnN1fSlZpqyZsYTG07AiTUH6pfza6NbtkIjP2qJ2reJxNly2JNZ3Kwpb8OsrJy6GffvDrDvrKlnkzYxNk3LauxxMMtOCQfujTvlw0sxTJspmKLUCTClTZgfMf394bplH9nMp6cRNKy6WfWTHJ1BmH+7e3nwsq7CO62ZaWuUpiSNo3zSsHDk7me7HT9o+bhSRBfwNs92d5F6RY/SBPotqjcjPT2XQPQhr5D7SyIcZeduotVeoupDWqPSnt1MFrVy0sBXr2wGzqdmPa2NZ6HAVaBxpyVtktJpaZKBBtZQlqojHuzfoGH+60H0QvupYz4eFCuHZlzoRWzMB5+xTHWp0WeADei4bNzzeMccYglMNv5T0Al5uKp1N5zG0vNVkUHw1zjX7n8bVcvbAa0Ta+6X7afP9u793LDp91ax8oIEENKfy51PKOsSiiZ8bsq0GihpQb0G9SS2E2WhVo+T5VdOTzPq27SiGz8cpIMWBqwkNAWofMwH7GzeTkC/S3FjwWw0LuWkyL8sJku2JRH9LyCgm2uLmCmslZj8sst7b9Rmxk6t/6G814MRPi29VI+VS0sk4Sik80obUohj/YXCfyiY5E05zYdGN2dzr2skXy5THbPwqEiJ795sh0c3QnPEEs9V4MRmPtEjV4kMYSDB1yMgpaE/jh3AWsLQKGjaggwZIezm+A/fpJ9YPHbQ42o94eD8wVQ+uvPlC7ztDzc9jSQIFhiPr97BIIYXPQnSr0O7Xo9OxsORRzeNkFXN4PZpbgAE4VoneixxRiAUuFiMzkPjhUb+IHijjcf2OzOZtq8Njd12u4Pic8puEWsNRw7po5AXzxlct1djnT8LqodHFxZj4KNiejMSR2f76GWo3Js/TIPPKRmVzLj8wlDzE0J2K7e4lNWBubdiJaJmKHhvvzQ4ZP9hbVL2nY/eSRZYZIOCBm8zsKIlqzKSLcG6gLXbxZEe5Vpsjy/nCHI5nDurgQbkzH2TLA7MxNFKE7a6S0afsZ0s3NY6XZXPfjhLv4HMz52DxzN+13dfsLyLb9Ljeb0XHEZlrCWWPAI4Y2hnSHgQqSw+jSUmaUvzBtlMVkG2VJCMPTCMpYh7wyeBifZNpnRTFH/PRWcc0ff0cFT+6jaxhRs7FZl3niGhhnOMgzuMbDu4QwqVc6lU/+tgAHrX6xu72d1//Nz4/13yj+/FvjbVLqEeL2GedhUIHmSD6Q5DJOeTA/ezDEMi/5PZOJ8E6tJ6nEtZ24vo6rxk+vwIHJ3HIyX+i4EjJ6uUYWwsdzD+hSgHzMLwN9FqDyWvCBxgLk4b0H8AcBqigUEzclsbQePJAXFsSsJC91S1KrFqMHd5JEM+icegL8jQhFkQoBtEfKsjGz3xpxElXChOpx59iHhF6KNTqeFrb4nG5cpXTjWXmr3DGrydwZO45sDnkjPksch/AnRazxXbJUjtpoR+WYem/FmML/kN2a2wGlMnbwVluylI/bx69pqH6jPMy/Uv3MWzFIKPaKJ2jj+CEfpaHOgB7XudCV7jcieOGovKHwwcSv3rura0NeF1nWIzmqbshLOcnXuPgte0uaM/vE78/bDxXz5vdi5vTJ3CGb6AVQEoRWRisK8TtsBTeZbxBbgzULvy/0FbYTZPgbU6e+0/1polLPHeQj/J+Kc0f1P9X/6Xc7VOLLYZrU28r1Jw5scBHiVy2K15TtFGLCHmj1koBGJDHx2kHgHBHPfLGcuDeFbQ/Shmr8mkmY/pMrcXxNPQg4/rMLcSbZ/P4V+DH9S2NSr2Z9qEQeIBueTT7WrTdPyrsIZ2SjnhS39ojHDmTaoXp0mhXHCiQcMMFekxHxMyOYqLXc9ig1gtj3jN0FB4z6zfa+wa0Kfau8IyOtzzT/mI3YAWPdYwPiLhhXOiggepRH697Z6EtG+4cBRn9mtNn+2SNEjRllNnwE/zBBXEgR2jShfENH1AtGTW/hETd4Qw2SEl/YC5u9+5H3WgW4UnHc1HWhvHOYNkSMpICmO6ec6ooZZbQ7n/BHqXlKS+vx9LQ2K+e0ed+EsujydLabbX1EbzcX8UtBivLkMld5ahlZnlhGVkwrI71JZYSd0pb0D+du9M9OreWvPYlsojfTLKRqnhn/mFmu+xzi8PEzzgNeufDm2htr1Lc89W/iMMwdz4fKE19jPYaE0MpaXEo+rDpBEHAY1xPcZKoOiTZTwkzj0rHj/B6iB9LQU4lP9pJeSUOQhK9eRfkoPVJRrKr5JNHvXZ+rYUb7L3Cm0J3I2z7xd6q0N5PDrESQ2GE0O3dfzZs9CvQSqW1tL2z/sl0TJqjE8QnHj6B9ivneFQSC/fjilU7ij49sJVBwNaxqtGHR3IPxGMe2pNE9+dneJQO7VIK1jbrzsERkhJiwT1McxI+Uz7Uw/CEqK+lG2nm6Zl6Va7fnw4txlHuBEldP4wZix6P4sjG66sMV1AJme2mhuboQSya+BK5/b461BVPl+lqFAfy/3o41x7HUPaX0zicnUoS4toKl+oWW/DZuxz32ZSa8uMLC39wVVnsBxzjBb121ICm66LRlfc2x6f9XG2bLqGmRS9fp6Lr1CoC11oEUuFYgy+HX7SerR6hizNcDVy/bOel5+HRZOJTKZU0Wxdicys31ix4icfWJOZKH3yqWMuQYaYmEq1kXWryCIvP9D0Mtg//tZqvYmLh2/HURR22BNlA2V9uuNIFuCnSr2dU0X/Rx2iFCyxJiWtglmTBB8n2Q3iolr8cl6WUjqlec32UtYrRijhCpVqp1wXpVl7TgXU7izMCQXDcCV1cp61UIuD3AG1OVXC/1INcr7FqBPpiWGKWDGOXd48lfnfRKAkUnJMeOhYEUQaObRD2aiqui2S9dcwmpK+WGDXZv31bY74nk2mnPky7vVw0Qzte+IkZVnDVGPp2EnYpxYkxi/0QixyxkOtYWU5Uo0gmn0FDSzVZTNWFctkXTTMaEW3RF75kRI8Ads5QhmipS8Y1gBS+8Vz0DGaj2WmXjZEQHPVHV+XeP6qNn/FuM71dj33W1uxM3Nhv/pnLQsKd0hqYKxF2gKE8skOex88GlMUM9O/qyCgsBOBrHvOtZHy5IEStRxgwD+c3WsHR3sb2edTMo5HzrjWpJlJ+vVBwV3AixrdOgLAuW3tUWDoZ1LdUUdr+c0mJjsh5bPKO2BzqrNTn0rNXjXInjNvfUcKdHoSujkESDXgMLfgK8ZaNL9hhCY0WLxi/Y9Exr1kvkaZTQguCNtkW04Xx3gqDbPzqF4mCdP8grzyJnkgG+9Dfyjxz06Eyg+SUZCGEMf+TxRzbuWJcU3hVtj5Kof5efRJKjQOsRNE4n5wEKRhi0bHQh4RDBAJUEQefb3V3XB0ZtOpn/vITIh1NGes6PZbNtVaXSvITIh7Ol+Q29k7FvqlNtUuKvmZMomZIwmDzTiMRnNVS9SLs/P48Wm1Mzv4km3Qgq61jOxbdNY+/7BImvdOKrPPHoBuknSMfcZE+iz3/+efMkGtIwg7bGeQoncQq16cqphZ2pYXTDmIDn8TNtONX4ZboJYU8heK/PkaztOnqqtfrrAhssiG7vjUTc2IhXc4BDkTDG8PQBwwpGUcraVhCjAQq/N+aXhamnc9ezjC2ErIzmD4zdZP2zi0Vsiq8HzK+09YPQQNcfb0j2lTEeq2prA8SYUT56Bac7gz84WMnXCY0QD3zzsmHXgRwOLjD8gTHQ0aN68iVJZX8UzJ1b++pwOdnKxwdJA61yZaw2EO5piURyuDDqGCz+5VCFhfkFO43aDEMM6wWl9uQmCy6BhnRE1O0Dbah+/u+e1Q2i5jCCVFrHt049K1JvkHomqfi+Aw0+Qe8saffYjvcQ+bwHKtjeebPzYQfT8535i5xsAX1W/eUC7txlIu4CGTAGQmZSALEdLPaCT6ia2XAQQowGn95ru0E7V0jquW+Fj5fA7p6Y8fjcYzRNOgSmyZy6caB6jFtcUqfGygkDrs11FmEpEEWyUB5qX0CNrOO9aP8GylTsWgow2ywPvu5gXvTuG8LUGUJbzIUUI1f9lDxOsxxLQoaGHnPoavWd9+9xvQ+VKPVrU9z4k1nKCSOOcvjXvk4wQBRi9C1EjcwZzlgQkHv7sx0Y+i1YKll0BBhHow3p4TGtDXtabowN86NKqi57KqvofTxXb2k3nRvYZbErR5oMKvIx3PG4NO16eES4nv7OeBiG1QZGgi5OVEJPxE+a5YH6bCaI966PuLXhVJBGgbHvk3QTwVa5TtXiGm6VwyGaJW281jiKL4tjEP2tZZRuBKwcTlQNAzI0xsGZrnNrkwV6SaCKeryRcJuolHRsUzyx8HBybmpiIbNlGmkAqEf1zprVLcg/CsXolBrPIv0oC063ziXhT8MOLqiz22alMJn5O1tpLVCMschntoQmNB6WBnVqlwnwHMH8IlFDqMWVwBjlSIy2Wo+RGDXFcTa9lkLpPfq+tjpI4jV48/LStrYM+JeavFnk/0+0O0fmsrsdifzexknGv90o4qLXIGfQFkbpJCPlwvI494eW2RjxmJa+3Xu7U6PVyKmmPv2upnIje0R9+Ylm70QcYKVoPc5boDIsgBTInK0vJtY9Nkmk9uL3JUu0Z+9gnfppZenmpzK+3B3Z+ekFxNj1wLcB/+9eqLs60n4NCnry7x6OV6ApeakLplgWUK6mGqVtXbqes3vqOfPqeerUU1WDndn1UkH34UVQBhycc5v792XWn0qagPuygPvTsDrlcogpQJJtIZosUt+5KU8hdxQuvOKDQRx2ceIANfQs7FwV+xRdZNCOLhcLDDUBv1XWwNChkGjSw3e+JikG46xTq/gOEO4Nm+MXg4sYCnVGxd1w1vXGN53V+BFNWLq15yjHi3Jzuk5zuk5zTF4+zzPcrWxGAeS5f8B4xLJLWzNN002kMrjXvo2YEW6lHdonuYuj2JHiM16rUUBaxM8jCB5pcV5qtddTluKFW0W4jiL8hZOPd8R8isnTCO/A0MorftrUzPPaUbQvbqDg8Sd4Na4Hjf4f2mJA2SpBzpyZXwxLGXjJh6BHOW4oUqbuWmGrytjd8fJNbie69tkZBfnJ9rUOOita3GqhpSyotKfYwuICDya9eo4AmK17h7wrWDx7zFUWzai1q63jinmtXZvWFRZJdbclD69L/Rm0Rco4dcsgEXfKeBLhHMqfBD+WQYNw5hkfx/gLM6g6daPO1qT6YS74xQyPYpx+S48CHAUQgfO+vn0m/EtN9bRckD4F47kjJgmDqTK9yMf0to+JhGgYxsAu8m6GE3QF5fFXIUhNBSbrDeJ0fUs2sfkdY6ylU+v/MbiEXWPeH0sw3IG15/m5gAD4ZxvH8TvNS+UA49J3SjB+26IW8n4h1XYGl0LwfrujHs0ZuJadciJkXzHQT3FJNyLTRRTnfAppkLVMItOcRN708F1BB2OXDhbmnRz0J+819VivfvtzRiwuWyB4337X1h1jbYGp01K/07R+J3iL++8WRhLKze3grgtsSRvnmfSJ+jvRC2N7tYgO+TbVfbNRf9P47STaidWbxodoF397cfSlh1/YEL7l75hig3x6CsV/6DW1bFiCY7pQitRn/Ubg2pTi28cbtGBSX1XNNV3YJBMLLxSZNhFsolF+dW/vtz2R53INvOy9293v1CpI5gp644Meftza2jk8rIR+PgWN6+n++0rYZ5pn8VxpX1CxK/4Um9612JNTrEc+GnHIgEjooOld1FQcB+HLflRfe+qPntrsdW05O4U4gcJm/DGKu197Udb9oxcl3c1edGpt2fEtYGK+kx9bJrDCQJuBxWXzxehVRi+FxAZwVFZUKu8ItFDdXllPtd1sAEJiBsSJnI+Uz4HdIkoh1Gf3tFT6Vzy/q74ImPv2jH+JLTpH6F0SoX9ZhB7ugOrUkx9XsVthWImVfPJzchIPvl3aCo1xoHpdm9X6xNPzRvHZsRYE8g8rpHhfSgP8R/wwO4gIWBWPAdx4DFDnATvlyaj3VTswdzOF89SKXWjPBbBzZHQ+mpTHoF0kqBDjUvCTvmfMUz8eppZa7ZXO8mKoN6TL+mqYW18US7mLmGkxoCS3k4pyYlvSCqy+SL0Yb3r/ResC3OzmJS8eF9L5uBJA32KQXpQuvcmLXmzbopu0Fdn2wdDW6gKnQcMuiquzS4C05ni/AjQQ+7dAyaieolcXpkS/uxha5dYlVnWxGFGC9K0iORlBFuvcQoSd6gaAxMEIR3Bv+UFzVuFMdvD+g1wD9FJKRRsjVi0XIK2AEAqyFUdku8H14WutTN0JfNd1IlvEJPjRMQ/bedwKwT8dvt18R2uzlBopUtodl2+HVMj2fPhwUMtteNRkUyboIkFhm0Q7fRSoDN4ILChhlqZhLsHMc2CewzuQ3UHEYm1Nm6x1fTSeJPbGJDI7OzFcuOFoFcqzJLRPyYPkRv5c/4XsrOG7b9E6Md6Nf6trxXLQL7UVH8XHG/pvpySYGlOJPdb7HOaxHTbEwW4zN8Vbk2ocaePY4TlCWk5ebXknpEIXPhYNuV5UKNSQ1mV+r8fOiy7ec1ebYmCR2YNLnOFUosHlVnbJh2BEhl19jD2aspkI7CL8RvCPOEnjrEWe7cPANE6nIe92Y2w4E98o/zBxvfQHa7HhbvhGpruiSJ3gvGvfep5qgZin6z+Cpp+Pu9wy5XUmcNjyXuk1eBo09XWc8X2hd/+4cXmlX43kKR+0vhxT5/2IOy6dfMX9mJkJVYoCmMGYljOH0g6ZCEvRhS1jiHo9EHYAj5oNXocwWEl+2+teTJnBCBtxD8xq9xAUm/PmavHknjdFz7GxsylOo/FPHCycin6ZsW8fN1LzjL85qYNQriytnQHlW+tnG9jQO89XGGy1FxFOEF56xvDyKoIZgn24lzODvQQ81baB+46tA4y+nY04l/mPOYpU1sFnSYSdwo5b5KEb6oHRbohbzLmAB/k6Mwww8UFYOPT9PRD1CM2/d2fhLKnntftOt55qr1vX46f/WafZ7WbhNdtFy7f/o9pRUfeBt97KL/bMIAvJf3BLHVROikMYB1Tj0Jbg0BZm8mjLWJM+qG8phkJL2VLjt7MoDOF4ujEjdvYiaktr8N4Rk35wdevBcrsz8emH+7pA47CWu/ZU9+ppmXpM+Xh3y373N8sGLcR19iLzxn+MQmcVqVlfxs5wMsmreC8RRRWQ49HWZMMuK6/oCBcHNoMfQIHlHcfaFXdbc5m4hOk0UZkrTQFSot+/4+PI7oM1xuQTyvXrvCJ6q9u9MqnVcM6NWFIrfkRbLfkRTdVGU+cDL7IF5k/bh1vFPlcBuKRapRpabdrImYZcUe2KAhDnSNK5aPD0vnctRt/LmSeI9ftgvD6AnV5IHqTiWT0te32Q1egw4T06UqxEEYyC1bfJiNjUGA+1ryiQzjpQQm83Y9WyK9HRJvtW/2+9ufBuoe9qe2UWRS0Sgz/CkunCEhiwwT/YRcM78Q413sfTYWRLcHddYKHeRvONBSwfPxyRf7W0ulYCw7bybL0Ud9elCMxBIR+7PewXtYqR27IY7NhRQPJs8lToIflO0g+MIpLUutm70cWiShEyjT6lOmE3i+mMbFxqy5OPxtdIYUUzGujH5XTFjVhExDM3oo2IVSeCrF5etJcD5Zi4xOGTvIKS/FTeFr4P7KR5043kp99AOVAaCf7H23rvps9t23ja7Katpo1oSUTLRrgqqzFvF82yYuKi+olPFzKxmCKZtFlNnW0CkDc3NqPKmh/skzLtXlN+4doa1gisA8ZeFxmTeH1kTGpj2iamZ2MWpbft5tQEsdZaXi17/8b2HhNAdaOZXZ9tpI9enJcVbOSFxlBetY27qGQ/L2S+FXOLWHpmPphzRIMPrTw0NKGvEmoFilfCEX2FptYeZSwbu77z0WBgbawt8AY2W1tUhO/LQ1t0VmumlmQgmMjr2fDjFHjWCHVy2yY/8aC71opfdFh3rPsp/YTTbto018afSWzZxLKlPwPQtgCufT+TuGgTPaN+kkz7j0SRliqb31tU7xycuFnhYGUuVtj7IEnMvtm9zQpmhhJexMfdweXNCjQc4MI2agoz+hBPZ4Q1g4GHHsaYPr4fUVBG4pxuSYTXldDgDkvNsaflYU/TxR6GvtqQWAe1xxMXsSQpk+lVtThHMw+N7gOqzdXY2cJiamYwqFmgSFpCqRSONYpR8hGKiUWah0/eIJaRpjygUziTzMKZZBbOaOVjz7qqFpn9Qgpd03fmE+zuQacahL76CyhinEWtx2CTQSFvABH2xiIq9T1y+xr5fYuCTicQwfuqSqkc9xp7mbKTUlmhnRZVrppTYlKqjHAyutrm5sNtchksomlurvOeEwx6uCh7kuThmu7mCkCMaTmmUaFD1HC0jOx34xfxTxNYFSW0Wszr5k0mhyQXjR/EunIIWMLNxtb11RVl1L0VQj8sYnG0ulOBOuUA3N25lIpTcQ+hMnglV8bXcZTmL9YqKMaQSgfZ2us4H6cMvOcw4VUy0JLFr2OcOs0RmWIzvCbmh+4R3vcoXIwrsXaL9io9Iji8oSKHqumIOR3TPp5b1qUw+3rAlcWTibuoLOEYz1pWPlDVwhJNWJXw4htypCpczJVGS7OjujzInqd17Rox9xSoyv6LIkkuOUusiuzkPhElccovopp2dVTEtAvDEmUvZrYNZU+IClRKadd6hX82SkKnMDr0rKA2QEiYP0jJcg7VRcox6lZ79iuNk0qckdptbCUoREuUPml14IgoRTllb3ClewKH9+i4YlD/+lC0pdeeUzqXtLKvGh9aTndLzhKdXnorJ+VAx8fyehelpfnt9qmfYj1fptMzDK6iJ5JNDuM8OOL9C+2UEAvmX/WAT0q029SNSeflNRzRnARjaI7x1kNmYD6CjnV2GYi3tz68TCah5C6QIlAlp5JGhmgabpQepVM4dWxEIYwPTnremHZ5GSLZr0RVAPKCb8TUVY2eNIvW1CwDRA942U1nXhIIEQcIPisNsbLFBaHCRxlWPwO7sBFcqV/wYCK9F0iMkMit5tIH+LgrXPlRdEEl1mthTnq5zLYvxn/jzsT9idM7232Glg1phWVIN7XNM8ySZVtbhxnRLL8aAFtxwehXo7ttzjqLKtj+ChzHsQ4pNb5yyrra0odk63ayeqHTd3KaiitgO1ZEcw7WvUtt9mhZ9ywqeQiy8N1izJ2SzW3PAcbrXkM/uqTRfSLdviiocUvjC2Xfz3lqWhlUtgIe56RJnsx2t1CzjR7qUeFvRrHt9zV3zHOJtFe80sxuYUkWcnKFhx7N+Q2koJx5+XRd6le1MXsTj2v7h37WwDjZeqpzI5ctgKzP7azH10sW0Buc8GhlxF9ZzoKAOqPFytB9X6zcyGNu5eoEhCQ+bqbcdhwO1YH2En4Polnbf9xL+DiXrF3Z8yHf6NKSszNy90fCHnZ8kBdocJXAUVqj0FYHVnAQJPqQ2u/Zy49725jpaU+Tgcm9LTI7bKoIzwfS2TITQ9hr0j92/bdEuu47g4o+xHowto2bM4NL5X2YXrewcUKh2hiANvDejfir5mX1zuk1i/bc3SFlKfAcuRgWNv7pCYzsaJvn+vIROS7dHOdg1z4izySWPFd05TWVoU6Q/VT/EEKPLB1dmb0fUm1bm9vuiFRUcZWQeFU4i/NqE2QaxOLwDfSkpOccy2l+tu9AlapbzGTVtM3eXWYW6+wz3XTmKaSanHQLAYjOkk9dwLLvGVmV76IwzXVzEayZ3GsLkl6Ca63LzbAKMuiKSX/SQT9Xe33xqjcNH3a5qAs6U61HyR6aqbNFFATosUNk9ws+amT6/DQRGY3Z4+QoYSxXOTd02P11ox06qyOHUnUtr7v+dnABqjkOpzcgYTMLUZFRffoX+sqx/p/S030aO3Q6KnhT6qjGgOAvYfkw68fpLCT31KP+AM2YQvnCI/17NO78HNQn692L+DsXBviN1IzlXbsZZKD8Y5vnMbhMtklt+Xmz6W2jjx+IHIl5BysjNuNKFv3JBcyNcUQQ2no0EqwKElxfyuDN6BE7U7MV1ldrfJ7yZpq0oeyMV+iwZ3POvLRYbP9+tBgn/wGMeBgJvmfCrUN5qhidyHtUDZ+01wmPJdmFYUfyTLYug1LT1rZRRtViYcAcRGYeETZ5CKGgjLMnFDoB/m5IsCnC6AAbsvVBEqrIkxTAUSln90FNEdIwu4wtrC55b0yM4joxw00TcN+JQKZDiS35oTx2U/Zc84Vd4Im9V5LqPciX2BW+xGP4CxyMQKUN/IrSQBoPMyPBHuY3YbHvBDA0DKhECfdCtgeczUAF+iQa2BzOsZXZGERSBEe6j5Ano94XHDvf3t4WdgTAlszjAmXkLIq4dqB4QQnXf/zHbXv5xVa39hYJFD1j/50C26Zyg4wdejkXxuUpFOk4IGIAsGZY2NJ4xpiIvIMyEMWQ+PG1/NBfAOQxuWxfEKi+5rL2ydgAlJ7ZeEKbbJmj400GRhAq/DowR/1jU5+cEbO8+n0tEhsoAytBO43ZBUZcKz1aCIljVAEF9gL7ZkFMhI8NfjES5xbjJTNQaoUY3iGEREhYAz0CRyrwol2BFy0fL9rd2hvMIfDCHnMSh559qFMwlO3VgqE1s84CFdN5bMI1uIu1+0f2ZtQvXyvAXErqJZ+ir0SK4S2qjPvMFKhtlILD/BZ9kXul6EKMFSudWst0QyB+tmHMV5mmsRw+0Se8rmggaKVgdNyyrNl5J92QoZJqkOfCP6FSwC3sAuhs2iJCoO2FNddIU1K5jvoFWP5dHDpwlk7cC2yuNJ8GJwNN5mZdZoLAbeZNEsZaJSjGU/R69YWcPA4u+y9DLfllNk/5BhfjZ/0u9GmwOyCJr6a75IwHU7fyG3aP7D6p3b2Rf8pfG3R2ztF+QjZ60dEZhDuOijbtXPSI8aUnPqMy9zBJh+QrtXEMFwSmX+KGeSxiDF0eyzo83Num+CZ/TVxJnBwOvrGRNPxIkfU8znNAx+vqq6HzrwltI8qQuN2NSEZYZ/4dYs0V42Yajsn2+KlfMHI8ZNxMvzo4q+Zt/akAFa8+l2YgAkp5bzxVD4ywN0qy5Cratuiv8YO4HtxXaqC+vTvpzK7V5Q/dqYNELMi5qwNvF6byGetDRD6p3rO8sr7V3Zqbk7QUUUz6NxfOrJaEM5v572M7ZVG0pdnKTcwrPuKpm3Ywt6VXylZ495XOw5cw4YBt5WznFXyvmO8lfLfNd9patF/P7Neq+Qr0KmvzuaJXe3BW3vDEFHbf80cQyIhrlghujwDdaRtOpYctlXkD3idBOnXsoGEaQRXArusGgWgi9InyRmeT/Q91SmpTHCMOQHckS7Qs2SQPHuLxFDV5FppogscYYjJlvUGAUIxESb5uOj33B2pZnfdUX2UcjdwiU6mPtodQbkiNsjh14U4HJxMYPTb+OSHs2RhfpYXuJ3YhGxslovsg4ibUhmiywpIdq+qn6Bc91ioP0lTFrE/Zp1HB7wnvJFoanyDY8ngWR+gE4vtjPdVy6vz96vpCFBWnhRHf/PmnjJCrzbiornuK7FX3MmvVQh3TKGVB71qcptnlJLK6lSRZuhtbvegBPTFdk3lqx/N7E2/wa1s9c/RDAGt4q3f0GiRiwJecLwMg05cjG3UcyWfxVr/dUzvaXuFuLxqOBLsap5BcFtnTuh9n1R9xvsD5Jn/8/zEI1cseWvOyt7abtwYBtGa7F+32jl72jou8EaCba9ts307vSFI9meHtXngcTcVv9+ZaSmKtmm33RbTT6+5NH2O247rj5Dh1JJorLB3SRiC4Q0SMXGsqoS3CpNGP4m5MRVtt/A8R22TxN8YjbPCTHJPeMk6EdnHYjGL7SSzLgT7HUYtQcR7x0n5tx277pTxbBzWIP2XJoQ7Z2bBVFFcqGsgNVPBlzEPHApC/mDm8cyHqy3j+quDrBqGto5FoFWSet6MgpgRycs1HlaCAGF0Qp6Ok8SVxI8/llIr4ay8+HY7GjL1h7Pt6C+jNrG43Gd/Wb5DF0EFwpoGjB7v8EXvJqpiHPGpBLk3/t7qonj1Xz1bUYpvqCO3H5W3pvM+W1eqKevZMreq8i99T77NFtbKqVp5LXvblOimfx+JGT4v+zLdoMP0tO/gK8kFCExkDbPcaDMO6bjC0gvl4KvjXhv5rCg07DP0AEptHhF2r3wYUC4lmklIY8+hHpe4AqMHN4I1eOnMC78Rg/2iMgWLT2bBaqxPz5ii/7FDjfb8hWHRHSmOeTREPraO1yIfv5uJMzW4cVVTfHevHknpMtfhvKR2Htp51aN973euADGAB3cqhmwRuLVZC9yMAto85oG7yWmtxrp/DVGPHc4MdLfPbJF6dRszYTa6yGH6yhVfVwULgGpBI3aK2btLzqhahCF0XL+m/gE+rhyDkdsDaF9v1ZW6RU+19PmcLkOln/9UZKLs55jW7W2un+pB3RrOFHKDnc1vYCaZH3JD+54qFsk/4NU64+6EZXgdzzZSgmxdxpSHZxbYMUDjXj+skhWjEXBbXWztL8tts6t9mZaxko1lldwA7lZOysiQ12Snxcy12SF1bisRn0VgP5OQs+lCLnJx2CV8EANpgi937O/q8oqNVgIRqPzPAU1SwrvcJrLdcsgIR71PV1jb5dA9IVkutXmppLG9Wt7rV9GDb98P2ATtH5DheW6O+z9Hq9OLoG1iXVpVJg1n+gkuoizYACkr2OHDiXt9ruJ6a1eo+rrqQK8v3QsoIsiX6lLC65sJw9B/dq9XHd4mw0iG3Ng+ll5oo65cTesjFhJVoiGcu/ePF2QVez8Xqrn7K5ztQfNGjMiXJ5FzAQyZOSRHCHmkmui/lCkR3sqjtED4pUeYNEvKCIJyys3KigZUmTRa9bZC2SewpgI/idgxyqyQ4u+uMF3F5/zQbhMnNHVm+tJWUr4a5Yg9Cjf2DnXeu9EV57PMTouKucrqWh7tzoGgpzUWXFWSn256W2n7GtrPx+xwTgnh9KHfA7vre4t64l3YsNauJpO3KHA4CzC18MFKEov7p6u+vZ3GqHinvxjufNdnqV/TTxY+DdKPOv6Sd/+mTaZEznpySD+fdBaZToc462cvvEgtByEK/ZMBg2nKPx6e3G5dR+0cWDeRPzOn3R7xUSZgfCE+GYx3Er4RatJoZtcDoC/4ZsM8/g5X3o2i9xNc0ZigMvXqhSwewXJmOz4gl8B+vEWIdKIk5Q/XggVtVHbjVPQduVXngDvVpY1kwxENQXDSEz4CPKFYkW+/5HVo3Py+Ryr91lr1tsKJ8aG/KFjTfKm43Zdyr25bpdtWLnmv40Ga4ZHNScq7tTsdIwpuLEtqQn4vvQKv30LoSLyDNeUFNMl/pnP4CNxyRZU1NAK927ZVQq+MbG1LRHt2wGt7BYqT1Rl40zm7O+TROTIANnfZzlWjXt5TZwZPyODDhbYQ/bTMkdhDEwa6oxZCO4GJOtB0a5gXPbmSpSEHgDuRqUYEhLZydu9cci9euZafXPOhTrKprmQJxr6cZ+m8GY/QiY9tQAzVSA/WiRybKQ7AY7JvsccCjS9d1YC6obWm1HP4/XMUXY+AuCV4pqsJoYBqJIH0lpLETVrZD1kbBu/EGbfZWZ1JAetOmHcHvwsqY5bHQBl4pIRkCJzEJoeZN3vTyhZCyjLKxxSQ33ZXis9JyV2XbQqoL6KH+NebSuU3odeMAslaxsWDFw5/GvB9/BEhrSY9wHgdnfLgo5iHiZShA6gN+3OjujsdFKPwQ1hNnn1QZvfF+xp74eY2qkINh792oZyep+znnAQ8jN/no83FXpi6KhhJveFNblNcln68qfmPoLrlOXMfSD/i2Zi3UccWIqKeN4lhZVyApiDtSTJITLWw/zIbFRzQgnmAuEsolUTzXCVsk5ED0om9ay6aT3olCTxnS6vb0joL/P5hzU4/S3DVEOVas+GVHw4Ze+u8INBAuPfcHfSzZ8JPlGtYLO360GWc/cqPXOfJjVO84t9GROc68CoOZkhgEQuRK72FxGDdO4/H+lwvaPMmuJl8xqBg1jrXl1KH3uYU++sJy9e0hw0tpVRJR+jwILZUumpJUNAXBQIoI7NaZJ9diJsfO20aY6+p/6bgumRCc4dwJjXKK4KNQAb7uBliUHZy1UrxrQSEO2a7ycGUw8sd356nWiCsHNITdoaZTlfZXrkdFLYC4k7+eWEA0gGl1JubOv4I5XZgJsmNFGsAqKuFIuX61TAkVkA0HjCX7+cqDQ+8ZLOnRam3TPl8+h9Zt+hBrcLj2OV94Qyw8YpxTKXCv/vloeCyvqfwSPbnS5Aai+FGV2eS8JxtzlDGDo1s5pAuV03WXV81xmSoQ6fn6mCvXhDQR7vi21wF/uxOIF7MA7/SNzegzbqj4+HdU8uH7WYHvYggylugQy5twtNb/dG0DPtNqN2gt4KOg1WgGtcyY1YyC68nJ/Gqwsb62c3GTDYHM4mGtczseWC9rX758aXxZpH81Oo5rLfz69o0WPY/nc5IW2Fy9h3PlwPH3e6nLs375bg9wkvGexi0uNJcXWPN8ZkaBUvZDYMnaT3q/54oSEwZcNcp79upbPwZJPRPNwG/jzrdPMXaUO6Zrl7WQzCIxDq15JA0dN7y1pmKFopijoiiaX0MSi/wcEh1+887znO3f8MGUj7GXJLQlLl+Vcio9r1Xs4o5rKiWZa+mSeqn/xncmfnrUudqUcm+4k5zgT7fHP9K587yXm0DGGxDFSWdvPL7Oeh9GZ5DUMZM4eXj+MS3N9gLOCONJPvXjzGbDcXXcGMXjwXie1yOTLceb1oIkMdRszSOB/7L0mk/Q8/ig4ANWgzgIRBON17lDA8K2Wk99TNcRvKWt/9X6c53E+QmLmjfCBWzEPz6aJF3J2oJbW9G0rOc1jlKjHS+jF4O973yOgulOFNNzD6o1lv5fMJj/yCv4gEjuwJukck7FoJrTDV+4v5cLD83Ngo9f68RI7sQUO8kf+L+HYqB5qZmcBeZa6Gm9zGCB4quC2XyuBMbft9OedyDfC1rRY9clcN8WgnUYHODox4vIZnoWaMeiUTCreS54R2cujDzfQ0MpjsVb5sI2DE1jM/j6lid5XRIa8GhSbIuBUQ3epBJISFrSuBYDa9HprLHLbjNUceaYOlAwnxFw29vW2ffm5moEc+P1SONdlmUWJ53v3UAWrkaY0xgym1+pD+QdmhaKGsCmwe1k7obLJ98BXsAm6/pa1rE9ZyAfzRqHc2oQRY2PcO9Gk8FJqe3wYOAf2wy6FNCIOWFMUQ9a6bYg4GGgrodUmreQb+P0qKY5e0+FbGbfOcN2qz23GW8bYCsHT/W+kJX3hfDb9+PQx4vx//FYdIaz5jQOOT1fmD2J6d+bRJmt1JutU3UmB8bh44p7vjAxfAyQi8n/iTPFVkPEiJL0Vj1g/eDDSrPRbDahQlqRaihEeW71ndbawDRsrl7EI1k91nR27arDdf7ULK8rfW+WC2J+BTrnNfOU18zT8jXzPNQWNaPz4lb+++/BVCSv6rYRR+fQaQ9yBAie2Ks2U1hLMEr+Tb5oZFMkD/9W31bjOdORc56RXQqm8+z+teso8/7962hXvEWysL9xI90sbqQ3uJHerG3mN9Ib3Ejj6Uvl5tGNuZHya9aNtCqzyXlPtvi7bqT5vJhb6FTXODLSO+kZw1OdM4WYWWGPJqNcp4Pts+m2T6U892bgm+dc3cT0GCNP72ICgqRwOHdaTQzPVNPcff6VTO0/nKrPxUr7btq2pe32/t9E3maQNmFGV+xdfUzaZ0u9+hXUa6iVUQSLCD3UGJGCTcPSbEyx6ekiEXXfjJu2cNp/KE870OHbd081z8DZ/5tqM9Xp1CzXFrxJkJlyFt/PcYn/xFkg0PfOw8tssvb/JmHm4HN4zbAnaQXbT/WE8p2TD7OpF+GmLED7EpIebR6HU7sAY509jnl01HlOyTfNut0k9edwSqQl+RWAJajG+1g39Nw09E5HVTKUBH9i7X4oNaeH/7c0e9MEmCPOW+Xve+/gVnX6ECl3SgEKBGj9vsvhUM9InP691UzfDabtqIDf/5Xb6NP/LZc1R9+OjWFFf//wBrWFirl86pCIwzJl/sszeQDSMTWJ/28SOSx/ff4sEjCk38FvJ3RHznGrSFnTs1C5fFM5FXmHoytnIScifsf3VvflPhe7SLpIqWuZhjxHAPharhVBR6K4DfaHoyQedo1YShbmyfqJvnsXhGE9DBMRUK5fiSnpOjmQPTCKwsb2/lv6iYHMXCgyLKLCI54mlXgHBHBuog1NsjnyUm3EY0pwHFESbW+yX/f1xbYevB2kMJsHOwUNvEKhTGZoxLCfTAEDfFKUAyl1rWGe3d3JKPHt5Y7yEck96jeCG9pRkxp2P0OP8H7YuONAh13OzOfQsbivt24xlfm5QhQjy0UxepGbzOdFvMQf9VyJgZ4rZ6H7cn5vs4haukndc1pPnNF8CymNP/ca31w7n260fol045G5aKcaOjyM/Y8ftJdwCo5I5vlnOvvQF/+ziWGoUus2JBoikERx3a/MdVJhcHjT4rAnQVt2XQRcoOxsEiqRbs2LySh1tlstWWOVjXq4xQPsfI3SR+dRbJ8MGteI2RSpu80oVowAmT4Xb3IC7booSPUJ6UT1ybIzr4ynG/WTek/FumE6XkE+Ogw7VlgpsBuNNUgeRcVY0blf0pimNhtAIewf9b6qTle206mi+/dbyDvUY3ycIAiFsVs05S7sOK2jqyfbPlcQxPZJDXnWADbprg3DPvKmkpcpzGlpg1FwOYE3TFJF27cn0Yntm1MAfUh5RXzzuGsn6COF8MY8GNvA0fmUkI5/QnYhQ5elJnwzL/3oBiw0o1xRipcWzc5fmZmaejNn71RVp7tP1j1OGmcvxUcfwTPMx2c9eRwtJYMok6OAya5np4w7S6/xaR5bCH7WgdS/xRT4wscoth536ygrYZTR/qyHQPZXjhN++kPg5HgeG/HsrFI2TnCDFb2Zj9pd4eyktqjzCIV1tVzuZ5SIdcOYAQj1Z08oCWuw/rno+SkOvefqXaxusFJRP8TYom+53n5H0Ot8g7+d8wZa0jlX9MAI5zvv4juu0JvC1S9cWzRbUfQOfYeGFxRpNQa/wxpeko+NujT+n6nJwZFEh+ndmZWzHSchhonRtuOSNMSgqCNGnTLQBUgxSNqXZ0KxM0tnqUGVirln6ikkqEQAFOIVWobfSUw5BGLJzzF+ruumiCObFfPh3swESWRU4NxD9++kVDxT1YktHUUdZXYxHkeZYmPDOwDA9r2yNc3Nlfp0hgrNCFhywEqDJjWefe9R4QmmvN4zdRONhEL0Gm/jeipLRVB/r4e6oLedXSlggVPd579fnSjVEU9xYGB0N4uMmpb4HT43BaV479aEpFtIuuWr/RyYW4KKjkoRqM9aeDknr4sN0WLF/5nj20Yc2YMbrQwHYf0cpmHCThwxKAFTAtbNXSHvq83d9riBNanAi92+cAuyTp+3Z9E3z+5Nx1OygNBqyXqMn75s0qdTVphiLdP4ac+Y5hmT8dNXJd0apPFT4efPtSTjJ7bQTbFJUooHyfTt85TS26GyVnc62Cl5t+jkyAL9tsV/wsbwSvOfWjKciX/AopB0rk6BYY0A1CSE7PP6afdU6+zZEmWP8Gqklt5ZYT8lenWUh44RT/sr0bCOKH/4lYmRmpVThVcaTolu2bnyERWIpSk4BhBLWrKU3o1oRkkQehw+sEiPTvQGoddZvq5l/ZlIz8lgfsNlZXREkx9I24sIpci2Yf1DshdBp0k5p5sjelk/7pzIb5e5V/Xpq/WsKflMQcFmn8ZyvhD3e6M+zoMjNP5o6TiUj8X8oy0fLI9OpwzcSh67rGMbjUZNjLb1eM7E00djO0Ubnkkb2AHRrslrp7w7Vj2Fn3hG0A193rZgTnux8tADVq8HQ8e2i17UrsS82iEwPh7W9oH5tTfw4WnspKGD41o2phO2wfg06zWkKr+Q97OLgP6L5K1pN0C0aYHbOEtG5TTAkBfbvqdte9s7846Z0dltWyy1rbKI72vbHYtdcZAojvR8rq21oX7KOcYnvY9x3kUVkpigkij4R4BPoK0zHXVEa+8CQagsUVzURno3tRPTNMPttIfLBrVg0EIaV9ItOieyIQXt1t7YC7cDjaBji2rbosCjSCBb/9eLEu8Ih5ej0cn3NyjYFUDN+nkQ3GKwHWSDqajfyHXVxP4xct2MzjhlhyMYbIYodYy+wokPpMfOang+ODkZpLX6h19DXSl9dV5yFjvtv1fg+6kC7y3I9IaTKhRoajHiy/TPfCxajNWIeCUibbRMn68CUVAi9rJ8r9DFdl7oYl5oyy90Z3OrltGhZqcWT3BduJyQzmBLQdPH2lzjl1Nt0wlwA6Ms+t+gaHbS0yqjg7H12TOj8qV7evTTp83ajlTeFyPj0hYr6bxCPCv7Gj6J0aAerWmx9HyZrVKHT5tcHTdqH06z2vjrGP0Bbn2tJZl2wHjFLgJXMUOLgsHvRrVkNBK3m+egAjFSZJkYnt5FPy+Hej7Xl0QCbXJbUPTq+nKCLMuyHASQBeo2YvCQ9sxNOxlcnX+JMajawT06UY9haS2LMaHYvWtbBx85opdabmP4tZbdAo/YiBBNtgq7jjW9GshIrHk1PdoawUEd2kv4uTy5jY5yViNbOqQUVi4UmA7OF1rayo1wIREI1ExBR5sJf/NMbWaaXQWcjTlVHHd5tYuO+PsmavImqP/+Rqsm5GrIKVXOwU21qRN/8TSS8r36n869cQ7l4N8QksyviygGD/H75o5FuzxOOcJbVgKOx4TupXK/CSU5h2bglg7ytSkYnigYpEC1zd5FEiu5na5Eis5s0TbdVC/FprpYFpeh2BNb4OCe8n6Ov6e8plPieeUwSKlpMQBu928FguVmLJdBXov4a8v9Lbmnqf9KvqtQW+BBXNFSKfKH5DvbaQuN70ECKTd5NAL0Gvtx/TYs0MDW8KFchRT9XiaMNhmt6b8qM6xBiNIntIKlvGJO1HXRs4dLkQaehOra8vl9vr9t7yu3uXaMP61xTW7Uua7mFDsQT2NwT5VwjiPOIhh1p4sKO1ylcrw/MuUf27p/rUSZN3MO86PbR9JAjwczf7uvG2eZX1ZPSjutf9P+jhLFn3EnVf2k01OGndBpqrSDIsGE6GTqXdo5KdDvumxYgLtFwXfmDATW1o6mtjSXEHfLkDTQNwXZqoSkgd4yZBuQbM5+7LVnylm2DMeUx2ycKBkzIG+Z/ov91ILLretIPRkZza77JdFfTE2mU89Tm/rf2bsOLkdxJPxX5vnynd/uhItcdOz2ttM07u7NuwJkmxkMHkKvPfPmv5+KEkhgZAHuy7dhBoT1Van0lXKIpZIPPq0sXizIaoMn4FYTkOaUPhG0atp3WoY0guVpD7wL1YGjnjewpzhMv3eACYjzY7uolx6pF0U0zD8wKJM1qOAx67x/5IkiTjtoc5vEcCvFGegvi1oXK6Q6ghynB7FBxsLDQ0MN0p3TH/DR4iMdfrqT2IVfMvJjFNMxKH8cESB9Jhfz2TnRrIY+uDCq53mIG2EGYXQsF+0G2Z0lrXNF41xRKc+/aAJ23zvDnvtm7AGs+vx5aA5en0F31QzSC3l69mBh3jyxVaz5bpeOAX/nJLvdUaTWUZUWcFnXNKVgdq6xlLvbMperY2Z7hCDteJczw+CBNLcOn9nHO6sM6yNDAxmbujKIwwezGDjDDHFHXZpEDvVG7XpFMJPG/M1+y9DgL9SOYfKLJpjCY49sWFZeE9/xYJc690RalFItYXSA802yANPd+HBwP9gFnl1/M6MwJuVGO5FHb50KRioTwHFu6HFG4nR0qAIcx2G74rcsPXik0GI9oCGM/9kkTiv2wiuFRjTo5NXRCY/mv008iqpJgUwnPJeZaZEGU6e330+GmYuwJ7uLPwVdheDdhYL7ife2tfCDpRPOfCx038ttRiwWYIChZ3sjPw6PowNToHRxJOliQLYjj6lSuluQqVS+qc+gXbzPDkoLD7l+lFTUaiZmpiX9XFrypBcs+QjeK6Zfiw/1zEnK0W+A3hubM3xkKcpcHT5ecKcU0S1Z2Spb2T6xMj218jqz8ia3cl9WWK8mHmItq1mwwxsEHTa1LjAb7mAspP0MpXL13zciyVVJTFoROIjky+7YHMpMp3OlmiVohzensRJyUCZXPcMCnDg4XiYVDwd7ujavYqakuWeoRbCub+YakaPWPjvnABk7wHF0IeKi6vddUW5tqZCwZRDxSo0/QSkq6rPwcuhrEm1V8ElbeCxMOGaWJRhYlLCXJTRSf0TsxR7iyQSN22exWYJkL3g+ObRTJFv1vA0c9L7diQz+4YyZHt0w8Hd4K03F7XUgFkddh3RN/YjmdTo+CEs9XiAEfeN+798GCQSLWjuHP5yzXLyloU9j+TpxVB3OVl+G2U4tBlsMED4hjHVUpuOaJqEbxa69TGdqcP4FyJMGRqkbRjTGjWLodZBR8jv+UqTqvYJeWVUlmQlZNQhpOmlLvAGxt5y6gl89lfIKRFOJWLZ/X4ks34/SGcAcvJfPMDOgitlmgTpS5qqMe2kBN1ZU4VyCsu8zI/W0g4zhHRNVgrszcpD6L8arPzwXnZaB01SOUswywL7mKpjTg8TqobpfVBaSQfR0smbBI+1ZUeAlaX8Xf419bNFVuq5je6H12A0jIRfGP766srIBy6/YwgTAvLJqcTG/7Ich4bMg3viMyZeJ5bl22qvyGRiUW4UG/uB2CrVF6DEb4KQ8JjoS5p4V4WuCY/nB4OHoP3VH/qodOGguOngMXnrre4ElBExaC1iFCfjjbRDENWVdt5bFvjBg9mcR8EbFdD0oXtEc0+XNwHzxnJcuKGNJXKD8cD7HzsUd0EywfPrEQkcHIVZ03qWqvTtPPA+CqZypPLbQ6zMtzTVacR1QGyGfdNkrjiII0k+UbiktDWnUZhW5OncaYa+gS+czBH7tIEPmT8Xm3cKpN4aMy1ywZVYg4WwPrxQMhF8n/jpg5oG/xkG4IzHLK2iXQJ8+ibe4PNOg8lgL63XmPblNN+/DbbuDufH2Ix9TXlZrWkdH+YM8XPJhFbqbTVqUrxLfp97UXVOoQmFw5BCnd5lCO4GpniXToCxlMejqZUFi+PJ1UUWtagM4kVb+NMiXYKgLv1ulEJPGyb7nO9WzeXC7+M6NkWiRGp/Qlvh3/j4MHl3OtmX2DENxgSNR7vO2CViSEFppshxlKr5oKQRroLFHou0DJeEiiVlCYl2emG2lIctkW2HTDQbN+I+l+Z62Utjn2ah/4I4F4NmjAP9x2b0awa+m5tK8AeDJEBphS1OUiisZuT4qdIAlu8DYZaFdhLMjrbHvElcGum8PJOjYh8U9TFe4xz/wYQ+TJOHuqc1w/1JCt6gCvarrCqC8pyBB2ArHV4GYMgh/kiZbqKK41qDiGITcqfwwx5Vyk2wxHyNY6qULHzoUQDQOjjW+dc4SS1h0lZ4EyZkrB4Atvswb28+7H8TZrSxh2LiqHk2E5JtH396GgV81/MXOkO7ZNstc+5j/NBVHM3EpOq0yWk0xkJhrd7OtkrMiz6GO270wLPbny7R5xIf511Tt91ApT3w3dklMHVE3PdGo2+aM5Adq3U2eSM60lGUrkOE4sPZFuuhQvjjQ+PDdd3t+qA1uDuhIQyjffRdme4xD1xh/kpxeoMhW4KTN5A4EPstCnz3vfOxWXVA48fdJlVDcDoYy07Une2B/hUQBxSRLt0Aa+e2EXYnKHfAkj117DEsvjaKKGQ5bFiniVl2gaeQXInblGzP5p9/yT3A3J3t9xV+zOxhZ0K+zIPMGKqPlNiQRNfKbEz92J6PR6PfPX744FK2UboUZeC71pYEbHtorhcB9lDgpqi6MgA1Y5igJIaxrkDP5Z6lUtk/1pQVlRQtyqyiDdUu1xCz4ZIVHTp5r4rkXS4GSQS9np/BwIG/PtuFY9kud29OLqOrd4XFLuQ4fsHJgYnjQiu72HgjOBZlytSIJ6QcBtxbPdIaOqYAvi9ChIeCn5QVYxnGwUSTBldAKJbqAvw3SLsuJPONnf8ItTvxk2xbnGjc+7eBPn+aHG1ScAtZejz9JpzcgSuOjlv/SfP1xRTZCEgsnSUiHn7VV7E9nDoovlMjPQJlnBRd89vxPn0oHxxePYqvIAnYuB/AFprNtB+6FwwnMM84yINCwxitLABraRcDcPACa9RBGnYUv3CIoQp4CTiJoDbNEWCl9eeW0CgZwMbU0zaTG2RLGjqg+1Dsl1Jj4fEJnT2nax6IRbJRJXwXAncLVb+5n8lhLb1mz8LJ/+wm/hvuvL41XWXM7Uqo5Y0IIDggMKS8KYHlOGs6X6kgzKIpMVSCJNi+f5+AvopSVps1kaA0stMjl3kTYKHk42cJf+dyLnCVxI7SF77m+QMNXAZY0AnuduDSyBRp/F3DHBlYyySPlx2kyFMlch2amZv5YjfPYkA0XVb49pSGX22Pk2sRLL2qu77p9LSDMPJJNA8h7SwkJxK9qHGDyhZcIwxR8BaM6XPD/q+GnqIYhSxOmPLbH/vF18CCkeFCFR6IIgjp/qVIji3USH6NwJuCvG1fU4FzYgSm6GfZgrLz2/uyMayMxE7g6ulkRfyWDKgHLhfugqIoynq5YH9bE0RToo5ow2qJ8UssaykL8Wh9dU3yPa+fxRQX37TkxYQA1RBA2I9JChlTAlWl0U1RDEUtHoqkeRU+hWR0QPYFe662gps9SF1lDnnmdXL2UOqZCSRyTVq4kWal1E1Ev1e1OLaT5DKxWmrVWSzOp39iDvlRYFrAq3edexVkRRec7D3oIjeN8rkfQeg1Za1KudJkf622m9pcvqC4DL6WIvVYaJ5vgIB7MMLdZOkcVVpN2VN1Quu/B3R1SqndK2oqozYj7Rq9ImbqOyjAikp68ay2Inr6bGhh6AntaC6gp/FYTV0PibY3svJTGiVpGPmLcjDKhjFiNVqaMr8opEUlPmb0WRE+ZdzUw9JSJtRZQUybSxNVQ5sGqEV1Pl/y+XhYaHrOezs87Lkx6fOVD/8h58eIbg499dX6BMzuVvRxUrL9WLEbiSsLm5usgivskok46by6q8vQVJov5LgmYVBITU3wPGJ9Jxh+I3Uczex74Ni1uADPo6aqzNWwzcWPi5ZvZYJ/MFoeBTpXXqw0TkbBOFeROfGZpF1aZYIjQhHQn0ZSStRxmsbDSKkOx6u19tSHr6AOmeRpbnliPnlhPTHwNWlnvbr8JiUNxem0VgC5gP65D9brBsg7Car2iDjXkD/HMGpTPNyzAYif1lNhYliEklMeWxRr1qrV8wpWHLeDgL/Bpn3qwfkJCGykMUBvvgRkZEg9BuBJZriRtgS5BL/aM+cKk6V48CMNk/pg3MaS4RB0ZF9/z2KKGrSeY+k4aNMAMzJ8N57csayNgGPPLbHqaONjll02mSRV/lTSb1I0d7E8jX5VdRg1wUe2/s1Ws0I2gLkxsApBHxpai8MKnf8WI6v9HVP8/onpzxoPkRXdPNkDxWVGgXpwYSlHWKNMziTDtkFJfvWyTVyhZg116hUSkpZ6dwFn2txSOI4vmyU4kZnZOMLUniycqfw5VjRm5cl6tlsx8h2OhVZWGZEu+XT+usz6dN2n+Lpe84uDStLTMCgAZ17knLwoE38XP/zA5XURtlRsFrsEJl/jtc9zLXwG6MnObt4puujpt3uWP4dXrp8yf/15Hffz58fcv0+tLMaqr0nfliVlzAUMQP/27uhR2rCqytviyvhRSOWIl+unUl82lUNp5JlE/iy/bcOAmell74/ygayq+7BZsgBfRku9Jta4rvuwvhRNlT76RqiU2DO8+uBM3IXswMD+kO1uW7umrjqqrb0BSXXw5hpjtaIxmR7WX9mb9jdhKrYovp0shjOllJRze9ynIVlpHHGzPS1QJ5nSuFk5A6OrVutZkowt64Cj4dZJNSo9t563TDF3AN4tbJYaAICVlr6vr/31kiSmfjrxuGkuB2L8RlR5VwA/pUkM8SAfFgI4JQtmI8e5pviy8oGDutesidZ6pcD7RqN5quaplPZrk3IYUWtCQmeD34DebvKpDSTxHuYHgQTx8LwcZ+6Lq4k2ZWjG6zrunIcDQGt4l5eZcz9XdHBaLuqvM1E6b4wJL40VdM1kL/JQd14OQaqrA5vzSJkuHbCGe6feRrPOjooehCjzw9eIptWeKdZtpNqxvMrhB46L8wgV++3qRLn+DR+CZdCcHApJVWKqaHoAytUYwInfEgDO1itwg7BUgpDa9sJ2/s3Q0pZoeFVEdBZwz90M+cLvVO2Nlq4QbmUBCN3QZbckLFftmSdYuF4/nRvMgHPB85I1dcIgupXVoi2EQCq0499wO4iutFFUv5d4dXmCntYfdEwRSwMhyS4qmIZUqFKBNhd+dEp+tod0ZvoidbEJTUU6tV6ETa2lR2DQgRmPMwWxWwZMid9d89bJJG86XwlIk39pI0+DVGDo/sPvVK1vqMJUmRBvppaXmhEQ4S6pF+0nRv9BZbjtgPUV0l3eKtQg3nc6aCmL7IYLI6rSdvKh6T8rxM+RvtMkZkhtWno9Dr9qInYCNafmlQ5BON5j2uvUN6z8oijpAs7nK2dRf6Wkjvk74XLCcygQDi1AmMtQsYrtUv3AmFg8tVXWR2cftAoLLacyXHQP6kJchQcd8aqVm6dK9p7Q6Gz2qdPCcBcJUQy/qYQN1XL2m3HQsLEVmE7x4YLqSsTkjGrdaLV3s7ogcpvWLbIQSG61IRa0nZAvFYKDKAvNhJUmOI7E6w0wY498/6oJJmx+MDGHKPyYDqOplOc+tX5KR6PPblgG4XsU9aPXIFdkIIKROcH0XHLoGqJ0vBrn53Jqa3z+sBn67DNFihILG+3w5Ng1xHG/bIa7Ixo0w+Dc9oU1dxySS31Ba7v8r7Tq0G8W58KsQ/gb/OLhMuqKcM+mZluLtXYDicIyBBexJffe9BWHMxpOzJ7tT4DZddIUyCPR98+6h9ePWw/GpjxjqgkhHEF+9yHSA+51DT3xOazBcPUnzO8KYrb7LieEsKUo40CEcWWWNnEt+U1onWXTvWGA99zJBbxB0+zbTeaSTAMQqsaZJroN0pnMMYjBxPfFtUwx+ebgaRsW4CzfjxVkXELmtkJZfl3lwNqt+Cp7LbDCgLkswnvps/2L7BuQ71vky24thd4AQwN8O962xvmtlQAg6ZEcYwAQobCVwdI1g2+1YsyjU6bNtfk5ZabohJOwJrOSxwQ929s/Oh651df4JIhAMMYyDhiEiCc/SuFQjbU2iggC2LSczL5MLqLMqreIGYxVqgt2UZTEWcTZ30GEdg9kemN/JpehFpkFPdlEyMsnbXpHFUenYwnY7161x+KkafbQzJa72wXiC1lgwRl2JlomlktAqdVEKxjdTEKS+FKdwW+aCgLJVc+8Dy1YjsyfGDOgClwUFVtNsDbGC5kOXuDg4W6ZiQBMqQav976h4LSFhVLSFw0/W/rRoSz+YkTUfHG2To4mvw1A3TbqTekHnK46HvNPNKko6Z0TsG3QS9NIFdWFt87yPRno0UkTFEpcDFZM8bcNof1FjvTrNrBktBsxr3zakW8hUWeAaLndJmluTFFFT6LR9dVAq3NobiuM4zbK7pR1Lg4keLyl5vs1YmEeThfHVirEwwN8vDHBxjnmJCqZbXJgI2E1jgU/HGehVLIZ8hY16TdJwGmujoBzN3cKqebRaQCjkfNuKdyFN3gH6HecpRMxUouMq0r4Kxk2B8W22dphHM235YJnFKqlTiao90zizqwQXGcierrUdYp5is5UpdB8dtjJvXD2bV9+LW34rW5NKwHoxnPrmmLMwZ2xOvW2F1eXcNfqdTunFHmuOFfK5pThOxQH/zdke0PxMl15h65ti8Eh5poDIEogTs8B5WdS7Aj4d1TWdFuIkT6fZgvLo1nTvHGkIylWC9M70J6blxyrUwuzkmyGzQPElgql33undycJ4Oeue/33oNISfnp0sDD69OLv4dGYF/HKAJkHIn/6GcZBDMDofHgxZMYSf3N3huyGdzJu7ppFYRKFGRfPOwVVwaQvReDchxClUj364IQxqKSqCjgPOTgzLNIeMBYEfWpx+bqQWvUESTL1i0Eatj0ga2BZyWHEQ5cE0Kq39XKsxBKqWkCxcyxInFRkBrjXlE7rv5z96edOZODr7RlAD334W9S48XqkyOS+Tc7Z8JZDkyLoijkeBe4RJIOB5BYXxRAhuxOJh1OrDw0A+4HJMWlpDJhSgVakhE1HQ+tPVNMGlSVoUAlxPoheh5ZThtMgIKMGueQpD4ilEIP7vVU3MfhrKgRis752G4jQEEiFofJTab07DzkrfFXS2ZXdWeq64c+yCywG30hg3ftgoHKzTwYk8UfJU9sS5HPnyxpeJL3kHrVAT/v6A9vKoTPkRXGOkC+YD8AO5vb0t9r0kzfU1lBFo1Jz3Sha6pJ3FMxU7yu+sH711sbn+WsfeDaOZVZR3sZZIY7eq4miU7AQazUWmwhB6ZBU6aWfQy273PqYKBZ7nod+eTVG2Xh/lVMnVvrg0VwlBt6su6a+/PvqfPncPkNs/PGE3914f85hjYoYbJtXN14fNncE2jZbcsQ91Mf7+0DanIZyO9V3Bgn1vPJvMIv0lTeI7gC/PnbdvUdFJ4MA1m3EkDrYs4FSPvR8c2+78zB9nVbMwgz2V+Lnt/1/cqv/rIoGd39GG3o0o7Nbob5ep2wQpWHDjI5UFI7H7BpLd957L4+taL0BSNH+ptmOcX7oU08zLll5FYAguNxUB1z9wct0Kvx58GanffTDEqMTf4tj0+LsDE940DukRaKRLJo8h2piZzgviq3HFpXIMEv2T2nlQEHTOXafciPH2bSkVcMp58713LpiiSPg4g1vqielDnkZSed9xeKb8fTJUoKAhWpDL687KCDhYfQdq21F16yeSaFwhS2dk5lmv4q49UUuUfVAGsikSDdOAnEdNATsgf9voTUM8ALEve2J9TyI75GAXWGN82d/ZIOouXFnalQFJNknS723Xkq1KsllLtiW4r++NULpWS9c5CjFN9d2dfo/81teNvt8ngUOOg1q80Rtszt1cgaR2HeIcE7dYPN+HP/orku5evnNBe+sDay2qzzHkuXIulNu5UPKc6wQekj1A+4OCadvt5IHDQ8uorsEQOkPOQ7sNUy4slFHji3XOi6aR+gOnNIG5ZZq12RxWvoV+WZPyWBEv0pl3+N//rixMMYaH4cwbeRPfgfCtoIjP/rqw8XNh6d9Wr4ubcNw0gVAR7DEsA1FCZ4ndbhHkUVbu/QV2oAdnkjYCAA==";
59
-
60
-// MeshCommander LMS (GZIP'ed, Base64) v0.8.4
61
-var _IntelAmtWebApp_etag = "K9Nh4xaG0daSPZ92hC/q";
62
-var _IntelAmtWebApp = "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";
52
+// MeshCommander for Firmware (GZIP'ed, Base64) v0.9.0
53
+var Large_IntelAmtWebApp_etag = "qHjwXzQEHWk8mJCt1CwV";
54
+var Large_IntelAmtWebApp = "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";
55
+var Medium_IntelAmtWebApp_etag = "51CThbgkPiwQuw450CTF";
56
+var Medium_IntelAmtWebApp = "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";
57
+var Small_IntelAmtWebApp_etag = "KsmoOoCcT5qSSljY6Nv3";
58
+var Small_IntelAmtWebApp = "H4sIAAAAAAAEAHq/e7+Noou/c0hkgCuA0+rsdhSHoX+Fk2zfMAPpA8Pb3nvfrwIL8HnG9hqlDSf/fe0DSWDJ25ZuWboSV/IlXkmVeHjpPj0BskgmKCdeTSeBSYm8KCkKg+B164HAHl5WSGBDSPv4x47vk9/9Xz7wP1KVBuKpQC9TklBSMvnikwRZgZMu5GonPNJzly3OSjA1UrKj3N9O+qAftc7+zyeNXbyECpNcmQrIZ0iYEVeyjypQl0piIpVNKbh89AyKZMKty8QjC5TwCgp8rmXhlQbzZMKAILoa4xRqXC9n/NcPv/vxEHz1WaESi+SIwIdUsVPTYyOu4Oj312qPJhfqEJWcMZRxriT5OVRcnCIwHMTMK1HskXgGM68GWfs1Gp63jjV/hdELTXGmhDJRKiB7jFP7URi1kyw6lJzQ5jQFlz4pHQWXhcCcbivjCrJL/4DpIyfrustKPwMh1I4iqSRet3Y1Gr9Ggdll49E15Y69Uq/uWeuxcWQ4C960pdmiNDDGZWF/nT2I9rzmhKwhPLqGZsqA62gb19IwDZZ5fIbINfPf+JWuCU1nW61W8bkMmxu/YaippfvQNi5VgvUZH3C60sc+4WFwW6eKSFXR2lrO5bwZdPDfJ1gPE6xH+JYn3fxNxHIcMZyDuSuQ2LBAaynHlgt3O1MrE2nFJaHpT+AUAOLzM6cB1k+rmpPrQs6PyOJ2IrtRvMxgdzrWG30cAAWLdeydn2mjCoN1ncJdOBf2BOJ8DGgr43LA1dL2y1qFKpq+b5qmkK7ajfDJHY/ceffIRJJKPyu5YG8pxt4eBOAWMUcbkO+EyFCIu5fxQh+v9XddujCljyPVOD+rgMv/ARau1mO4y4lzjLS02X0nQMIHwQsZWVCbUsJ+2IRhQhfcz3fgjMouYaoMQ3MbN69WgjNv+mHw0frTj+6kGzWutxZcIhi/MMA4SnqLlNcmnXnTNGdhnnnB67OOd8+p7ttt9WFzkZbQlhDYt/veXo+Ho/rvz6XTV/RrDRlGUh0M6Hh4FNpE88GILebD8xgMIEfx5i9S5ExBMxJ5aw2bjteO8/BKbGHgFDsl7Bh1dbiIeXPHuPjPMItOBm5F+Z2abhfb+SYdX1StDQIb3Bm7+XA/RziXSyReoenK69U1hTQDDMdx3YaLrHo0bjQ5k9J9mZ8HT6vw9KOte45199ZVJ/Qt6Ly5EzT0OoCRzVO5ssA9nDRlSoZNx4tT7Qtdq4GS+QY1grtzdr/6e7yCAqOdEW/1/7b8yWt1rKkNA+F3ySmd3tJHBVvCwpaBNd6bMK6fK82Il0/vyXmnXqfPH6fRD9jidnPDJnlCASRYwgEL9/V1Rg7dXPe9szud78/nROq8sr3bbR/rYmzo+3PT61wmzxqc1EHGuzzcFpNwdLl0Oh1tjhBQAJiCBV9JAvriXD0VOW96fVvswuOOgs6owEt0V2Ws0lgkHHw/JnavbQXuckvFQwpTg1QO0gtfIYo3jJM2iW3atvMqhqVYZES2+CBMnAy0ix0xOlczx2xPkNPpxMQhjPYl444r4vVtPkFS8gWSTQTSEMnQN5I2zF3fBXJ8++jJ94r3H7TinBJwyJ1QhSAtADi/V1D8VUGmS/asRgdQXplWS69Jy53kwXqg+K3rGStfxcCDk+raLD/uImb1N7swJ/K6gOMqPa4zwqACu337K9vBg2a7YCZYNDDD7Wmi/jM7nd+zD/7KfqlC6xBYhSdY3ab1PVoyI/fR8AZ1Nlc+gsyXa3+YbI1Vk2DPHaiV9QyVdHplQGms0FUSmcLQy6s4jFfSmg83JhyroZEUn6h3DvbGcSv/CqK9TOxdy2ZRjS3eeVQyzritNeX6HURCNj9RJEOQM1bKfw8eAMEgSNHSTHp219IDXsHDw2uAfhtP559WD/3L3/3s/LzyP777aNPVePXpkpKpP36xj5ys3+JMxY0+OAF2trcZhlWfaanMCmKL0Dcu8kSFQRyEBeWDNR7UHywGdtWD+qx0KthHEMkPs+02Omob+WeDRaecAoE/LwkIEwzaRm6ni4+2y9ZCJhDYasepEHslTrDZBf1DfRESxmEe4qi2DgFp6uoQCFVmHaKgtAo0ARDbFqYChEZFHcGSJnYwuOq0gsx2rV/WqPXiTNSEF3mYsz83hD6x+neNY0bu4kwAL3gCmcRFzCgHo9Y9PjpmxWQQfkFhMLKQH2FKRyKbZoTwIiISxuxtTKJIFuBaMJWb1GWHmmEAVoC+8Pg9ajGkFhKJy6gl/jJu6QtJ2xBTG3JAItsgB+hnXCwhtJit5exqLU65VeCok1EX/zMSMLoMU/+vIuVKNtuEWlLWEhWfwNapvFYUZnBY9fAP+qEpjoFkx7tOMMw9PT29OAOowbNb7XScByFNI7zhpqEm9qRwIltmG8z+TWHgMbFfhmyUxH4U+qvRf+Ij+9i7wN58Q9mJQfMc5wW9OMMvaJ1deB2O+EDWSU7QhNAVW6iO6exAdDjeO5wFLDEh6CoW/ZIwiXXs3g7sHseefmE6RtfJY4mhvYujXGOeZCxe6CiDHRgDjnBL8q9JtkJzkudsd8p62alPwewjJRm69H1mVzkgGjval9jbSkoNDAxLtY06crDE/iBQXq9bKa8BQbcNs94SnAQTzaN4F2HMPKfoQS0KRiqGk1aQUYvpLUVzPwvTvKVW+pn5CrUmRVBzS5Cy6kcAzpwpypt4QdPzi4X3UMQxmyi5XJwt5OEQVA00UNPQ0w+KoVzb+ksrsWGNmg6NuKmWzweBS7nW7dZoSCPOhpW2W/mRbZ2gJY4oYS76zQ/PTt/unTfpv1Ol/qLvD08hRdtY+SuKlmG25qeRPiVFFKAFQUUa4JwEJxIHSw7lJcoeJTRF6a/Pzihhw2G+aQsXeApzIojJZzj4EjK8zSmm6fO/cjjbqKvbD9Pr9vyybVlWv/sGGrsFO6FshMTtZdYSzdE4YUxIljF2cZKkJCZsJGf7RVhL9f8WDGvFAkHhpRHBlCD/ifgr9EQydtILD44ec6qLekOx6yOY6iaHywyvCZ/qNE7dBmqLcRBIJitX4m+NbqCdh/azNG01PWWEnuxSXHiyDZLpVnrdUgHN9OYMomKN3ZEnxyTm7CAmwcb5YJZf68INZt0dzHq7JFeO3SDUU4QUqL+D9mAXbdOdGywGVRbDHSzsnZrX3b7BwLF2UevUUOOZvrC1/gCyBZXK2MDIiLuC0yIzSDuO2r1nQayaOxhOy3CEuhNivuHrjDCTygidRI9Hx3rWxYvZUlgBHyepQelSDRaNtYk6JnV1SgTnjuJoncTeFfiSNxl5PEeXNx/QAwnCTN67pEmWoyRD7z/doKUQHIUUsdVDzhi87IzrnSBYo3AbKE8QiWEKCvPThjjjdP7S6r1PvpLskkv/j6NhYWoqXIAK4yRHKchKAia/qbyQ0oIgLGYgX+Tzp5oGVTFBokiKMbL4N+huim+mt1XyWprsRglsaVWHwC9HQIW41b/ZpR+PxzvyI60TKQDawVZeTsRKbc+yBeKl1qj1kOQ4J+iaLLUkKsg49KjNcsY3SYSzTIb0JhIPwL1Kg5PIFAmZz4F8vlXK6iS1D8njY0QQlDGI+hkhMVonAQHCK7JJM8J4tzLCDk0s8g45EiRfY3NAJIozRkqJ9Ynlh1KLpeLUTZ93p5pbz8zi3VbMaRDmKBMWGAhnh6ic9k2y6sdNes8t24MklvKNn1jSQlD+RKS5U75JyZKDpOBr7D+F8ffotnXPiQvXAPppNfiNhnUo61JOzLfNPTMcjOHA9AzVzJKF/ZezUwGrUSDwduTyxkkcEz9Xkvjiu9yftxzhiEBucPwNOlQef9Tafmpt5VKHuOdNQir5ksBw+9KnwLy+1JDmNsRdSrUDoC6rMhLhPPzCUgQfx18wBUKwNsTd26jXsWR3a9Sxtp4PekaiKYV9dZdcvlAXwSOJgfOaxEVVH+ukoIRrJFAflR7FaJHKsSI1RtYsPZVj8HE7Ch2uJMW/A6uEBoxY0l/I74KGB1XvqxmuuXHgFNi2U7Fdop8mCRjX0tpsJm6S5qFyPJb3OYzLIBtAP02Srwbc4fCPaRnqcuh1GdjhwBsD3+LQBwMqCTBRjQFBBJy+MdL15k/hMv+pygMS18uIPUzBC4OYzeGzjgF2vHGeRe3PZXDPm9llSN+bOWXIwJu5ZcjQM8nbljfrGiDbm/UMkOPN+gbI9WYDA9TxZkMD1GVyWgYMZLcNWJ/BnIszYSIqPoqT+HlSG47i4HtCDBgb0HhPNiy2SMMVjkVj7wxrWPP9gL2akOi7ohxjz24UFHd1bFxLE8G1hQi8dF4kz95bKKrRnKcFZbEVvqPjuwb+p5B8ZTJEG4WsnKlq2Zr1586aSvXt9GrKNevYnQ3bIMRR8iiJt37fDuOAPENKadVcgEyn03O2gDZ9wkyt3MXCv7wZ80Ov1ys9mboUT6be1T2ZMhJuCJU1bxfsnqVa0cz1G/G0peeiraYr6x8sy3WZdPLbbDar8kfwr4UsSRV02K3Jc9UrBfM6iaE35wLK6GZHx0aLSnHsGV2Qbn3ZolYqq5uemlaZXJLRNi7KobgxDMEu4YniqBq65airobt9Q3a4Xm+wOKeGkU52kXEEo1XZU9kmp+TALRG8KqzZKaEmB8xGOAIWyqkvi0bvo0Q0BXyFX4opZV2SQHqE7VcE4kMFGJGc2WKyXLYOluhe0vrxG0Vy/vIisbwTWp9oK1rthc9gp5AilEgpSbYOKQ2TuFmKSuZxnfg4KgNVr8pMPS7jjQpgQqeKqym695sMxzkJ0MsUKkeLiK9ruPUsUUjzNv/cBg1z36M1N7VGpbBi7XxWX8eAX61/UlNtd55Xn11CRllEjTcLljw9P96Ecbgu1miA4JEu9nOSUZZS50+oSNl2nCDGi2Q+puQEWe3hCcI8nvPq7Bf/9sO//PJ/3+B1ev7j0fFP7d3nuHv4Oa6xj67I4ucC0mwhxhZrlZ8pZema5OX28jPOYtCmjJDzZL2tToUUFK3xBmWEFhGTLkbwmIIpi1KuIRgLVC2E8idVeZ+gHIwpxhFKMpizQpnWb6NEmNnpbmX2/hJOsTdmTEicfyDPr6iSreU5IvEjK7JavZZyAL7AF7V7cFSuKcMlEqXOKYONk4Cg0QjZ7jGSGda/w53pOSIRJVtQXKwXJKN3LOERqPIa3ZOCIiBjKOU1g+lNRCYAUZXLORJ/JEk5ymQ/zNvcZyHTN2wwxzf9zpww3QTVCUIkdm2UBZKzRKm9NuDzFAXdmpVGJJXX0rb+X+Lw+e5BSmLN9evp4ASN4TwZZR4M2b3aMct7uPxcj+bAkEJDR3PmmI7LermCp0xoGvsJ+MFmW1H3AVsHrq/L9MgibdVWe65ReXHJm19TP0uiqN53Qyoa4QWJ5DEsp/t8u/rQhxL5oTdnHxGPa+gG2gdozOEXZ5LGItuTHA4ELb0cOohKFK7DfAb3cQ84J941fEX8OwLAQbTihC9GtGG9SRL/Kkfii1ilRkx30XfMgWbapVOzwQ+bDV4IaZy5RZT4q52C+x1PvxS5T7JcSSqowaTuYTR7HlyqGJdQiurhMva9q8m0rckJSvweggPmyqA8a4OFt68vbzWCtYq3rX00X2IItVUifvMTMHRgO1TO4DZh1gE/FMpIoPHek45tKWe0JYKW8ioL6upvoGhLih1n2Bn2+s6wy5pBX/GGGmI2qMhuVJGa3bEaDNz+S9RFvu3sH/hd5yXyf14cHW9b9zf4maePrqPlj7I6bp5ynyXLMCLo9tD6yrfdv6fc8/nV5LA0xLc7zQKroh8kNDPXLEzgOcihLLsHsTR6lp/vLx10P39vtGIBDuCyhJcFc84x9G5g7qFy9r5FTjgftpJqPL65b19O5/qoo5KND++v7tsP444+6r70oaf3+kBH9YVvk5iU18nyimzDpx5orn2j5t4/23brjfeaj6MFq2/hynHAK46eW7Xk/ed/Y2PBtwf/DItrbFHUtZ2a49jOMOFAmIA/WIWwyfahxCJ7HW2hAtYVs2koLlNI9ffC9V/y5JvxgbiBOi2c7xtUJbHI6jW1bzjrNuaGUh5byGOHKd3Evjr7c+g13aUkw5D+ISpeZl3dIxwEUG8imF2TOTbHdMUtsUqcVH8cxiLtwZGivz9lu4GyXUdZ6au3PxOngYlTx0Qxql7xwaPqfY79UJ1d4Ln71Ltbet7Ldr3uYbgG+jpDxzqY4bxYxCRHbHWrw3yaYx/M6zc4JywNPJCPcygf1XmY3M4P5OUezIuVitD9zonJ7VXv6f5FGg7OHlmTaOr81tdzGNPxluC2gp+gybvxvXyia7YaprHALSUAkw07eaEP6oDHWiTOD9yDV3IyeefABULwJC9j4qCjdRgXOaHHBzLr7cPsw4drdER5v8pk0NQ1npAlZnyUjCFFdqdjISnqCeITohwBfTY4tCwkuZw22E3nL2M3/X3tZhFU7MaRreIirdy/PxBKzOcDcra/8SPDhgZyKFCPH6RP7qRdy9riW5Z3N0ef8YqgZZbw18ZxsNhUEGyFYAOCID3HX1g4NF4ODIfenORokSQ5EiO0bMWy3yB/IbRnk0wodvBdvbK+c1ivTLAFBQRvw4Te44KSxiRCTFZzjX1+ewWKw/U9JoPXHN7gk7dMh3sx1BEMrlN41u0TJCYgmLEP+7xI9+UMc+uWygeaec1AtHv5Uy/+apzuwbUGy+DPZ6BUTkGEz2kW5TrxV9yqxTu1PcQwMAwRYFRe1yz4+Ovs+fk+iL3CqGefwfDe7OcRIelB7BVGPXsKw3uzZ+9rFgnOgv14q+l1jFdyrJkp3K1v67G3G6gf92BdRaozfVWMLviUZjkeyDLC9AnO0h4CaLMNznIEgQTNHOd4SW6SYB9ntp1q8AIwf2n8qopZR/hhDz5ypsGGQRGAm7mIHvEdc+zXeB/TLc03OBr95mbGwqdOM7xXXNBmG0y1Xz/w4Ki8NUw2VGxcHYM/r7+W2CNPGX5HnmLxBpWWJ3CfO/k0AYnuyhkvH0LjyRkbRjBuot3/+7SC5kg0NlaL867KyZUo8JsmuJtc1SJOQvxYQe1IVBiME5qHvsDVMxep7KRgE+uSSN+1XrvCtP9iGld9GngIh2wziRRgpwx2JditB3dqVntDghDvVy+HQfB/zMzhvALqhHwJfVJevvM9yxcC5Qli2GlqXnqr0fHk4e6mvBLuWfi4EOrAc+K63yW2/B2frEjkqCDcUdL/XISkPNZVe/mJZIuEktJoT+2d/sqztGyB54f55qD9e5hPIcCJiY3rLjk7FfKEs8soAYhxE1JHTz1D0t0aE6KpV6omVh/zmT8C7pSrUrdf904Xxz6Jdgo3sIz3iPozSfaQxDoucRjUcLh730hdp2Yf1+1R11jGsIbJhMAjOokoiZuvUXVOznGdVin/9bY3zzP4zWqaJXkCrE5pjrOcfg7zpz/+8ahhdLQsYn75e4SP/yCf1lij0Sh/CulphGnOnc3d8gifWMd/Oj6vkCJxYLIxx+qYtO1fSCahYiB4cvtrY/kBeG6x0VoTMkj8Yg0vhh5JPo0IfHy7uQrYjD+p+Zxfnm3+TN6TsLWNM/1XwO+7WQmLYDu3HYWnBXpfW8pe2Wwf2XESNikEwtVC9rd/MyPLR+IC7/VcXw9HmhnNjEb3SJZNGkxfJYMvI3URTVjEb5cZ+TnoEOkERJm+wrIZJfRhgf4ioz/R9FRyMtq1LN+i08Sl6b5SOpIBuT+Jz198evtGRhmBUppCq81UFTcn8DzTkwtQudttc7sIs91crsNC6g232Wq1PLe5tcLGZqs8gLPbXId7pRJrOYnRA/p69f+mtOHD+aMk5bzLZLplMnMSv+XqXVLJ0f2yl1Az1eu1K16jIRQ+cwlj9VBKSkbpiylH6mGZXt2kdpsmVK7H+F/So8gSxRS5Hee5qUrlBF5C3JQQsE7Dv2A8szYlNn848al2+2rgqyzpX/mkrw7fv6vO8apXRsEFKXY8+go0OXFTSnM8YpYmsGTKnhslqucxNL0oZjuVnbGw6IypxTNoj6DjiwKwS8BZEWgR8OzytAj+UbOdny4AHKAy4DKbxeqkTBvC6wOKZegsa1+SqnylwO8gLQsTOmRKtqnu7tCwUiqepLTYOwBwolJwhhR68ZMIWT85P1dfOXiOGDKKAQXSQltaf5z/cWLZJwqbu/US5zX/sOzYtvwNy0bZ/XggsPoHdLJyle17Kk3iW84TWW3IUl5ASeUWJJkOc70ylafRNoJsi1A6Qditb6kgtG0egZQNy6TM9YunqzUhrWhgLEdKM2gYe1mBkRAoySzLVrz6hTrknWp1Z8wDo0QYhJB4ge92MR6gAmWNxHJuLDvkJYqd56o1U7bXaPLqxanmwVyILC5DUJltewg/wpPSewqqfa6WL1IWxfr8B/v4B8fKRytOi+cxn94mqItzNYwBmbF7gtx07ql25Ad/mFHEVbx2i8EsiQbRhYByW5d9y/4Y2nwJIrIBXMRGSwt8sPHo+CQeZuUQQS3YhQc2+pw2F4ppbZS8feP3B+KT74go9F2xD4G9yLd2rhfgX7bEzE9FRSIUsRiLiZjyW0bF++nuDh5d6KjDtNup/jLilQqh3yTlv6uqo1Cnp9S+K+V4F/GXJ7qQ+ylywH1EzC8XkwJ0KQ5UpgvVuk0GwnsSpWN1ywnkxtYIMtVIK9F3oFn0XXx4+Kjhoz5A9IGCCrAUo7AkzyTQweztc3DSU6BSUdVXit0u6I4RHyBLoVUe6FZ3C/rZdhDBXAwrPafqP5VoqABnKRCMrzd+3T/FK5DwBFq8uEhmKHOYoUwhXULy9s2Li4t5QsKDaRXvgGGT3YlvfXh/+MkS490xKLAXIQ4v7YQb3KTbOKghqb7aLGc7VX0bsWnVHBDAM+Rimqq+pDTx+fnpeSER5nWVyoi6j+5ppfK0StUJmkUUVyoRCIW+Gi/wZdYvh2+fvNs+PHi3zyw7SsrPtjh2iZCbMeX/CN61alO7YYZEdxYT6QSTroEFtj3h4/5kIKP81GGCRsG3ANkYy/e3Edb4t9FKKfPbxyj68WDv51JFoai3t3EkMLWDZxUmhvrGsNQFxEQMFS/plRGB0qu6CmmUSGqieKUKKvLb+2SEBRlhKuM2T05EtxP/Ngz9KBEKFjFBTJZvCf/MydcjROB0s1YWmIEy38oyPSJiB3yWQTrSmg7+UkkogwMovWa9dxDwS9U/GEjnLj2Y2dx6qy4mVRUuGAUWxyfMtg94bvVxpbI+VQV6bI4qlVxTS9pugMKCbIC7PIkXkZrHLMaj5vHRx5eQPS6m0pSqmMt+KN1WzWu0626nJmK57bUgXmu3OuLvUPwNY+sMlJ915TTgqj+DWdngTrJCtZvxuzvXa+NcdovNbPuHOpi2H0mYGrOp3e71mtx26wPZ3pqScpphFMxsIOHQOcxNFUcjgbWnsj+WU+yxWAi/7uDO4TZjCHMGdj+ssBiCYPK7v8PKWIwr4d3f40oswj/jP8ci/pNhnA/6Uznp9eoDm4HVJ/Cj+v2JaGxNbFfU4NkQra0JUA1+cJv2DIVwyAMD6S3hesJtCc8TDdERbl14jqgL1xVuU3g10RSuI9yG8NxBv741tSeYaVBn3Ov1at72lFOXkOSqHkCW5v3tbWiuc9RjCg+qIDRBqHmY5ciWDJCQfAAqbzH3T+BZafGK2yiO6KaKnarCSuHGzFCuTo+HtJBOp3EynQBiPMjmPqRfSBMsXb1iqfrhANtdzOFh0VVcUHdiC7jE1c+f5wpP08NmOn4GQacZQ88VB3nB41TwmI8lBnX71BKs7rlv2aENG6fKf6IP2vT0INzdSSGI/GikfzBSAXwN4AW6VrE29yx7DFqdG8j5sW11dwokmEK/h3V6Dv7vniUmUmuqSwdzD2pWJ2rx/voEdgthhnTxlU1wZN+UcpJ6CazPny0AMsuY3JLpDBt74rs7swhZhetp0PGCfhnCoL2w2JY/5nSj48XS+hGq0o9W70cbybJy55SvlLhncRwwgAWCC/lDG5YabseYHVwDMrLHSyqTsQwLZRenZRevld1Ubm5iJTgBnnQxOZhyumt1z3zLt7qWmFNsR0d3LDFNynpss+nujxs3X2YnC/8M81jgAvn90bcsjqqJWb5wZlg4MY9XC2eWFM7sUYUT92drhYAwLIT1IkPMrhkOaWrALDyDvwGwK5BOrxTOYKd4Ricm8HIW7k9tObFnmAEb0+fLba7hVF5TKi9tEioHW46Xy/VJ/dfVdcrhtlX0EThgrVVYi4tQerCaMYuRnbpZ1CAtOS/qW6WriG+m88iv/fJ9hsJFynx2fMGAFa1C6z0jBir+AubhCrpmWIgfJsFC8iwrbhCl+gWRbZuBlRbjsL/FYNwYkIAQ+URFPgiQ4TIsXSQpGCe4XYoxvr0at7/pURb8q6CTgjFkh+KwA888UfM45/ZIEaLSbDRqDR7ojrq2qngIhadI3dxSUztFPxvDfkIvnouXGs43/rr8QpcZbcxBwYuN5KIC8CEe4+pYL9M2qD5DLSRbb/x1CvVfi9z4a3F6QkaiENKq4TBJpiLgijhkfL0IcV4dgxcAwvNLhIDTX13EEBhCT0GB+CaONrS2i3kcDwEEvBAQIvryJItB2iFWs40FvDKPL9wOL798+Ropy9SIDagRZRn3pKXnHXBN5MYwNiGzA6CvblQXp+FGeHGqNibxjYf5gv8ehGFpezKEk0Zfhg3wVkxjIMGmS+osJnjZWxq6oSBmnkAUIABgiODilBinwRswtA6lgZsHs/OrJ/vpPEoMYxN6ogRmohpC4bFreJxec4E5KkJOlcg7o1dHYenkWq5pt+eq6DAMea71ihIHeq5uU1DbkPEtxZfiSolj0DWvR+bNfKRnUoSQRomhEt9EDJyUGKtBqblq0ppDm9VnoPWsewMBdMgGqz5G1OXwOI1E+G2OEb6eEWvSa6zIQ8SmjIYwtMFCjiATcyUlRvDqhGM4w0QRfROXiiI81TOBnRG64Y5eIsu97IyNb3E81B6dJBJ+hXRUz1Jdk5agj6g9XEtqsv9UiT0l8M+BEs8wVGpy7OfRpKW4b4QbZIuA5wWP3W049qMl9pPN3orzaWNl9Hp5gpdoD5PWnvQnFhfUoyID13PbXq3ubsoQZTj8AUZQrfFor+aXY+R2FY0x30t/BJ3KHK9pjFNlYETFl8gNk7D6i1TkstLDZ5MDCE8nFdbduIg8nTPEvZAOPD/KKNAry1i6Sx08zyVRhTTvlVS4uoPpQlidKgnczflQtiIlhhRLgT7hQDPIq6G9QMgC1s8zqDUpF4TxgJgjkZbpII/TsGzby8y+1K4O+WF1HrJ0xK2CeSCTpMQ8z8DsAX2PTc4xuRulTNEJx1wuoj6O0wOe+GEmqTqo8xKFTdSKsLB6s64XIJD4pqiZAH5uXr6WJic+kpboAQm0leOClbFeSZmULkWh1LtQURLGxrunFAOgACRwzMVsj4tJPl7H9S8GmmKOS/NZNtVEI89yW5RmWqlHTUTD5C63gp0EMzODGRoRUy7OJARytXhqewL+20MuLuVZYRqHxGc5UpemPl7vMnFCuN0zY+1bi6feCJS4LwuoOdZuA1gCQLspSIDxqyKlvW8DWmBVZPucB2DcS2gJmDfMLSyDZTq0sTNMrsE8mJOrEmBLVBGS3d3V4MnzSSPFzgTkKqE1Sae2hOwv0erQVCPZz6zoOr0ZmTHSSUixOU7PtWdjRP5DrAUHMOXkC5iARBNsO3jTBzYVGOmnAUVcH8jQ2ak99V1LSoxVKugF7aIDFKaqXVkEywS+WYRvGngRLA24V4T3UngRjFCO3RR6Y5fkCTOxIKe555u2O4dUu7n6Nsem4WNTZHPj0OX5pDVAXoW7+GBhtvBACVyE3M979lbxBUZ133ShHjTDk1BuOsEz5roCSbUPOaz+GqEGECokbfhpEyL98AEl2MdEicmgio3krJCq6Y8kUpotitRNXaBqGSqz1EOyAkXbUFDlX8d3DB6n0+to1zF43boKOBdwuc3CNeu7HhIUthBLiGqJBBuFFzD1BLO9hgGbpouiEpbNQmn9XP099fdTMYmwSN5aIf9yP3l7hTyM7qfvrND/rO6l95wVerW6W0FphLNeHTzXp9GUWlB+BGYlQ7B43PiODHlRirei4NeoXEOzq4KPBj6aK+rWVhg91YzS5O4Kfb3QYDNxGMqPHAhEF7EsRRRYNnwdG+qDZalCHbEyPzvUc7IDjImNy5PpCTg4zI3O6PxXXHdhHnbFuyNZvkrqq23oqweZ8qVW8ssnz5VKORyYglTdjdxLwUJxv2Ae6L52U44qlaxjHaXzIBhbjFso9QpNoIYBRk5UFbxWCzWOuaC01uf4JoppbWAJSLpcZrMVZP+iJ7O5CvAwxneEmZHiRHEM7PHJwpwvYRlgf7syi/1Y3SfHgXb5SZXNe5NO2y2yQyYfVIFJ/twEU9UJPV/Qd38kREUy+kAQN2hCQj89HX6VEMmQISKnGvsx2V5bSARlNFMkSrEFUpkFU/oUgqmONDkZ42c8tgYDlwRwRn3EOZloZdoppjj843QWcw6/qfdpjgNUCu/PBxmKxi4CpUicgiyXVMiRAC66uMlP/VlfpmWJaRn4MwwFlnihYF9hl56+RU0KT0BgglyBFQsqHZ1L1ghrNVLtrp1c8dXSLJdY2fGHl9le+BfWyu0vRUxhZ2Rmso6UoypeNI7I3dB3C/FRVd8BbH7oAOH2qLrYjnzvkZShXytQRvilyhW50Yrc8AHu+gQksP9LgSa1x9GeKtDFCVI8uMvobqZ9dYFL2aHIb7GEaCbjuQm7XY8OzXQzORziBaVT4h9G1T0xlDn3TLgDIKgNMtoCi9gMzeJuD3mgWScdbdEiEpJsodJb9e36aiahvdwjSIQyERFxEjgUWhCHzB9Xh+qCfKuq4nn1HMR2B5IBEPf2anm4N5BnDDA1QDTz587+H9iIzqrV20UzIbhW8RreipXQRi5aL3cmzjS3UFtItzoyvYjz5gbNVN7M4LWQ29tRwFMRIazWRBZDPeJcHBUAWbasZ9InpdJNpkScywjJTzPwX5E+Rempp6HY4tW/2OJ1f6Ie1daxmWdazFe1+Jf7O/W43mi1o1N5LWZMletwd1dUYVWY2i5ValXWdrlSeRWGTD1YGPfL9B4n8x4znOV0cL1WV+0qu+blz25eMnCH6HMtZds7NeEKR//F/Z1R9ZvSv18Lpzn3daGHsO0XSvLs6n2magRMKhXK/vso7Y4IXHAGwauE6A2qywRpXFs6lp+E4wlgB8nICQPpdiFDDvdLmO4fj48vkG3zYbaNUg7vYGNJDZFF62EWTe5PVF/DzQIqqlRG1bc4zUkm+Mk8AIxgbsUMCrkBZRtdTNZxevjDgBaKjAeu6xHc9eoZogm7aG0etGUCaTa8NsQ7+XgH0tZygE4NAM0M0HAaAGjlAS0AtHMAF5J4OYoaUtRqOUCzAYB6HtAEQCMPwCTNPMABQCsPcAHQzgM8AHTyANCj7uQBdQDkpbQ6AMhJoV3GTlNbzmmkltuug5lcJ6WsexhtpdEaRjtpFC3kOmm0iVE3jZK5UlaNDkazjLkYbafEdYwWOXeKnDtFzh3PRDuA9dxOGnUh6jlp1MOom0ZrGE3T1kArqolDrInmjvvqa5ofkzNQ3s6Ub+EVhNYSSFUEM1kdxZS/j6RK53IZBl/U2NMfzmCWNyRSOpQanc6kB5FkSQahETnsIfBcQU4Q8kzJloMB6u6ISHdpFPym6Oer/nkiPYzAKgxjx0r/hhr5PkrARsQegU81dkHPvxI+St5i9k6Uob3UiJHCBV7WkRIwTqneU/wDPQ8LiwjaFWBp3wz32c0O9Q0J/3DojyUKyI+w1mDYoyb5FibXXJQOAxJNAY/0EyeifByQZKvUhHXHESeg1kzxqr5NVFqJm8Li/goGLbqbos1rLlgLiutb6NP1EQawF4f/q+cqFc+OtFyvIoG+inuA+rIuW+UiPLiGMegCSYRjImu8RZEDp0p1Tae9ku4WADDadAt05oThjXSE1glXIPhhBa3R5QhO9NBwhcOUcS9gb7si7ka6njA12hXJqGl9fPZ0w3FqVcdpwxn67NS9m+dWwgwAeOLOFfcMvy7nqUQv5ezlONfXON/eyHryysE1Nk80Yc1j2dYjVCXGg/ulpi23hg1ancOIDt2ICVZfycZBnS+NQrWcQl6JRoVWpQpqeQ6Zvpii69VtxbVr7UZiJHhE06CeJeXtNhmwflRTwZ6okNDjoKVlUYeDvhJbjhSeDwQwBZ17zefpuVJ2VMh2ua1sSLfteTW9LwQdUaVyD49kziXaog1PF/m10ket/ChOQ3giSZcrwPp3CtARaeSQoVYwE0xb0YmqVPDJRgKtKtBC/Hs1Abo4N6sL9bQumA0lXdHTXSWk6RXLO6mZqc6u49gr5YGVurCrA60xD6gh33Y535UqV+d2u6TOqYwaMEG7p3LYXeg9fHa9xkfcSJVncr3r+NeZMSAj3fu6FN1RrtZaMV2pjeKmAKhzMS8AmlzMlLzZmou9goZtaltuq7enN3t7N3d3zXoXnm5vTsG56RTyrvH0NMIF3s2Ktz5tMMu+sS1h2XPb4iJ30ANrIUCoT9FG3duUIABH300557cAwAohb/SATAPxnNQqLstq+SjHFHOBxJBQIQPburFsBNA4jwN5Xw2QzybEUQwBJCHTRk9nszKvE7Ahnnr78wjZbmG82zUr8lqgukfYyuvpUhy5eo0GnEAHYcnRcqcF6u7xR3RKN48brefi3kWYU1yEEWsMmvScCxqd7m+/plY6qPvtHiQIFDzsmdoC85U2CdMHq8CMO0+4tpQDlpopMJXNY5avjHti0+FCcbFnmzFrLUVIncKebQ+AMIggdiyulZjmWk6TlKTQaqvWShUbteuVjSNuMx1HILtNpGh0FS1ISQHY9CiobruovJRqu5G0TaSDVrVnN8SRvNYq7ycHacU7E9hPAzi9FD9JR1zRfw1OJhdH/LZoRaAJrtAmV2RFzd5OfvGMmLhKSm2NOkyokKLUfijunTQstdDdlLMPRVQ2ZT0fh9DUmavJ2Tt0nHFq+Awj5DzT8TMEaN+Zz94lLi6Nwii5ubKUNZdSAoBb4lrO2LXCbm7Iplxg/1cyRcb8iBsxz82ourBzAb3ZkZ7jzKXbyFXL28xGR2SifdW/Gsh1owaQ4Gh3LqHF+LCWBp4MJhliLmt60yL4CYxcqex1rwuTSEQZg0LJtrdv0Gt3FVxtyxsoPJAG2b6qzAfiJ9vWBXGvSv8LNcI1NUrrhtdeqYz3yLt9V2bCK+kGw9ONK1vum+xcT2C0YNBTSrmvp9OFHn3C3omfoLaCWqBtWqm15/Mq4DHijeE2HqPQv6HE+AElQsDfY7ZO9ztN+GgbbHp/pSMuD6UI7ss3ZjfN6DsJ6fZ/ACY0CKJzb5/f3meN5Zo1kk7BlIxfYp0ss6WF9VgTLm8kdsXalIVliOs4EhKmkySWzlsFKXupdmFi6sN68JN+S5BdCoRyk58bM0ZtrkyudkvWp9mCLzkjd8O5b1wTS1zwPk1X/IfF/WGdyZ4KOM4O8NT+D7TMUptrGy6hLJ0YiEiWzwUenA2F30koonJJyXtsmBu0KGYqvVlDz4mSyzWYpZNZyYmwmNKsO3XiKhbAuTpZgBm+MO0Tpifi8qJliIDCTCcCiPk+c8fZyvKl38778HLHbQMfp7ibFFeH5+qa5m5sJZNarvt4+nL/OjLx/mMm3/HK86D2L+Tn+1ywkherRkFlXp5Oht/xJUXlde1hhtF3GIaBgd9TRQyJqQZQC1Sx8DMFcm7GgsWeKjHDtdEQHjz1GZYqlfkRyzOTLnN/At8oPtlozRkHARVx6hJeqPyh2RKXpjnpoPCkAy5EeHKQIlmUIJPrIo8nEblgvkUsv6w2IewZl4mLodAJlZAiDaCW1H4nSt7S9aa+2xF7ar7Auxh9zxGH+DaYX/PET3AHBgQ64i1c07vw6w2h9zjeguPveD776te9BAJvC/r1mviAr9Toq638el3QlbEY0ESHlyG9I5Mx2o+j4y9q5teb4kN8fnw6xNAh3oro11uG5vjqeBhj/DD+cow3vp74jY44OLuEhE1XvD/E7/f6HVc8BebT+EJHEUHf7yUMIBbEtuMZsgRZE0nv9TY+ucQo0p5RxjtNVIGs4kImDun62STa0DzJUrSRIj6pkEKgGp5ywzBw03nIQw7oTWCfNkaEvgLKp70H8eL0C8GbjvgA9fhoTpEGRfCTyBRtChidTq8pkxh3dTwh9nSM8kaAmgakyeug3ZBCLfESjvicE1mrI565EKi3HPHMo4ArntUo4IlndQrUxLMGBeriWZMCDfGsRYGmeNamQEs861CgDQwdDBFr4t12IORRyBX0FWXKBG0q6TipTYAmlQrYOyVpGUhG1BZPZikPt4axFOnWxdv4QqVYl6IZ2sMm87Zwrj6k6draAZ/8O0JDar5DbLrqe3eE1IXqDwd49A27M/TkUdwZpH7AyMxbdbScSZgl59S+j0bFXuE6ZAiH3yL8rWL9vrYY6NAn05hQrZELOSkWQ5QCQoOkd5jjFoc4wyfOdEar7wKAvyaxjFrtOQNVTT9zjrOyMAPgq5oAukBQ/oPnkA0VoEiHetEn0Yo451HiiBX2sgUNCFDUgECUQy2ukDvI2hlOhdJZkLkHH8adUBShSX7OinDzVUMo4JBM6FBJfSvkyikXo/UtE4PwUjGEoJLSA0Hpuy20faeI4LyUYJ85QuPPvoN3CY+MCngFm3i0jZ/cmFiprEIYDxSdssQ3h9U4meSsgdLDcpsuivm1UCoIuSgqhlt6d9LtdlVV36sXZKsFyKvQ5rhcT1TRm73bLJeWlya+Lukh6j3js060dajBfG/CvvMl2T47HY1g1vOCgGJYPhtZIf4FYQKbx5uIJShOG4zJxzLBdPGv2zH2LltD3HPMI34DhAuIKNCwV7i7C4ltaeI8wbzWmA+EwThgXFojKY2I5BRTCghyfMh5FkV1kIRm2eEuu6dbawg0v3ZGvscfZMBTT2Scnh836zeEcZHurXLu4480tITILfdy9eVf1iJIpSxFw4H4esN5U1zl6eWbXix62g8TQknIEKyODsyAY9SWSpcmDVUCkRno0+lcqDT2gWZp2YnRVAXadH+K3sLn4oVu76+UdMRL+P8aA7hF80bJbVe8Fm/k7VD5rlBjH3rwY+VvgvORnlcKISN8LgUMfn1rP/XNx0NLWHuZn75ahThdCa+DeynZQLwFflqL9+K9DmWHWD8osP5r3DQKXtPcFHX/KaH/uEp9qNI3+D6tvz3wSXHxKSn64AjwP6t04+ndOvk7IH9nyH9BUrrtM/jKXIE3tDyHFM+rN4kuz6v/xHtquHiepEDNA23eIJmUPw9+Aw7C5cHvirmOq3k9YVZy7/NbdaLGtDre2NObIhtXt84S7OVUO1XHyp97+i15cfQEKotu7bh3taV2Itv6wcIlLeTon4rBaJFEUF+n+5Jc0OxVpVnnu+zVnWzWQffXzHry9tNnfVktXWt/GE1AE0uoEJqJTuHy3QPF0liTg6cI4v/H3pdwtZFjbf+VSk2fxDUI44WQxKbgJUASukNgQtLpaV5On9owNAYMxlk6w3//nkdXpVKVywa6Z759poNL0tXVLl1d3UXGJNbyEbZ6P+S2B2Jo/OMLyZFjMKCl4rDG4ub45bcP0YA2Mxq+NneKbk5WY1dBn9ZLcE6dxDe0BhFDdLN5AXi0jd+OjU0sMseiZIyJ8Vo3/XUzihuo+j7+a27u7P4Go980C7zxOTodMu+HS1MbdBk7Zi6MX9LzFTtMHTKWWKM78DeTMFYvOCIyB+8Ad8DmY6Ucwp1AVnmhE96NERtPU2YFT6r1183f8VK3f/CbjitmrcFQ6pNYJZU+mZ3RWvQKEyolxJxbQU9+nan/Us8tzu02VmETczCLA3NqHt41XP7fOdFfZzAQFg1z0+mIZuw23bzCaRP9q9okk8Pxa2qbqcsSzDk8H/v8o/5TjqroPkpP7ex/XqmiZW44A3Uxb+wzgRlgn3zHKYlxVWCnREiaOSUKtNycte+5weSaNJGLb87wsVN/bfg+Ru44VtxA2noDwQONKxMeFzP+JG5kKoLpFQzzI1qbaUS5uEumkuIzaprjFXqf3b/Hzbj5IWoF6hSbw2JiBpzjeBqrffV7rM5iikzZIo9tkSWbSHFzbnNRneXWPcCMEbHgLjjZ0kvlzx0cFn83lC19PlhN4bXTiIXOTrWF1SfXFFKdksRfm2BRT6UIVkFJ/b76VYUNiYjrky36x4/BHx5ctru+np/gidnDZaB1vgOjRXg4wEMr/5qMa9yDstCJoVwn6oN4O4sb+6HZfhyxbp4gerOp2/CJYP0914z/CntOltIWPc3C0MCg8qQkbdo0C3q69bGjBTUvq9bi6yFjJQtIUbx+RqLvoP0XNRr5OqNspCyzYAkLLcABvx83zHJTEf7vkLb5BnqL1srqO49Dv98XJ0+4Br3lFUPcufS38Md8Oq6n4A398vjGA9kZ9PeOj71F7YOh/+Y0Nh7cGowdAybo55Cl/ExfPEGeoL8bcfgmY3Ff03c8MpySMLueQJex8W53J+jTO3M0gnZwwi3eFKzRD2j+8HgydCpj41DAGHhsEQ50tUZVdEEdRAl5MKO+O+92PgTWyEjfd7S0OM24mYEceQQCcvXHKMg5Ey2ZX+EFQNSAHKMTHNU1x5c9N/sYudXTtY+i5Lm6dLrm9/9X0haNODyPDx9IXhwJTeTnE5Bk3uPH8+iG+al57wAM7w33gmzuHWgIcXGma6Ub4xsHaV7DXmACP1C4sD1VtOJzIs0QJyHMsQCCRHn7w8lgkKWLpxe+QnCPJMwNJsc3/+iwlIU2L8EHbEjbfXWJVat8utHXERt6ymwNBw2USn2pk+YbzDXSy/0YATHEqoNm++NwxcVw0GhYU9scpuy2NeLBSSPuRThjeglNLSd5VYgOLlkFt69gbSSRKm2np7poW5/XzR1QCfzb/DlZl9wHxlnqlq9MQtC7omTjVPJ13LiS8wiM/tEE3WNuI+CMRwNnbPaH0Q0fel5/3NmCcuVb9oxYP8b/eGr9blTVzrhkRuE4RgxotetMn+Kb4NyPWW9D9Olb6cZFWkso6We6URNspc+nY8QXs0FTeA0U4UUYlc+I04zcjfQcfw1z2dO+kxobm7uBr5ariJhYh2JT+3as4NjUOCC+HuTj4rgN2t1GWz77C6alO8bkNnuVTfSD5s9ikUf4Fwt4FteX2LyjebzgAAqd+bRenhJFQhD8L91RbhpQp+s8euiVRc8LTVjszycsZOYMwzPNe2nPgbfz8e3p+Ib7sXHaqc6YmTybR2Hj7twml8yqTqBGzN35U7nbgUqZu3uUC389dS+XtaQeJqBQUsukpAoEK+GsHPWF8x55dw5jANrkwXXhQaUwx0PrFfSHaOIA+57yHHiPdzGs7jObWHH9hbSRTYMHocU8MxJSm4BKIMyVM2AcVrLHNePna3SD6zrzXmWYWqie3j0HjmGgTiBbaQ6Qb6W3Zszm3wV47M0FsF2it5n7ApPUyB39GhckvnrGmZTT7uFZ0/Di5Zb0mA4d1qqR7JDDaUz+gfbEWo7rXqc2dHRYwXRE6ueJ+JU2XtefLIBr9uEk81IB9MQ2XI6DTl8142xQOSCMFdYF37il9lWbrdkZP4WPWM4JM3fsCDPOY6KXSYofSBZ9s9m/BPX5zQL7C6V4w0de8JEAzltd2rpv/NLSWSrpg56JyMNBoArcB9mYu7jFaxzeCvZyKjH7Yn/VG0uCdyMpfpnnNP+yu97AzOFeNAdw/p4U2O7RvqpolG9jCBesuiuhVNmica3zBsQ0m9p2JHl37aCnU/ChuJIsh5SqX3jmkYUka8dEmZlsl1DQx1HRUY+G//rXo1QHuuomDkpbov2YuqvauV5Nc1sqS94Q2/qOB5piOC+HzADugliAKcXMhoKEdxmJlhlmE/JISrpxu/FotRYQ1tD4Uwu6MYQL8HEZzdzKwPEViAtYmajM5bDo3E0CXtzknWoGg24wPZOENSZUl3TlJA7sRRyF1zPImom6wo39anWQc3avwNkFjsHh1VGztMOhCYzECt2cXIv8iX8CVwK9pSXer4ZNGLJZ+hJn+DOG9MdSeyk6h7toMq8jBOqZ2ganW6Ma48pNx960btTwftkcu832m+Z89LVdpWh4ujqxPO0ULZ/EeNNvSuVI1cqQOjcBTwZHT3sB3sqs9cr8WtnzAxSjntjrgmTi2GG/HGLrC55oCjm2yNEG0vbcMoi74CDU8hIWTnHH0RtqEg2z3BYyJsq3i2STVjjNwhuEn2NUHPNBuv5AU1ZM5FbYx2bwJc4bJleaMV+F6i865UzvJ3jk0Q2XHMZo0PXkQmLdLGjiV0xkuZdIk33Xa9zl+JSl9KIYLy3YRvvYRcSH3LV4XeOnaCn2Rpf6Nm/9p7GmG5Obk80xOoYO4M4H3vg6CSPEJYhrjrDN2VcZz8iE8XPJeFrz9ePPsgKFQuvpN9wzvYR3kxCKMG0vyYZD49gubOkQxYMkJA0ofOcZJ9iL11F6Csmq5/AW5y+g7bq5a48v4vGo7y/UDkpbemuTHgy5NYP7DSu+8N5rtlPvHKdpov1Z052ax5dgMqjiDJG4GE4uopz4bvpsSrbga1elJ501w6VwHJQi0l8gO6NPdka/dMfQGuuNNi8hBycRNrBX/9h6JzsbGGg6xqOdYm/vAFtbqx4Ou5lekDfiz5ygc+6xC4Ppm2zbXK393FG/39d12oLbffGNb843XpvNp5dFyQlOaIES2bPTRKDz50R7Wo+VcUtvMyBYpPq9SnEvv2292dzn5m2vGOIkQpI9cCMI4I01hCU9t77hWQxcKOCpXtq3LuwpaRZJUPgM2G/Oeglp4rUxCeelGy8DSfMTKOi3pxdnuO7eCKH5lrbVtQWMOMDTcmzURGG2ASH++K3WYvk/zojm7sam8R2g1Z2xdUGJh7W2swzUj0ax7n/CsTcEpKf7/DjC/b2nI1MnBrNd5iGRcCqa/mJ18zO8TeYII3bGH0frkoTxmoz8ng1QiEZspguobLbBdzcUnkbl1P4gN5J5xb4upbFQJ4yTBi8u5j3noLW0sckDfXke0FcDtDIf0xaBOp07UBGKXKL8iC4S/VKXjYqTyYFe1xSN3RrQb/aOjoaT3zAQw42kbM0liOicI4teDfRd6M6ZYY8zRHmRxPnKhcBE5xzB7PmA/zRV8un01SlnL0RVo/h0iKMgK/ioFiN3STkav8WH5Yz1BO+RtOUTLF7rsKWcxmGRHUKTPFAcFFgvO1s5qYtd/NIzJf+BYufkKxW9wGvswc6WZueM18e90v4a6E7AkrONE8Ns+r1hhAWsm3lY7HtgJG3u7nt5WQi/3910w5L+2CtFC0sT6N6bCFPFhcZJ8/15MqpJghPFwPQbU0uHP69+emVwj8t3Xh9HL7ZxMtknY+QobYA9DhqTdvaLyaBR7IwOQKlUbngEIwHjnC3SO3ixXZYNwb1tgJomv7C4ZTjAtrSfGyhs38w95WuWAEAZbS62r4EW1DrvRg6CgcR6Sx4eKc58VQVf8JHkLxAPpJ+x/RLM4ufukjTNfRvbPsobsAAAmxs3Y6XdgqicUmp4qo9Jj6IVpmNJ6LtstLpXbfs6h1sWD4t6KDkorJG+0JlyE/XQW8P0leFPE+lCoYehsFYb14GH2nusvSVh0GlcP5Nw6l5ibS4PQ5AiHCJmNHMAb4rO4L+/JNNV4pzxkojykATrOY2hvGLSPwZVdgGB9XzGkWqogXOSnXm64kzqoUxqxtrdCi3UupMT2X6N1gZMV+ujzrTWtGsHpvnJv62Lt5a86xJ5MtbFo7jR5xXWm/Qhp4gMeR2sOwtaq3m+4rEjjxH2SaCKcB02Dqa5SCk/APPX7TG7si9ji7boOmLJe+6Jwl2rDr9cv4ysdh1qWcbcJWz28nxx94qVgvGlE301I1MJnzPXNMFck6Ac8NJMdPeNegjl1q5++7i9FXoTHxAIfdk8+3xOfoaWy9rgwlpE9NsoF1HrBCJ0onBTgg27QEn0c1am3V7dAT2JqbnD7eanCJEvAauJlh+BgiJ2qu0Kgf3MF/taR7PwG2Dnjd/r+YzkR4tfsGuWFEg2Y9dhA/zPziWIE1rtdc8u1NzaAS+OCBvlbOs2rnwGFPHOoNk4d0BYskOLgvCE7aS03R61fcNqY3VcGCHw2kEO2LkDcNlCdu+AXLGQy/MhQZfywg7g2QJZsdqKtYZX7NqBi6sCeOuN/Vw3/iXFFHvvhWS1zJQNcLL0qOQSF+R5DAui1ghfCCc5C5zCtvloj52CnHw6vvmqKYxzHZEOs0EE9EFT+2UXwbQobLTqAfCm8ZwpFlceb/0wteYlB5y8kmzYvIbLW4Hj6XTfB4Ayb9sWfzkCZD12zGqtMNCHvWm4wPeV6zX9VWwN1HK53LMSQT8qvwLkvScsftt9ACszvsM5vUHoKV5/OGvo2GdRhdEf1TDx5/RPQBw1ZWpMMN+0b7wm1Y2wWQdzuws9rV6Dq82uvT+LHvClm0Nhkt5UI67WYS5eVuKNuxZfT69FrsDe+yof39JVejFu56tNeZPSutRVGTcri/BNXCOBJUg0Oqlw8eqQXE6GqXeBe2mcEa3yYpNEJpdNsM5sUIRmeY1FRqGBigVSh54IwM7vlPlCsPMy1wvCamNMzjmkhWBFMPMTRNYgyd1eKSS5d8We+dtLXOt24gAJwySXrvwxrojN78Q1wsuZkbFbkYfhGFHICFS0T2WULH5kbIQFhK/DFqnhV9eXf2QX619i7q2Lx2ggTPjoWvivdADfEKL3gx5BXtWmCw9ORf8ptugThwsMS8HRTU8zfNdWtci5d5qK3sqr0yFZvtrHysnlEJhCX+J8kxnHL5imveXRV8+oW7k5G4FhvQrD1+HFPtG82M1IuK9f+E3NA+kH+WY3MDHSxM+KioSt6psh/Kk6hG8NWYKEJPcdG7YU3Xj++3tx9eYa/1LD4H7eYtSIMc4/gZAyr9slrC90hth0hvzdZr+tLsWzc7XbJht33fmQKwZShKqqsExxnk+Y7Bf8T/RhtrAgKs1hm051eVl9voonX13HA4zw9ekNz4KTsEN7pvVJ3aBPehkdwQn1Fa9Semro21VelW7pPUHj2MpuwCcbG/ZXpd4jPYlMxCkoPXCQF/LJaM7FnvaH1pd5PYSOUF9m6SK/e09HX/Mw57yOyB8kFhr2GIgDGo574pZevLyfNTkC1XcgeVqvJuKMygH8DFz3798wt3s+vBiipxJfgfzHgPmdxVQbzFUpGmBTbwMz6atYGShhPcFAO1iEle5EyJu6jRDMbteyCKhVY/CAt3CsBB6Abz3l12ThNLod6CuNPuV889bS8+V555ka5Ou2v1OSnt8VceKf4rnixHpKyLbgkKpaTUmJR4+eiBRjL8mldz8Um8KAheBg6PTze5UR7D/0/z6LB+qrchrDFf4j46pR9iA/Uu9iqcg3CO93ew5zp9t5tvLcMiq42A5aEvuiEqs8YWbfqj+ApNPz9y6UZ0UukQcxx8e+WpEUV+8MefaQp40UXh58xdxwNq8zyYORR5PPahlvA/sb3v7BT756Kt8729vb3vNWp9n+StyM6wjAMwm4EChov1rQp+19Xc6Hn3b2F99vLutSNsElXdzYPmAxcsl3VBreTZNKH8K49yGX4OLZ3/9HaeowRGbMB0NVMzuP5Ay7PaPvZG+jqEHxfmJfTfBYAwtYWf5M954lcwur7OUds9+Y80P2lTb3EWK02EYGG2io6MZzhBVBneDgGA69idjvsU+OuVm/z1iFTeLSC8dYx6Mnzc7TlTUx4sa4hFNlijfuvlZl4Zxk3s0VVkXW5DtuhrWfaAoMiv0nl6DPM96vL7mdk8QS5oe7+4IkfBmVH4TJ9C/274T7dz2lwb0jamRNMuuDBS3csxcf1tfkSNL3mb59kVx/G5XSPNlxPF/dxFLLAz6Ta+V1Xz35gipJ4KXWS26QO2VYUYpNKmiTyrDyMbyrBzWvreHI8qEUleaxKZnN8aHo3ZTMF1MPeXzwqtOLH9lYH/anMsJmlsXlWYaRH4Q38fqAFBtJpHfZlxyHXzyyINZEan58T4Ob3fdFsfveOmygD7L1/uBsvQyDoncWznzFvhkvQVTrUP8w6mrOiv1oFnnw/ee4EYPPSzJ99hZavTmcmZIprDhvRoeJLdwW/am4fENlFyDtp3KzUzG+V+Qb0lEwt7K8lgT86qjuqny17deypOIP6tDVD7Y0mB8gZLGQGgI8ojoa4OkUQLdwzZPduXrnrt3syJ2OIZrSkTKmOBHtUBh8hCizLBjXrcQ9Q9yzSpyNYTHP5dPlBVHnWM5VOSrr5dc9prgxvHcK+AlmPO6Z8n06MrHQK5Gvlzt7B6axGgbznR5wL68ldPJtjA1juItVfv1NR+2CVRBtJATaynidLAGa+rgub9UvYCHwAqnP7X/GVqitb07lfn6IU9qA0l9FxMtvHivoNfb3Dj4ITQJaJ6VCDo9FV+lF/epgZirQvN/Y7fNV7uT68gIGNTwdsRmBQyif21t7+MevnzUo/+h/e7v9V7TB09/e3tcB+ZG/mzpHV7DL39c6l/7e2nrPf4ud/ksGX71c3NrZ1dFdBLY6/Fruv93Hj/ztyE9XfpZLbfoBbTKNyZt2AGz4s9/naPa38PEr/tE0xfUpjgeOEtWjdKEfDvb2++8vv0AlyksAPu6/17n3dOoBA6aCpVKjBJTHi3bP1QLYvLzOHt/gmpb1vY63Nbn07EzxFWz5zwE+uBziDdiF7s6B3v56c43pWM6wPCfDPyZRWoZ+eg/055cgXCqlrMxvcW2eZ/MbXp/p+cxMp8/KkKBdtyaQHCeM5+bBsYdJLYEix626igvy75eyRqscMLJhD/r/EQZIH/ZY4r7m7HTI2dGGxWtlxbajXDrsjbjk5p5NxZtIVx071iDivMcmEN3kXLL48lI0FykNRlcjxQ7nqKlleQIQ21i5czOlvOlZgCa18VgPk7CzRVuIhbxZrhhkCNg4aXy3Ki4YZDyS+D1IhfBDQfdrAnkgSt1fM9IJKqMsg2jzpXzRDvBwM4VKI7FIxDsdVo4aU++aipY1e71opLi6S0FZNv1Wj4RtzEtExpfoH2kN09igUr2zcr19rPd0ktzoZzefqWyqbU42szlZpTkbY61/Gg2YBIMMkPyQGzEn47qWUNPSwy+zV+8/Uh7jn7g38m7jVxrBUSzX/2eYUcGtdc4g1w7FCaswzGhuPeXjda+QVJ2DymQhWJN/OC+DYDZzgum/4oLW8z9+wOXTDom9h4hucbN0CoNUScKpOOgXKzvLsa9LDLGxXyyg53JdBuC6WPE0VTfg46hR7qBAvYKUH2znRbjPNOX7yPaaBjeBQPm70dfT88k5FHFpsc4bj7Is5VxGvBbfPWAElvvumz98JfKhvX/GwLu5/1GCR/N6pEyJSLfUJrg9IXFUcpsMM/bGwqCmE/yXEV7l3kaxLGGGGJi7jO0sf1e/aA9gXL5n+x6NjLiP3nxbareWnz99thKwJ16SL4316hHrJZD8wP5gzCsdcaQ+wK5b71fGSlMYPiotoUSWEIRPbpwNhEGpybw+nSLlpFvr09xZV6X3mMiuLXr+ANVHvKfR3GMeci+xe0p1B6EKVHkXWc8pPe4hczre0V+nTQg9G3WVCGbHwgyG21W84T2lDfeU3BFNuU6qXPHIXryQFAukTUwSEO7WgKbOqf6SZZoRN3N5Oi6bpuFn8ejdiCTNPrDtoZZOvdJk+sbJ5zPdxBtEJ+o4ofWmQaJOElrUK55aeRcZJGHbWBwCeD8jLErhmzV+tkp9cJrUvfwkh4vQX/wucwvizOenY72fwL6RgmczaPDxDsC29WhUIA+o91k0PB/3xOrVTRyWEn9PSvYUzpI6ykcuyEKetNtCn6A9RPQGmtdgH5geL5t7cNKDyIXmgnjd/EeEsqIAX69i/dVnZRyWwNBWRg3YgYuLfdsbBbZwoBiQVq5rS13N07H+bdgEyno5ofCw+IZ7ZDcBS5ULltWtds55qT62Ksez4C9K8IUdC92b0gEDpDg5iID9/giqY4PEmhwg008JUVV5wZnL9RNNeg/UYIXTRyYf8CZ4e8UaIrtP3lQTQ5YVfD6V9C1XL7PyNRnZdGwVzUfST1fcLE/A9UYWVuII7f/ADemwBZlm89lG72fhN8yEm0uSaD9l1zHo8zEzHZymtNjGsgj/w95Yq3H7j3Svn/B9Uyc2cwHUdk98Ppwk0C4bFNrmjMMioX2P6uLBMEKun4qYC4XAI+XSxD4mmmabb2eSjxq8br4+zCNQBVRwtLBAk+d5pHWh32kFBv3GJD3F7q6xn4V1sN1g/WzB1608HeNiA2hN1o0Y3fauCe33znAoLPgSGvtGdo0FlDMqu0AW2/3obj4pu9x55zKZ57FL0V7qfhuPSNSnPIi1qsh63pVWANJXfkJllmxDJh0JF8P8FGOGyi0SgRMj5/hoMFWCT20JKhpVcM5CJ4iQ/8ldbNW+ce3ZbeHbeauj+jGCXxa/9k5O0zRzFF4zsG3JjeWX5b7OK4N8W0I6PNrb2ySc8fpdehaUV94oL/zD5WAA6kxqZFezb5DQiPJ1b4BdcJa21A3zVzovQEOwfvBk9revnacvO3w0k8/NvihpRLaFlYvp168G1asMTp5CLLg+Dz4f50YsRi5yfrGBw/jhulAuX4ZqmvHcFhkBcO8dPa1OS5XMyV0mFYYuyy+SRzqZ+ysnqd3MuOOHaWditinDhx0gamS3CRN5wkgjG9Q2cWfhHxEFdAoMVkpHGbu0YrK9EB07eeTg6Rjg73hYNH3hGWkZ63apkJD2c5OVt2Ij8wz+QuKbywiHLsRQMVgL803RmD1Z7zsa/ATc+UYmZNaZoDoT8WI+TkZByWk7dr2gwa1veKStxA+xtaHp13DENHTlB0VocBj0pZLROqwZ8fQbqTM1wPj0FtsSu6NjKbnzI0mAAuJW/FSirDIVdjV/iK+RTBHA7nNlpEgdJdjCyPPqEI8cQ15VcukS2oEOdQPiS4qNyMYSjnEeU1Dg+mtXq3OHkbtX+55pslHpXittwKtLpoQllnZy7S3xNcaKNLAzpUIZjygXt/vir+WLw6KkoK+PniNZUX+mJdgZuVdhQQmmBb9UU59WSGAOPnFXFnPb9wr2qDiEfBSeo6uDpt5xmkbUwQK2LfHgTp1Epk5STJ3EmToNMaQc6a/WanVZWu7/RtSYWorAOBUXTq80VxxSiHfaJ9S8B1Hjhsy3vH3mQSjGew0BeOyZtABP6pNE1s2HSH4/l8n+L3oy/gQLUp/QHJ1IUemfmp/XH9FcAxr5b1V7d5XP763tvq4r1lJWdq5s4fBrQgE37hE/NQf0tkqjA2+baUSzJozaCHWos97ptXXEaYSY04jf9Kn6LdFfE4qjIeFztA66udfSkccEPSboG6xiRd8H6mXz4tLYEgWl/EFb/rW2X/9I1FMYTpPqfAH0TEuyGplLWTP8XZvLaK1yBAqRCyvz50pw3m3b8UhtJKhHPgfOG/CFhQWMbffNh923WNJO4RvJlBiJyacRxM3aOjQpZThJwCO700ohIV+WLx8vy/do3ze36Fa/uxb3+SqMAQH2nbGYQ8n3lAVFSsndTHwxnu17IA1inWerIgS8/oQ7ACHB1RhotsGi0B9bl+kgu36JZec/0ZvkE0/WpU9kWpzJz+mZA+0dUkuXioyoA+JYQvdzg8kR6F6kWNvp5QRL5vipSLUKeqlw4wmVQgI/l/wL+tXxa68mcI3uSA45Mp51t3MzTtPjsMVx4BoJC65WN9+JuFLC9BnJbyHS8p0QKe9sSpQ60Z8ZPTw9P715RaLgPehoJ/WYqReXu7SC//7yxk28uf72fchNzLCYmlxZuAc08g4a25fuHw/23jXFGA7sUDTeoj1JhM7jfna7TRcldWu6j4mNpYXO0JahlSxRx3L3FyzfVklg3/aN3kS6/bxndLhf1zF6c+lPdUzI/urP6hhdyf6MjtF7EC2RvFBEImfCR31+bcSlDf3niB1Asd42FWPWGyUfmexFIclfYWG3feRWVpcmEFwKGW3c+pzsHT/oHWj1iAYyRor1+Rgp+onGb4CPlfyj086//KTlF9+oAT7xb71x0XhG/voIg6I/eanR3+1u0LTPVijLAvorL0ZffQfabz9dYUw5j48bCS3tVTbbVwW5IPolLlmsEofS8ZvIHhsCKNHW/CLHElOC5a+iUlRLJbQEQMn6+aQugKx5tDBCoLDDB6aj1Ov4Kr3wjTamtVoQmoSSrH2teeJEVWRV6sHeyCFalRV/U7ePzG8TN5iqCdQd29n36ZNo2mRCSFq7syzNBWnSw5yP5ps6CNvTWVwsJN/mWF0AYC7vEuW2FhC3cnePR3+px39kV4H6Q/G+cuorNCEqUI51cv5kO/lu03P9qGp8LkyW7TZc0fHQ0pfwiJk8MxBkY8EnTCN5biM6iGCnUCqxlLvoDJcr+SgcOCoX/nRNlWcsvmkk2shIJndOWgAQ9wuPxOIcr2D/dESyYpXMKmfK9NtdxdhRrjPiHdUrapB0mts2b//jB1tIhi2Nk2RmKW9lnigNNMPw967AyGSqiJC9rV/C9cXNXcW79Zhq6zQX0TvO1HuT/8WjCkbq+luuc21eUw65b2M7bB31zFzMN3Eu0br7wpyCKyu3Lvde/bLdm/f0sp+Eoj9I2sbqXvflmlaNfT28jJ2gtpiVGE2fLBXbxWIFrb+1scV7K0REBhpWc2LwgAMiFLQQAPABBXZkW3Iis6+jU2IC9TvUFkX7FwXOelPD/0juoyIpKuKiBVWjI1lokM9Wj3z/kINCJfeaGp2aqRHVGZrQF8cEt0Yk0+DEbJDO/P3/ZVSZHQcl3kTaaV92Cn6C9FuWK+FHVgl/oaqs72t1Q2QH7eVcBGBEcS1pv5CmOTa9ZqtY9gluHV4knZYbaLuBjhvoFoFHjUorGs/WdnKNUySdjmgao9DYdQf5gzvI87Wg6a0scrWgQxbbzrHmj5VRoRFtoxyNaBtX0Yi28a7tCxvnakT3V7TR3qhsCWRGWynL7NaT3TOzY4DVqX1ox1G5DeAQ2ehyGzhgJgmPPgg54qxOs4qEwMB1LVy5qUVScKc+NYh+vR2WtHY/3nezWPYspjqNatkcR5avPLVrQDNK23x7eXlZ0laoPOX/XP9eHIVd3jfx+3A/JnzGM9dN0BkzK8Kzr/8Nw/400lWR/cnXPoDAj3r8+BdjzI4GolSHkW2MB2Kx7WQAbLcChZBjPB6qIEWUmJJSzwNRFp5RCwqdJFlhXp7pKKVcAfQTOj61QL7qtlC4rlBen2mIdmDch9iKQ573U3SWiRE1Y/McdSYuSZXixDw6E9o6gfJ5i5dUzGl3iohr0wvLEkXnAb6SgPUQAA2bO5pPAS9tegc1rPY6m8R0FFLXXJvWnl8GFxBO5+3raJzNKEUgPA1CjMs1pVVhnqLUKaD9X7bRCahtf3oEbSp2eyRsTsY3GAaZfPo1Ei9expApkoW0EGOcJhU+v1/BL1nZxCJGWn3KnUW+b5QSKyt3kFl5zsTpn9kH/ieeBRvnN3vJ9X5sfJTYoPjEDlvGEEJ5GZmT/CmXcwSdgZZ5rzmNG+a72+u4FLorEzFYxwPCs7ydglaLFnDvT3Hh7zGdbStBSCv+hmY0feBiZ7VVpT8wMPWe4F418Gqg2lxX8E2EGaDrjVFmXXFE+1qfGxJj2VfMA3ktPHalIkQDvjRL1vkGqb26lqK9/D0BvtC9a0NHW4kJ5xlXzEv22uCblB5nivxpCI4ggyBGvgpBgQthzSuwvEt3lltExffP3EKB+45si3cfgFE3Pk9/2nj/bufd6x5fqL0PlPWgshf+jLToZiRq9VlusFmmWVPw+vT/1lYYjnbN5P0lURFOnV8S9x2Ooe9zJpYIZGBsgn8C0nqWxxph3Ny3CIH+3obnddBmq/gjj4zycIBrUmrVDulZQjiSX1jKr0l1efmbpBOwWQrpzHWa29HfEyu3+rexp/lYZqzKJkQSEp0rayRgEk0Itrti6IYtcSIf6UjU2olN1ue3tGfvrtwTS68TP5ibkqiGFOcxu/M7T17UN+k8y+v6p47hVq/jsH1vSGEtpy9PL8faobSv7joXNFjQdzLKMiLw3bkLWIsCFsOoW0JMd+c3wOXyeVLdnVWD6Yxyuv+8RbC9kUyaO6mBza3La5PHQYKzfT6WOTSFi+jNwypDJYGta7zvlLHgKHsQGsK7QyGR5m6s9aHH98CSlnNYbDgsYcz//XwMhLA56KEb+sJaFH9+thyKOUrZBVyetuZicACnkGjK4T5ILGAFicjg7oG1+ja6A8XB3lubzaGJ5mdyAEsV1wTffSpuASsVJ4GTn0Ivv3FjnI9nGl6jSrrLc/NRUD6mTehv/5hATcvkeXrPPPKRmVwr98wlb4S0UGObOwIppC30OxFtE/GKzk9yerB8wHRVhBtrnLpnI0O0UgWxrd+AiNOaVdnKZO8/1+jNinDvvUWW9wfb7Mkc1p0Lwfp0nMUBLn1u9wrNWQ3dM4KX1ZVWa60cJ2zxF3hVigyLo22/a+vvQHbtd7XaFuQ5vltO10SpJRtsPf7PpkQb/6RI+D+b7+NKixD3gXEcLHOmukOF5I82uXxyujA/l2F4urnJn5jMQXNK/T2RuK4Td5YYNHXbuovw3GTuOJmv88ylPdnNNXYh3G3XBbpxgdxt1QWauEDuFuYCfcmBXHrBBdgiQN0qY+J2nljemV2QVxYkOs6oeVFKfZ2n1uyQLtwwDuesVSwMUJ+EosSKAFoCtGrl7Z/NkzishQnU/ajeO+R/nDX6dVqW5XOyDgIbK7lXd4HdtqtJrHQ5Ykrk4ZTfI0CyPypijQ+j5WrUeiesxjTSFeP64kP21VwzKPTyCg/lFc8YuMYkaaBSbDYqS/Ube00nAe016W3j8iXvpVHCDGhxgwtd6XYjgjeX2qsOX6vKxZdYA9q+2UWWpdyO6ivyWuh+j4vfMvWkOvPvB+VxO07rxs1txdzh49jV+sisQeI22AqzMt9Ha8Nn6belgfI9H/B/YeTUAz1Byzuio4lxtyto8X+r/lc6V3u4XzW+2v4eNzruk5t2JOrqWaW81rXkNIWmSgm0fkVASZQTceLM33weXpaFngbTk23+1jBzes3fl/6NC3E8oWoIvIXadTh313z4AvyhyipntwR3d4theMzgpIhLH/LCB82SzUJWQx+jFGESZst6Y1BczEMSIGoAeYJjHvoFgYGEj0ywN2FE/MwIJmodwB0K7yD2E2NfgatG7W9LPYekMZhQc+ND2hnTykQjYs8Z6xIQiLtmXIVkQPQ4j9ats9E3jC6TBYyeMNoQAmwRor4wyhz9CG6ZIK5XCG2bUH60I+oVo6YP85BHvdkYBhUmdSlsTvF73tIU4CroeLxrpIaCZh1CRlIS1h1TDHXdiDLaHU/4s9W8qOW1aHpYW7Vj2po1oERdHc5Oq6OJ9U6ri1/Ks1QHl7mqQ8vI6sAy0h1WN9IdVEbYIW1L+0CBo312aC1f7lFoE8sjTSQ148z4+4xyo8x1Du4/4iT1qshbq3vW+HV16PeiICBPlrUK8jfVQfPT6cV7cmlya7ZFysftVztafn3/5cZMgDcfPuwf1KYWM8l4P52CYNpggpEVhfQiQRhMY208083AUXsbjW+q8B+z41MisxovoshpmLI23eho7x1rOLoamZUU4qJWkrMkiNlsaaUvqiQf1FFbBDynsmYrqGMj20wxM40dEo2PvB+iBmtfpUPmn4yUYuKRz2rItm7K+E3kqBi/RysiyiudFhQca2LG4E/zOlrXRsrku+f7csIm007OBae0WWNFmxrtwJuK90TEekyspOdEiKv+BByok1SY1K4myYlLGcxvfw3W6dbGbG3stDZ2WtuYM1YXIDY5YJaE+VomYU7TuU8YSuT3nZeM1io4JfbdnzolesP0NreWwA32hOstcXxJLEeQTbuYkk9bji+4wBJ/dGgLgTK4IQ1Qh67hj+DZmHVJwhn5Wd9lA7vswrqVItCKAVqpAO1tvve4W3h6uxD423PNJbKPDa3ykqrMWC6mxFkYYZisJ70nq0ZKw/t6PrwYh7k7QfEZOG4idnwZjZqX1wP4FFzC1Fleaj1fiiQT37vXHppjdckUubZa44vkz9dj1fFQOANLen5zLCjERyJkkZba8tv8Ok7Zlrnw4lMRf3Ofip2lfLcQ67oyy9FEpy5rq457lT9bMYvD04LUrlfrNeugBSu3B+0Nra2Zw6/x0xaPUE2f46nx99RVh3c2i9KUGhXuCHMhsq4Yd1S5oxTR++VUfmTuewG+p28Ywaz9rzN//9P3WbMAa7YZCD7TohB3mpHDW5RDYfaraNssu06r7ZBQXNd2zbrLMgo7kstA29wdZzdALruYW5Kr3eoLtaLl1zoBQk8lxLRA7gsSJO8S6e1K8lpUUX8wsr7FJVQ6D6MS6ZFQ+koaqbO0jtHgv8u3Y9NRPEabvntynKU1ErJ38HdVLedW3cm5DfpWIhgmYy6T0wj4NBqxqcBLt72LDtOKROKQR0cRzBjM+d0rYVjD7zCUnoMjTV0xWVBgO3u2wPNURF8v0pJ6ynldB3GalnS16uKsatJ0UhAoxuVElUSS4KqJtWjqEgPt+PYCCoe62mq6EunKlmiQmhOWpMV065mRPYDTvZIhnEKp+FazAnGH69RA+qqzWls56dHLVLT5RinVwq/4t+jfl8Zu8/P+m+bL5pDqg9ep0vAt5YuHW1GtWiLbbvuD72om68HRDJfXzd3Hj3+IyK+wjruQIsbfjHUVKu5Ze/H9bmct68P+efA9vfTiML8YUDPGctTEZFaTsmFYedebuNE0skCLw305oSHWeC2y04wSAmir1vPSg9aIchWvqyj3xXOre6EvvRCHl2kzAfmPectaV+ysBMY6Ho3asO7akGiMSDEeR8ugn7WNsXXnG0Raf3B4AoXgBn+QV56nziRDNBqt5x856OEZoeVLMhDCGPTJ4w9t3JHGFNwWdQ/jcHCbU03xoa8VkZonN+c+ECOMvezyQsIBgj4K8f3e99vbfhkYpelk/islhGU46wSoFBv0bVHT2NyE0IVzsbmxMndPeEnXpmL+lJmYqokYM5XnGocZKRoNwDpIw25ratyvUKGJjp3oWI7E9ytjxX8Licc68ThPPJwgfQvpGJnsUTj6178mj8KhNrdyJsaLz1iaLpq2FTI1DCe6fN4izrQ5ZOOLbxLASor/XhOzum+i8Ik21tEQYH9JVPYnEjGxEccLgANO2Fh5coe9FKNGaU2miC0Qhd+J+SUy9WThJJpnRCVgaTRrYuyh659XWMUGf8PXCJQ2axIY8Mb9LUQfG6vQyls9RYzp6MNj+FU7/YP9FX+7oXXx07Ld6KDvQNL7EmTpxfJOihE6wT/acBilVpOP6vcI0vIDvnXqVZE6QeqVpOL7FjveFobU7qMu83nGjkqCDn8nyt/afrv9YRs98bDsRUZd/tXjx382/607JbVA+olrinzeWhPr22Jx+5h60k2n58XsNhlRWnhaWyCKQppUfIUMsNnB+77Y6sDyADmWfzWvkbYxfnl6ATFzOQjsbl6inBm+Hcw0r0IzLjzlsBAamXiLGWGupmJs50vKFC4TGl/pLquBEVtlwPWEwCx2/6B0IfKjwCUUQpzvRb3fV6Ys55Qcm1OS5KszPjfprFFJ7Kg4WG4Ei/AXEvIXzFqqCNSazZSj4TW237+nKyEllja0fXz8yey2B8uqQslrH0TojwQkCBrglDsxBJhsfzJQ/WfbsL5dcPKy8BAwjj4r0oMjmgAv6bgyNjB0RqI+pyqraXy00GhrF8vrOCFxooZ6D1Nknrjd8dlW664O4fL8K90h8zFeR0fQ8ZCK6fn+UavaT1/M+PBu9gnzEyd6EvrG5lbcj2V6ytXIizxcPodDVEvqONEzEl92hkEO3ssopgtYISyUhw4ZGoP9Op25tRkRvchQRCNaj7nH14rs0se843fo3JREJPOFcz0uROp2e1aZJ/8o7B4kNGggYryyvHTt3N33SdDDJXZ+3aw4MTM/sJbWKsw3LOm5NaHFhrvFmp3SZQDK7pnEuqzvDaEVWwFklCP83G7fR/hZ8NGebrnXYNUifFht3WlSqvLGaCT1rQP9U5XeKPL/O2qeT+iqIyyJ9R9cPeasrZb/oGpxRpaq5HTb0mVyk3H/wiI5L3cuszHiPjXd3dnd9mjPtTRPH96DJGruUV5unWTnWLzTJag9CCbsNUTAfUioY7leiG4ON0rtafVLFnsj7rNrVFGtCuub/uUJycZPLyPGrvll7wyjNNBNvdQvK8WuMkpBr2FnybEuCVoimF2MMzpOWbqcqxnlXJXKeeKUU1eCHdm1CqJZ88KvAp6e87D7fZQNppJuwD9Zwg1oWJ8yGmIIkGRriCqLEkNuZFc2PYppfk1VTN1NUB3YE0u2r77a0wrx2RQ51kTXAUn4R4rvfFVSGMtdqVZcLqsh1YBW2Ij6+JvOanw9x8RuLa0KjVGtTt+pTt+pjslLKRGG+7XVKIBKjlnQH5Gc1daA2nQVUb+kVL/1iBFuoT0aIbqNwshxcdH8HTYJtWOYpIhfRJAWwizR1IYKLrGUwu0iTPN75YVjnyKYTzF5esI7MLS/jJ8OFWKderj1i5pAPP4Eb/QNvzn4QxsNqRomyfkri92gkoHXdMgbVeOGIq/rrhXWqjq7e6V8N19vdOnzM8rkJ+PWOlGuqXGbuncOonzCWGSRY0ErbeQTAKM1s8v7Movn97nKwjml9n3fmDx2TrTAiLrUN1vyDHgNm7O3CI4TFwc3cQfHoxDUKH9i/FgWC8JZyS0A+l/YOfWp6w3WJuEzoKV+AsW4GHGxkBcBiX59p435l8YqkioiTQvjbSTiFgYjglzkfCbpZxhICCiiD+wi72ego2t2nvIqxFZTM5P1AXGytimH2CI8Wl3y8trzBn+cjmBxnPfSCoy2sE5DHgs+AfDPVo79d5JjZQfj4ndCMH5bVEt5u5BqG4OLIbi3/UlKiyauBbV8E7LvEGinOIu8JNskUEwo75Bmsla3yCTfIl+m+K7ZByN3Hyy4v8705+08cbmnlfrnvNSY+svh99+03dVIm1nrtdVvdHrR83dxB95ET8K+QQe+5xI+2p9n0ia0cDd8bawiF9EBX7H6u+uN3WYyCN+o3ebP4Wv8HUThZorfz3G4xd8xZVf5lhSId98JrSQQgWNTVDBqgr/pux5s+fCwiwrcNJ6r1qpGdpOJjSeaLzQRrKHROy9ZOzNSha6Jp513r/Z6Xs2OuYLGlEEPPm5ubh8c1EK/mILGHXXvfS3sM82ieKG0REDkqsRGpnVttuQCy5GvPuwyzCM00LQubCn2gzBWP6ntVL1K1evUMeleWPZWOIs/hVF/Ow2z/qs0jPuv0/DEVXDo35jv+HHbBJ4x0GGg+5RfJvoFo5cDTgYwVVZUIi8BNB3fWVlLtEF7AEJYC3sTuR8J3/P6RZRCaMDmadWIb3jrVwPRcigbGv8lsrM5ROviEO3LQrTwFTadRvz4OQ4rdCsnJe2yOjk5D75f2AKNebBGQ1vM+ETieb347FkbIvmHFZWdldIEhxU/zE5vYI/C+wCu3weod4cDgfgy/eYHWPZupmCR6uBLnQUfls6M8gw9tp3TMhqU6nEneKOvGYu08Qtja+3OSu9pN9Dn0UXjeZCbRRUT1l2MtJhQk8tJDZ7IYlrptQIpF/1N39yonY+L3aLkxetAshjVAuhLDNIL7NKaHHW3Y1G3aMS1UwZDXesRToMGfaBrsEmAtHayvwHUF8PUmJJhI0Grzg3GcnPRtcotS8xdYzECg7StJjm+vIGulYUIevUVwBYHMzz+TPx+ax5yJrvWc+QWoJdSIipBUenV99ekBkJ2kDdRSN4bfJL+pA0I9PyyT0mRamISHFyZl+k8boXgnw52N97RDDQlTIqUTs9l3vEk0mI5Xm7Fx5MzmaBdgsI6kfbGKlAZ3IRYUMIsT8OMwNFzYF7AbZc9QcSUtKdtSbvOU09ie2ES+Z43cK0IwiqQZ0XoS5MPyWP8hf4LAW7h5W/RaLiCD8gGfgOF3Uu9iQ6jo3X9t1eRjKYQ5K+RPuUwip2gKX6vW7mFbE9KcQYoctiOENOUV1deCKkXh4+u2ay7CkjNxvqU32uR8yKL99jnLTGhyuz+CAScijW4uZLxIReRQV/TsIdTVlExtwi/7v8tipMoa5NtezcwTblryNsfIxw33Idd2+em06Xt/mpkWBtl2+99MQoQg9i1b1lPtNzMk7XH2NHPx30emGLn3XdMp5ewe3AAasrrOf37Rp/9UXN0rd+q5CUeO301BidMpM9b+t6LBnoFEKoSBTAzYdrOuSX1kIGw+7nwZMyW3vCFF0A6s8m7EDorzq96/fMpizFBM0rTRonYjAyx+bx4Ms+rosfYWNIVX+74J35PTsg2iXK3E1EzMc/wGzcNbJMry6tnmPHttbN1HOe9FysMtjtdhGOEl58x/PQ5ghmCA3h9NJ29jHmqTXYPihr+jN63o2EfgiL2YqwPzagi5NmglBPZ6GbviCAlKd5qF3xS8Q1m+LiA2VW42f7NFw0dzcF3B+EibuSFl13hPdG+8CbjJ/9eV/adluPL3ne25P9Z9agp+6C03Krv7cwg66j8xpYUCOKkoMDYoXoKbcsU2sZAHm4bG+8HjW3FUGA3tsR40y2QIRxNV+aSjb0IO1IbvHhosVgubt1ZbnO+lLcP932B1p8tZ+2JbtWT6uZh+lJO0N4yes7tqr+IG1shrrIXWan/PzstflKDUrO9jCHx+CYvwr492kL++wkkcbTF6KD/hOVPt4XLgw6U8dAmjznW4L9bobF1alVi10aUOoz4lJ4cAUdghpAx+XBy8TqCQqWl7d6W1PNgwY1YVivliI5aLke0VAe1XPRLkW2wfTpluOc45GoAl1W7UkK7Q4NR05ArqlODAHHO6etOgicz3rUYPZsnTxDri8V4YgEjvXDGkpAvzZ+KJxZZi6X3Ame3L9ahCDXB5OPNJedSczzU/tuwbzYwG/RZM6YFGjs6Vp3xe+O/04Xgdmngivlnds7bKQzOCDHTrSxmwDr/4AgNbsVj23gPT4ehxeAeuZiA+gzNTxUwe8rhkJyr5eerFTCcKc/WKnG3fZrJ084Fi8K0YWthj+eefyEf4mkocsiHcSlBxIW0pFBCEGzVNydlQaF17FB9Ssrw7WNfO2DbGg6c5tkXYOn9ucYKoyOlX4axFv15Di9OU5pvHrXNgm974rcjaRaVsAyEdrDuVzx4WN1Krt2D1tLGprfo7dt3bu8xHrcmg0GWIt26zYivLVPr7pp18potz63a8l11+yp102pR6KPZNbtvxbp5xVbmVmzl7k7bmuo0nnfRDebEtz9VtWVTtU5nbqch+e5e23J7bU7VZCmwFE+K4SLYjPUz0a3M6/1CCp0Tu7yUpnRPxo4OqWvArU6Xe9NJ9tXPRpdUSn2VRfSkOa4U+eiTcZRV2JoOz7QURrLiRnQR8cyN6CDiuRvRPtL242FjxTEEDVFq8tMqQoJ5Xdg3PyV5DY14c7mC7lqP7u+fpJ+8sHXjnayftFs2oi0RbRvh2haIOIStqgp5V71L7PhhJGRs5ld1nqFccjdYjTqbt5CiYtpMg7fB6ioOE9jQjUpNZExcaiNjEhvTMTGpjelKazutqQFiqV5eLFv/3rYeA0Bt0LqmW0V22wfz7cjinrz8VMGMa2BsudabYw0rJl4D5lsxl+7lZ+aDOS/pyKCdh4Ym9E1CbbrksYZ8E1fpGTQ/G0ybtt5YG6z3bbaOGHWYlYc2U63unhdnIDGQ11qatWPhGswtWxsOH5Wg+9bcbPiza4ZW6efOTsumucZoTWLbJlZN0hqAjgVwDdGaxK5NLFmflWSaS+Zcaauqmdiu+uBMjs8rWoujfGKrxM4QMzdis5SZYerI7p+OPq+InWU9szEzfsYzM2FNZ+BRlDGmje8vSTdInNMsiSg1JTBzh1jz2dMuzZ6WO3sY+mZDYhTa0vLuxJplL7o8je5vVFpmUKuYIkllSiVwD1X0UnlCMdFJc+ZTuROrk6baoVNzJp43Z+LqnDHTRZuKKNkh17LhX7hLe5q7dAxS2O/VgwxRTwcKk83OqnwiPVn90nNVxGxwvrIZZp/HIu1M9p4ItV9kB9FfRu2rZO68NZO1NFQIJ26vh0m5lxF2TUKX7T77vZ4vCi11haI66h9JLuMaB4Gy86C2ZL4t2NmwTtw9G7R+1J1nZFWpqiDotF0EDM5B4LZNcnfKuTvzcpc7Q/J3y/m7c/Lfv+NAhhtjKYYbWPKSZR7TWlUf0djStO9nB9i4h3az1ygsNp1JZb+bP4vnOX/OFMWFNFeOGcdSuKhhpKbe9y5N+f/FxUHi8jrTB9om+U06Lmi+SdTJPRZWuWzITEW97YtUM41tPURjtBf/CZVYkzV5sLopK5Ir6T601CU8/mRLERwVfju/nEDDwaIi1pruZb+46rIP18GFrscCJOLKaO7s/OlxW7OIctCabDS2wa2Q0P+2OWSRcurcWYUDbSa4pv5cgJuGDSBA98LE77Ia8bxdHOEZ47hUM33X7qiBs9L///x35/8ph6MJpk554oO4NxMfgbq9uX4d/OdP94fPi7mEwhn9aHBxwWk3nCVuTq6R7SYskXV0finuHOpPHmBxjqkTENlChzvENodmBq1t6CN5JdgLk1w+UfnFqyS1RLPVvfxQyyBpEMR8O/C1Htge+IyGKUoRaT4L5GzWS8hyURMMTyDaOfV+cgjohfYRMihPhxcY0TlaeKpxMDP6RejCtksXWrJ3PI8ydIHqacO29FTMZ46AnbSPoOwQYi8mfBn1a1x/VzpPv0f2yYq5ThraZX3uwV1V/cqGklxxYl8X2ct91UvilL96Ne2CtojpFNbtqt6lbR2qHuoViG+lXZ4XfrOpXJfA8Okz5TJTYZowIXMqUOOE/dav97he6ScVOz31uvkmBhKtVfSo3YNf2AR4ql66K5wudu/hUU2n/vmu6EirS87C3RsD26rnSNtpbsWJ/WxGc0YaX4S3wqQyvv0B9YvDfJST6REmiekq+vGJeRECEYML7SweSwieZeU4HWCBsiyRhUQ0B0EMNuv43Jnbum8+sEa27LWUgt+oSngTB5K7mBS+qjj7NxLk03A3mFRTc+ooF4T1fZZBfqpZGo576wDJ5UJUDSAfedC8k4UQu8XGJD0tauNZXQLd4Saj1ufVjqBNBLYmdBAqcWJ2L4vODxQ+qrCicOnAhv47OqMO+tJ6gfSVPHXGuewpPm4dF+sQXFWx9Saf78RcZlsX47/ADuTtAsN7h/9ELRncDqqQbmqHt/JlK7dgPSaG8xwrAmzFBaNjxf6PhuPTBXn3DXMcjAqkeBRyk3W1o9k+N9r56MyFfgKfBSdJ/3cgK/qK03z+m87c3rL+OVV8B6TjvNPYAqOcg73FGW/oTS11k4Sz1PrKikDGL2lZMW/262PLaiCxFng5kCqVFaYKMynhHS1yHI4q1n1WdcekRqS+4pZ0fg0rmjA315D00W//viDKH0aerEn5yhuzNdHY2zsoZ/WNH+UnOjdyWQR8VtnKUgqvEUF6ekxayig/Ec+SgDq9xcLQ/IqKubyx5BcFj5CcjzC4mJTeWOY+HuYkEFVItX/reHWSzwstpJVU/FlTvuNSBARGxD7S2ItpMInhC7tZUKOcFegEiT4gyZu9/rizpcker/La5JvcWyKxzaou+O6DUpU/zwo4D0yJabrxYLIlnpkrq5GN1y6W+9rFvHSUAc3nWfWMpqtlHKowlmM83Rj4Ev93Sz/hpLwuZHR/5ZZILPD237Xc/H/9i06gb2Kk5Xkmo3vkmLg5zvGcf488XyLJc03PzVMZGgQ5SPQPIXSvRyKyzt6BvsPmxpbbI3VFxNzYanyFl0qTifZ7JP6+sddUbNhEcg2Y7zpeJWozqR+2+SfPXLTOGdRP5lIo9VtNv5CN7S2Xdx6IdKRGjPlBu09rzXANPZN7dUnSK3DtNeEP1kH6dIJm9vdyrs5a9zqdhg/6XPDOHlRrIoMtNENnUTib0z27yJ4lFHrJNG11I+K78/vJUc99Wufb3hEHaRjDH/MaciBFe3nZjd3TC+yo42D6cJLXVdlwpFef/Im2sq//l7R0j8bYnYbKvKk0VM8A/0/N8mE2iJK5k9xVn9/GnjE15XMCnu6PwTU5x+6TpTMn/nb+ivRWSsby9j6fZl/QJzbPfeYyOS/e0xetVumIvX9H5JOY97PqxGZcxXUZ37xyQ2sh5PnvPQmeyySYjKTz5rSIjfFsgY3nHsWXyiNt9gYhCGV7lH3YtYSdCxjY2f7waTGO/w0z4u5J8JABz4XetC+3YxHD8PBJfwJw75hd5C9wGbiI0ime9mgDHHWLhQFLpMwhEV7FKtEqo86ZUGiLlk9Dgk1tjA6w2bY+SELd9iQI2CvV7GVQg0IqZpexhdWYd8acUVwnprtpmPqBE8g0KLaY78pjD+WS3/agj3li75zc9e7kWfwUWxG4u3gP7AxfJU3+2uc0o9sY5LdkMRMKMFQMU4m6j4XkNxivvvI1lerbHA5Jy2wMIimMF57cqWwg9kngnu/r169tK3oLFmYe5ysjglvEdXzFy0uw9vhvXztPX272vV0kUC+B7XcQdkzhZjL2wPDOhM15AhML7BB51PAM95uVlxgTkTdQOqLoknK8l18ICoA8Jlf88H010BzZAZkegNIjG93QNnDmmAAic8MPFH4dmMPBkSlPaMQsL35Pa0v5ysBK0A5jdoEe1+YwLITEMaqAAusBFXZAJKI8G8poJM5FU0pmoFILMapICImQsAa6zxyZnhedmnnRLs+LTh8n55ivG67RErufvW9Qa4j11VpDnllnvooW2oGKuQZfYe3+gefm8uVSM0Pf4qpSdlv/k8jo7aLIaMBMvtoBFhDz2sR5CYtGYiyU6lQv0xWBcsJ6bppUqqbxdNVuzOuKBoK+MnrHxWXdYjnpZhuqKI0r887NSfhTTH3Rr7AbpbNpg1m+tgXbWuWekshVtYzA8vaiwIGz+8RMYHOl+XR6fKq3uXmXGd93q/ktDqJaUVDnsk7+B5f9l6HWCzCHp3yDw/FBv/p/On11yi2+ft8l19yfurF/Y/MW/Drxz0/564TOrkWkHPlPNnTOxh2FRZ3Ms1NFzMQYU7h7S4daFBW1DYcEVv2ipnllYgy26ETW4cHOFnV7+GviKpqGvtrDQdIsR4oi0FGeA9r/19/MPr9PaBtRhcTt7pLbCMvMvwOsuaLfTMUx2CVe6xf0HImMz9MvEs6q2Wg8EaDilWhkOsKnCuD6E3VHD5d7SZbcdN265TX+c9TwZ2H11feD4978Ul3e0a36GIt1YHd14F3DFD5nfYhCEDW/n66sbfe3FxZyWqCtk37nwplXk2BuNX8/skMWhtskjrWrBHxEUzdtf2Fbr5Tt4BZScEl7GQMO2HbOkl7B94r5XsZ3x3wn7a79ema/npsvX6+yDp8yUu/OUfkHKSY8UvFHJpDR5alsuAMC9KcNdFowayTZ7fABN6QTx8YthhG7Alh5fd8XLdUBp7yx5sH2BzolsSmOgS9MdyRLtCzZOA8e4KkVJZWMb/pB/0Tb2LS4KHZOKEYGQcVq0Q7eQX31VI1TNVAZe2NwefqKr9yVNtoWQvM1MWaEaCbh5PT4Bq5YsLeH4TlGIGiOr5PCKghOIRsbxqIYS+FKUZVtscCKjdL6V+s3KUuVt+tLZGhM2S9U/m/xMGJT/YtLgmTXil6cwU6+1qK7cVNitSlFhI6h8TnWE0Bo0d+uJxcH+mtaAH83V2dxzV901UaqyJB1r7jWjIhjUK+qHOhFSZKNbkJri4MbmW7cThreYVhAl2Qe6/fAtd1b3UlzBvUelvVOerh31Dzlu8+XU0yvL4d5zFGov4p3/h9T9ZO2Tf02DYeXMtuaJ+gx0VVqlOOspQzQG6B3csGBx36gdlNUZDddfZvXBAFU5cc0fJse7qZHRd4Q0K3VH1m7n9JDSS3pmP2YBkfhVPyP6UJbSaw1yNJ/Gf6U9n+aJmt2okZQKJAnjgZcjVlr2oMGt4hTIlewj2l3Om4Owqgf0SSLNvRMrd+whb/jSxz4N/kcesc4UfIC8RlG9pPzKwe6icI2c0Z5xFv79SZy6098bhl4sf6UxQc6ZEfDFlFcsShcQ5uqYxIhS1gMxcjhTQxRX8aL1wWf1w9sGc1YG6sh/R36ETXW4gkfYPwC4vKCszmMmy9jN/JcqFbE/1GKhwLXmLEbjD1otDGxmdVtJuM7+r2y6Dr6XYFXHDb5I86W52IK/LANqWz9/+dd9eyFeraiuh0qr3bul7et8z57qp6vqGfP1HOdt/uQcp911cpztfJC8qItaG6VPouaqRbyXGzTIcQ7PY6QBJU9kjGY7aUKw5mCGwxyRU5MumYUrcuPQRv0GMRBlFQradLRImscAZMu4MSTpMIQ3CCs5AVQk8fFW72YFgTeicEJ0xxj0k1nw/q1ibX1UWXcgV4Jg6bMq1vuPebRFfFQWl8Ny/D9XJS11Y/CmuL7Y/2c0ohoUul7gmuD137WoyeatVIDpEsL6HYO3SJwu1sLPQgB2Dlih7rJq+3uwiCHqZ8vL8x86ZjfFmfaSciM/RgyjWf9VLhZGM4vXBUSqWvU0VV6UVcjoNBl8Rr/Mzi5ugsCHg0svdtpPOUhOlXfFwsWgQw/26/OsNcbQrDV31490WTgmdjRjg5fLGzjbJjucXMYvFBEyjbhlwXSJXJguteZy2ZIeoiKav0IdE0XBQuDqMHNEZVYyKJGe3tZflst/duaFTvg36DvdmCvdlBWlqUkOyTlXN0e99u24nbUNdanOTjdMlSXg9OpzBcBgDWBbn92Q1/UNLQOUM+bZwZ4al9s6JMD6y2Xy0DEp0R1tFFn3QJutJVaL7f1LG/V17rdKsF2ZsMOALvAyXG0ukqN8cPn04tjYGDLu1d1czAbgJlNbZqSCqb3tvngnH2DUtX14Dyvb+VzF3Ll6UxI6UPW5A0ph+erLgz7/wHten7/RhFWmuSWV5rWyy3g+uE4fNTioFX2kZLDnI8XZxd4Y3cUqflaBGPVtMfBrXLBJ9EJ2ilEuLI9f2ks52rot7KwbSc+quzO69zMi03hJOjldA6sfOqtsXQ40radpQ34dG77ILdqBwpfZxxF1VNVDok8N89p+dJW9r4ZFowlj5p7+9vvXPmNat/ndKPiyXKymof7C9jVEjoMqdpYma57Uqn7GevOyn9gnxCk1IZqAywtUFrg6zP3j+VW/UZpm7IA4oC5hVvGXaEof7r42eV0p8oRfBslqq2lq48rqv74kKw3+Jf757+bXi1yRjcn5NaVbgjTqVAVuNnJbxhLfkCkXzLMYHrzgVfPr+ujsPOYqDH5Y0MTP8Z7loTxwfDNcKyD+JVQm7bXwzaNBPzdZ5s/guH3WDRBowmNYQvbr1FYZABYbpKBj40V8McThFgGMDFnoO4kw1UdGa5mkOGqlgwPNMXxVI/oQWmC4koj3Ah8hJHitnXA70Dlc+ctUvm3ESvGaxxfqqR8S46hxXZx56nOvYatma5Xo2i5hg+KDKxOQv62Pe0YGSh7fUIdcmr5Frv1T6idrZBrzwnWlZKcddTSvNpNEYMSsdjEBMxrSzfUypMvm2efz/lizqGH1cXOC5UF+PUpyoOX5rFvwlsIf9pCyNKjiSUvO+SL/EjHCOWnT1/hgTXzriUylXckvLLGk/E3RdcERvDiHIIx0VDvcl6ceRx2upHuzkVr8V0YUbrcy8KpvLZ7mJKmzSiDIT7u2mddFvB0e3l2ERQlwKNYgUIBd/aNlbVlSpH2CGLbJtaiXBKN+KzMXLmMjNf4ABmd92+3n3uZMRIbKO/yGrlsxbzX+x915VqtVltXTxu9JecIEll8o+2sBNoyl7ElG+5Ghz81Px/1IdPpuGb7AoqphUwcvKQjSrzc4fc052NoeE8krMkRw4BLy3Mdbj/f8yPs+XuowlvXYutegEdY1sbybqI01a8xb0/HqFTGGQT8NDfjqzcpOWB3wWINfM7uB8wBcte1SODbI1TuZR+uo4sxthSeQ5WoGlvgSShaE1VI1/xv1bxwp02nyOt0yFGfSWEvMnV6w1F0bAdbThgtW1cSYpqEwQgEmq/8Ms23p4Q4qibU49wgb4LPOnu89VULqBqie/rXiBvaht5A3kfhPyJjmJZkud4eHj8GSHtZd3AeB0/vuNTnIW4egQAp8P9L0f037vaZf3rYYR3iRWVgQakRCJXRKo03nA7Td5epHaL+KGffD0M3+XB01JeBC8OhxBsG4ibFsMmirYtfH7rrpxc1sB/7fBa1Zqe5WESC10axq6yHvgQnLlJMkhMtHFsMhp2NqEB0g6GIKVJGqWsnbKcgOyINv2vV115yq0TL1oV0FW7TQ/+//AU39TDJPbZVY8U0d3Y4bOpl/45Ap/LAwkNb04rr5WS5H6dBrxxt+rkcuZ72DssxKj3Kbe9lt2WmpFjBl0RfDqK48pQZBbCtF433vlzQlmF2ffMNnYpeY18XTNX/sma36Q3XNaUF0WwKIUdoOn2RBfbodEzH1VQFQV9Q+JaeyZO9iMmR8yxlEh6mcY9KOSju0MGznbNaiVeZ7ivHOFq1uzJY7qbIwHRtxMUanviNTbU6BdecmKByR526n6+Y1vAdzUp/QSMzQeR7sKqkwVAD2XTAiHmeTqS4tSOme2vuTrtiHAVBvikNsQaHq6N84Q2x8DjjnEIx9xqjw+GRPITzS5TXK4Priz5PXWaTc0Y25vhr2pn+bV40+2UKIdLz9bFQLQlpQil+3+m11aueL4q1PkQsmi/DGzIOcBEJK37ZRwoMMbMhY4kOsbwJR0dcT1bXoXXrfUZtAR/67WbLt2RQ6E9ujhef++trq9sXn2E+ZpRrDH8dn1rF3y9fvjS/dLXSLmib9tIvu2+1RkG0mG9pvs2V3p0rB47+vFLylwcrJUvGGZXrLrWeLrHkxcz0ApUnhpglq2/0cc8VJUaXuGpU6cVykBtPhQZh4hBEWmDlLJfTO9OOjh+F8tKYfwocgBpn4fcTeuykwu5JM45DMdjPwHUUnmnLqNEYt1H635WJayjF4wDZ6CyasM46VWe6cjIVmc7CFEuJYxx2tzTSzHROn4DT64fSpY2z5wd86JSolCR7VVS9D+e7/qLWxIx6rlXFeKGtMZ0k5efeM05dlaorNRG8WzyZjvGnn/KPdN5V3osT9NQWNtmb3s54PMnSD5dnENoyk+Lm7vmEYW51lkBzjG/yqTTObDYQv+PmZTQ+HS/yMmSy5fOwvSRJDLXai0jgvyyZUBphER+UgcHqEh14VNE4lz4wIKyrdfzNdB3Bq/jany0/V11dvCGqRSNnwkr87aNJ0oWsLjmlOVXL0lLlKEDcczOWY3CWXtG6ghvF9P1c3JnY/wOd+be8AE59nugT7ppOwdiFpyu+NLuVS3eNzVJ5fq1xRvJkpwRSLuvxkB0I1UvM4Cwx11Kq1Xf9JUoyy8zmSzVm/KyT+7wHUW/sPSmbLoFZRxLWob8PUpL3mo3kzCdPIgn9edVzwXs6c+EJZsaerCXzaLBhC95ocLh82+XNQGNCBe69tVs0sCbGi1kMYVm71a5GmLVodNZ8xWYzVEPDTBEozGdkHXe2dPadhQWPYG687unREEP/n7JXsVSUAF4cbjsLW1w++YnyEp4b1laznm05A3lveuzOqU4UbU/Cvbu8OT0u1x0L46xMBprpUkAj5pgxRTmopVsDn8RFQ3epVG8pJwu042Syb5/Itpk9cITt0X1uM36lfQ7/iT4XTqvnQvD94XPo48X4//pZdAbadXoOOS1fmj+IyV8bRBmtQWm0TtSZEKDD+6F7sXRj2CLYLm7+bxwp1hrSZqJUYTiDa/sfVlpNcBehaTydKjvE9NjqO7K1lW+YZmlIkqwR6X129brHdf7ELK9rfQ+XC2d+pbritfWE19aT6rX1KtCW98Or4pb/22++G2mv/rYSh1cwfeDnE8B/ZK/uTGEp/mX8O3neoZPCPPxbf/uNFkxDrkhzuzuYzvPqz11vmfcvX2+FJzBhs//KDXdib7j0It/fWp3kN9wt3HCj6Uvq5HDL3HD5Ne+GW5fZ5JyRLXrQDdeMS36rnWoae0ZaJy1jeKpxFokeFbbo5jJX72H9bLptUzXPrAx82F5omJiUMXLnoaUQ2QqHCyf1m+GZapm7TzJ1/ognc3elPXBv0xbGsv+Xtrc5W5vwtmvOrgEGbWR3r0HN7jXUekkyiwg91DMiAduH2EyMe+hplIiaNeKmLhz2dPo6Gnx/+FBvYR2Zof7/Q51MjbK3VBoEGSln8X2KKvwsjgKBHjoOr7Ob1f8/CHM7n91ruv04qWEjqlR2vivyYSZ6EU5kAdqXleRwchRMnQKMdc445tFRV/lOPjHrdsLdn90pkXbLnwasQjV/iXRFr0xFb3VULUNJ5k+kfZQmhnr4/0sznd6A2eO8Vf62827/44dpIlLulALkC9DarMvhUI9Ilvy11UwPb6buKIDf/8lj9Mn/kcuavW/7xrK2H9q9vrdUM5ZPnC3in9Wd+U+PJK0h/v9BnBpEdsufHz9OAhvS7+pfb7Bk9atSTcqqHoXa5ZsIVVQijj47Czm2opKOPygGRR3UPF7wyYJwj1xpgdzpe9xHSkOLUeRYfcB7udIMRYhwYxwML+No2DePG1mQJ2uxgP6tHwSNIIhDjahxLQ43GuRSpmAmBc2tvV16nITwZCBCM9T4MveGTImbcQDn1v5QJZsjx2oj7oPBXBOYb0P7Sv5lT19+G/7uaQILjDBr0cTLF3Aiw6gZ0bkEhBrwSekRpDSokB6Obm9zOYt6dSyZNtrTq0r7EAJpzIaNeg500OeADEtjxlNajK8Oa6Q+soWFnAZwk/mSmTRxE3OFE65ckQ7dhMnManHW6Sr1J6j+ZE71CelUfuJWXmw/TqbrHXxPQzca2Yua9uXinTpsjr2PH3CYYVSoTrP1+PFWiGRBtfhMc+PTkjxokUjV5dwVIaDEs3YzDqNGpfygeKIzLSgJU/+mp9knsuBhdQcz/JQmNNVEHQdKRJ3n56+6UcVsohh2LDZwcyR5TivPmFGe8XW9eJBVbkubUQywq1UKSl6FkX2naH5FzETkOSdhpBiBs+FKHF0LtOtCLdFk2TFdTvNWrV8+T9Ybx41URbqCOl5B9j4Ielbgyrenm/UDE4ZFp9PteNyc3uLW0+YlDq3GQNWnK9voRKUqU18htNGI8HGMIBQUv6Iqt0HPqR290Nr6udIstk0gN0fFo+4wGCBvInmZwpxms7E76DH89HMrtm17FB7btjkI6N62hOJ7iaV3jDZSinBMatwGDq+mJI0sWa5JeRcycPl4wqwrpR9OwLczqjuVeKnR/Py1makZOnf0TlR9uvvunnLQOHoJPgYInmE8Rnrw2FtKOlEGR2Fau25nMx5nafOfiziT8LOGSZ3FlFrDx1Uu9b4eNYArZpTRPm4EKoUtDe2eSjucohsqDk7JmTzeulXCyqHwEzVkQbuLYacv50RiUV2FQNbXEt8jYMS6YczvahSOSpJVWIONUdFy3m+u1Gc+l09QPETxwu+52YiezK6rdf72rpqoSO9KjbX16d7nW67PCeptGgjHe5R0/Qx5QqzIx4/19P38+PGy/l1vSL3/nhhwdiLamqpYsWBU4ThABzHWNllShugOdcioMwb6ACm654R9H1Nqzm7c1MxLxEL5OjQ7YpQhAPjR0rT4vYkGKIzz41OEn0nDoDi0WTES7kVQpoeRnTOyF8cV9ExVxxY7UB1mdhkehZliZdEWyF4kgbIlLSxU2nSGAk0P2I2Ahfot6tqXndoGxxjsRmrK5gSSvSFtvo8aiSwSmfQ7KcqCxYDsWmH8neJGf704UdbkDAXtweh+Fhr1PzkqrwyiBM/regvpF4J6+Tq/wpytQIWHlQiUZ20LXZG1xoroA/PfQwmuR6GlAWn72g8aVzBKFPSikEEJGAxYMreFsLKWuUl5dLUC1aIf48IP29pZANvB4feSxaVeSXFnOVAVu0Xl9KcmfTplhSnWJlI57RnTSmaMyunPme6YQiqnwv24a8OonNhGM8UaTiW+zXjXMlQlvRMoa++phzOSV5lePlmgN9n9e+NsYaX1dy3UzsQ/YMtKGteguDMnALq63e134Ee6f4blc9K0GOV0KJVI4xEnheWe8CQ6zINHSKDpn3DYQFS5/5WJkaKVU0YJHUhPF3mu0UZddakLPR1Q5FrW0rtLWvCSGT0O7lilh8f6bNALLV/YsgBNpHsKDfMbNQuj67+cyu10EUqQbd16rWcr/F6LclVbhwn28KNel4H2s5aAYvY+xxdS1je0tSdv7wJ+UGmaymPl+dbf87QL+qsIGFg/ePbf3vUORlmC+icQbr8+/xJBc0L81Yvppd7TWcW0+duZW9zmwe62R8+Q3p4YZkH5ve/tW3pTyFIohWgL75Rpp5EvOnl8nRzil3V7tkbsdzZmZBszB9IMMe3wDLiSpW2CgLln9sR+KYPfO5a+1xL5zzWxa3smF2reGBD1F2446eUAZPg1Jszh8lEgH938oyMfxEcfxAZuJY99qmPhZNMTG40pqXw8bzV32EPPpA6cNKIml5dODQlstRRwI0mmK/qiY8Fsfd2R1BNQx3aKVuTaQwfYZqKht4eO9N5uvLO6Q18idMqYHrlPxydZ2pSiykjez0cBRTbJ62lnlzRhA44LMaNw2lvJ0XZm1G1na3vRsSo8v27dat3qUTykbrdEu+Is3CjU47m62oEuOccYn+0V/dkVvWbOBBWH/t98fGKrcIajgWjtfMQPlD2Jutpe9wZ4RKhhBu5Ciqse1dlQQ9pS0zU652TTTmvl8ld4JWn6PYuqY1GBDxVDH+PPo2ppVAejy8vjh1fIfyWAmr13J7idwbaTzUxF+UZ2zxNT6Mj1+fKMQ3ZweZ5RuytCW+GhEhKCZx6eiI65tBsffgl0oRjE0Yij2Ov8NYTvpxDORGRaw0GVXX9qMeJL2pd/dO2M1RPxWsQW6aTCrAJH2Y74S0i7nRxpN0faLiPdhjvmjNt9z6M74fPRDfcZnOOo+lir0X050SbcAHdqtL7/Gxqjx6lRvLMOKecUvjyjRW8+bXjbUvhA/A1IXax0/ArnWcUWnOGS0HgesefL7DmVcbWF5XHTo5riWHve0WqDcaa98V+ziZirGKGuzOB3l16M00kzUc6xC0RIkWVi+LYXgxwPVcMmI04CbX1fpuj1ZHSDLE9lOQggEeo6ovOQ9sxNO87PFWxOWuewEcGwYhZhQC95bO1/ZI+OtGzO8JuXfcU8YiUCTqr8EHOMZ3rYRiLNdEtpSgi3o/AN/o6Ov4aH/nxHWLRpZR1h+cp/uNs4Zrq/ry3/qM+LdHjI392wxXu3/pvFYRs/X83NQO4eLTXRiVFJMTwnj/7u3NIXgAf/LiGs/raIYvADfnfZKd9cNjavTWXGDaFPErlTBjrZQjPwVYGxqA09kYhjkDLzNnsfSSzk5XQhgvrUorbppnhBm2i0RJcB7bFF+PsMfJ+ih+BrORjPa7tBsA6cDnCaPyian9nm4yrKjBZvPKvpycOQWoQ/RzU1FZTpQ+tpkUYzJoHgPb73BEibH6PG16CYBraEX6tFCOpfZMBInFpDn3VGl/2A9abNO+WiQT2/FC27G4tUELzfL/Ypp/y0Y+v7k1td28f/XOWaXG9wXS0oNiCbnsGpqsy5GEGiYNStRhX0uErlRnVo8B8VfVU7ZXYXHH5Tf4Ck39kfOvP3Wc0YZWVcqWA7aXzXns9ixZ9xL1HncS9VhoXTa6mkB5Rg/PQy9T7pHRfTb1I1EMLDong34Aj41pKW3m1p9iTqT0HSjmUVsl0LSXPcVcgOIFmdj1GpPlYWFB9RExS9dAfCZcYPCErGfARP8SBuVBIDq6AZ6b0mLr3ycih+jfUXU0+nU68Sm/rVWf1M+kU8kpSVibgQRJmIpaWVpEg6Vd+c9kFeUwDxk7lA+bTrPqAO+rVO9zkRBM//YO86mNvGlfBfyVwvnLuUV/WqLMu2YqvYVPpkPBAJSTxTpMLiyMn4vz8sFyQXIiGQkl+/lpAQ8e1isWiLBZa7Kl9mpG4c86j4QUDZYjoFj7m95F4WarEntL1MEwhBswPaVaHV8agJIdftQm6gMfbxhuAOs0b8Iz7OpHEpyI6ee/Cl0H3MYrsdLh/7DHS+oAucLaucNeAHXd+6vo+4MVaQzA6wb5wW1Z0X7YtTnhSMkjp32ujOy+4O7flK9VIxY7XRH+a2BG+jQW+dWg0yE3l47cHxv31h67TmepWZ3a/ddLW6K0t7o6txiNp3kalgfok5qd1gW5frc+anwKDsvczOIjBkIi+kI303MHhdZ3ZvOTifakqDudJ8KMAFZoRnJrMiSqhQ3/RUMJsn8s25EWjwF3InMGVUGcHwic8WoirPWOD6cK+BbIm+SqWeQn8D96HkCba3CLIoHYIYPHvBYsjBIuXFq7KO1nV9mrYAEuec3w1ZktmGasDR9G2V34ry4M1g43mPR2BxdViSjevKK4c5NPD0oQlPGIfjKvU5skYSBU94CbvgIkvmbne9HhznTUQ8ORZ+CryWhKMDCR+l/s3exHszE3HRxiLvE50yYrcA5oWu4/eDJLrrbwQDWxFkmYUJ+ZlLwcpWkFHB0nbIzg63MLAl9BYfUNePCYtGzko3AMKfx7da0pN76wbBT9TyG/BxnKmUHNsNqLfvSA1/PjP1uRp8jHSpJWFtSXm2LWWnImVelfI8l/KikPIpZdjMJt5YT9lU5BAi6KCddFGzIRirUvYdKlWw32+lJKdbZLKBwEOkmDbH9lAYupmMLMl+eCOeaCHPtpWrmWAdn0aJoEol00GegSOHmEvWvmXoSdxbq7xpbHYMg/nNGKixPbSiSxKHDr+3Kl0jVVqwSRjLQU0+4XCTj2cfD4c+Y/FSB/9pX3jsTCRmXiWYqFJIKYVW7PeZg3t1VEHv9q9iewtSvGAwApinEFl1/QVEdViuygo+2iGmWy8KgxWGoKrElESyaHM95nMexLwY0/GhlFT3ACLYNl6ug6swhWQyaufwvV2SS5Y8CkBjIhKpA1iHQAqTKD+LJ2CVBNImSmEd68pBQ/kiBUglNnXAH/auR2HgEMb7WrwznkZeLLJOsn0f3M0BZcwS46xZxzzBo4XYiqHi6Tt+WRI70ahrPvQRsaOW9iLuAvvM7zFniU2B6OupyrwR0dYgVuvzTItMgyt90QM3Cr/wERBANf4CJeq5Xkso7oEd5jkdZqoUtGupK9aEO6wYudDRFdgasg1ZD3We/fFxuQgauG3paMlMQly7TsMR35BW8rw6N9cRySG6JlrD8JZ3Z3Hop9n6Gb/GNXu59Bo2kX3J9YkXxTldtKe8u5jl9s93799nmBezRrpYRAoTSPhcKt7FDpFP0pnvOdkqLRBg0A8qC4be1QWMPpEvZIBb/FjouBS3rcI3BMf+Q8DD1ZN6w8BwD3DknCwYBTx5O/LDWUlgvDeBaZRCe7wKw6QhrdHetMQvAlj8qQJe6jTdDIoDRsIn5z37yWPZuyCNCfNA5Y9HI1ysvAA1K7X86oGJ9jeUbG4MIFMFa5T6PiRzWqkyd8nXxKDmRq4kD8hNSZ9Z4hWtEqXSj7TNkjiatJkDk/Y6dVthT2GJGAgEGbNUIMsndbr4oqFNGp1mcKanKOFwDa8cBIS/DoJ5KMQDf52E0Yoloq5gntNxLJh6oIdth1PbTWduFSvDhVWsCZdWb9S5uZc26pf1nDbhkf5AzS+fp5G3WGRd+TQNAu5feHM+9TL97m+SLBAyzBME63kxO1yULAFe/TypNIe+Ulk0staDi6rpT73CoUPf+b3WErF5kq67gVvdHERq4WrlJahosR5/wffEfxGso/DWk9o2yZ/BtBe6ROWcfQlMWASzNEpHWwp3TyI4Ap34LF6+4iwap4koSGKqkzf71glqGZUVTt3ACCc/Lqnwfcskfh72jzayYQF4/liCz7m+ozTDTy/siX0OwINjmIRN7LJXfEuFY0SlK1IqF7CFKvMi3IDg+2K/SD0KxPYGIup4BK5CglfR0tZhAEfb6K7TQ4vh5VOCvtTxX10KI6hcKRAIT9UAI4hNQeRTqU+/cE13bUBFmwZdVH4eod/dIHcNFAqWtdJxAAsKUDQJjnO32S5JTMCFK7uLVGouTQBZuMVx2MfW5/L2YFEwXNWzenQov30XOMsoDOrsaRfhx67jiNp17opPUfaSHM5WqrbmRjSwKGfeYllHZMoewwi3etKZiT+fZpMjSvVmR9OHcXkQeIkH9/2Xw9MDGfL8HZRf8dmLwQPRudyyKb8FGq4L3jQkUCoNPNr5fH29zm9CyqZMXxCrzPV1lB9Mj7zO6U9pNQCr8OnJZspfQOKjPPXR4y/urboAp4NgndYRxeN8SDPzZlkzh1cpUihBmUSR7RTRTS2izV9k7pwibDr4cnZUFnMc4WdZ5q0LwNspAqpa2xF3O0V8Vcu2Bb0isKqVx3AVSb/Jk+xzGI8my4jFvFNEXr23Bv1+/w+Pnz7ZqFLKDjT1fI8HxHYjU7tbKRDPFvdZdf0RagN2OzsUIk/usB31N9Ox7FT55Qqz5SRypemGDc5fZGN9MMV7SnfN8oKDqUDPYKYTaVo4KG/XcSA2wKGN+4OZRN0CD+/oKnj4jOODICOTpny19oFwQWjKFEKEDBx0QXnJahf4WA74ZRy52foIT3aRmbzaK1EwpV8v0a/CbNlSIdf59s94Uk3eh7zH7dqt78j488/FlRjVu+MO4OPP5M4PRGl94fdf27s019QiFFG5f4RcmbcvY3/eEa5A6ZLx7JTSBh89/vPPJHyBeoFf3fV931qgL7BF7rkQ0xs3RXe0lh6DyTUGMQJomBuB4hYJMLWHNO6Og7JdJCpkFXAQw4xYFGKWqa8cnaZhDyLbk60rPc6SCe2Im0PdaqFOWCA3idacZ+ssHsPRm+yVrOhmBIBkFzGKqL2lO2nYezm/+0nG8f/b086zfMq90bI5FEQYGgWOuewKwOUnS5fuP2TLRl+pVSQ675V7HfhCulmyFUehDbAwK6crio+tiocbLvia77/QKrlrhTYOfC8o0fCVbMS2ArtMPR47JRq+E7jjFlKy2S2Xl7AKFCKuXjtRi/ZYj9Ntow2Hjr4nWkFOlnex5zA/i/TevOmeGgFh95EtWkC+nWkhQfHV2QGVCbYSRTBqW8GsriT86zD8EMMwVGkqmMcJ2T9/DO5FHG8a8VkcQ9IXf61jI89VyY9ZpCbg160HamhcuIJRmxkuYWbF6D3e0bRRMVOINd+ui7+goBrAaud+prKiyWfu1gdNcMwd+vNmMOaufGSWxq5OfGjObui+z5vV8aEd96tdZKIQRogwaqdIUwqpgdtWo4nKhiaXSYkuzShmFbpqBGJUoJdmKejV54Ups0F57Ia1epDqvNYwiXZprTfJGy1vJOuhvL3VE2m/C2uktpjrqdk8aN2CXIpXxao2n680OkuymNoOmxsgjA1nZkQwt5q5qeTaJsP1Oc3txTFX4IEqstQLJ9/kYD56o7V3n7vRlJ2c0jrnfN2FiC+k1LG+1DRrC8VdGxmpqO4vWsGQTCbl9c0gRvVdNcEwKnBklIBehT8Y8hqUOGhWnQep8Sc9jcJk3E5lPlLEWrSKyiTamiKZTCqTmkGMKnPbBMOoMndGCehVZmPIa1CZr2YNspvVpYgZLVKju3yl890XHux6vAtgfeQ+efK+I21fX3yPWzu1qxzpwDvXOCRJJuG89FkYJ0cs5m62d05s5fAKG8by5AXsKpU7U/JcmdxNxg/KE01DB92gHcUxiVc9z+ZwdMVLmF8ckIOzN0s0A1WZN7MNO5Hgqwp0B4GQtAeeJpBCOWHWIL7gbE7TZiJN9TQkHnn9ekE24QdE8yCyrEqPV6RX7nyd7SW9F+tFxFyO+2vTEHgB+Ukean0HKzyUUjtReWhA/xhvwUH68hAEODzp98TOKQ1CQbUtUz/1qj8facqDPeDgL2jTAffBh4KgPVcF0B7vlRAyFB6SpDcyOS7qlOgEerwWmk/aMZzvgzQs5tzFUY7kZfrM6IAPiVRIYTPCPHCzpB5WYPHccX8nqjYGDRPtMt+fXiBjQyoyQ6nkK+Fs1DR3uK5mvthuMhqAg/dYHY1WGC2oYxunAOxWaItKXPnp32FR/dWi+qtFdbKjBVHHuwczUIxVgmZy1JSiGVEudxTCdiLOA73rphxQ8gk7eYVCZL2ek0J0gysOF5zFo5Qc1LvaRZg7g/ED9T+9uskMHZyn04kQ3+ZOmVVlKbnbtxckTXzU5ZTmOIjtdD73NuUBe1udMv+DjOtKk9YGgnfh+Q+Tk6OABuQBSW6JCU769hy+vEsSLJrxH3er1KE6zdt+/sQe+/Hnx9+/TP9filFdlb4rT8yaCxiC+Onf1aWwY1WRtcWX9aWQyhEr0U+vvmwuhdLOM4n6WXzZhgc30cvaG+cHXVPxZbdgA7yIlnxPqnVd8WV/KZwoe/KNVC2xYXj3wZ24CdmDgfkhxWxZuqevOqquvgFJdfHlGHK2ozGaHdVe2pv1N2IrtSq+nC6FMKaXlXD43qckW2kdcbA9L1klmNO7WjgBoatX61qTjS7ogafg10k2KT22nbdOM3QB3yxulRgCgpKUva6u//eRFaZ8OvK6aSwFYv9GVHpUAT+koIZ4kA6KAR0ThLYR49vTHCz8Q8Hca9dF6jxT4X2i0b3VEqplPZrk3IYSWtCQmeD35DebvKtDSTxnuYHgQTx8LwcZ56LqYqRMrRhd593TEGBoDd+ScnOt5+5uDotF3VVmGqfNcYGl8aKumawFfsqe60FINXVgc34Zk2VCthDP9PtI1vlR0cNQBR74evGUxjPlus00G9Y3GdxgcNF+4QK/fQ2ky9/gEXgm3ckhvMw6LFVND0CZWiMYmTtiwJlaRW4Q9goQUpte2M7fWTqaSk2PiqiOArLhlkO+cLvVO2Nlq4QbmUBCN3QZbckLFedmKdYuF4+/jeZBOOD5yhu74BBdSuswFsMgFEZxnrkdxFdaKape2r07vMBOaw+7JwiUgFHllhRNSypVaECbGr87JT47Q7szfBE72YShopxar8Ik1tKisWlBjMaag9msgidF7q756mWTLpwvhaVIvo2RpsGrMUx+YPerV7bUYStNyDbSy0jNBYlwVlSL8ZOif6Gz2nbAeoroLp8Ua5Fuep0NFcT2QwRR1ek6eVH1npTjZ6jfaJMzFDecPB+XXrUROwEb0/FLjyCdbjDtdesb1n9QFHWAZnOVs6m/0tNGfJ3wuWE5lQkGFqFMZOhZxHapf+FNbB5Gquois4/XBQSX05ovNwb0IW9Dgo751krN0qW4p3Q6Gz2q9PCcJcJUQy/6YQN1XL2W3HQsLEVmE7x4YBrdm9t9jFetli5Od0QO0/kN1UCLjVbwH5gTqoVmMFBlgflwkiTHlVidYSaM8e+fumDS5QcjQ5ryj8kAqnpZznvrl2Ik+vx2ZQCuV/EOWj1yRTYCSKkTXN8Fh6kBaufAIDefV1Pz+8dq4LfLEi1GaGiM58uxaYjjetsOeUU2XoTBv+kJY+q6sLf/lXYd3I36SPyrKL4Gt47bbqpC3kvdSy9c7wIUhzMYluLt3/2mIMCsvXn/l9cM0zTSjIQto/mREIb28boZHtpE7/w4vkGs8e+Mm4RV8nOujq6DgbxN6vK6Ok6yz1S1tnovJ4K7eV7AhQ7gShR1LV7SK2mfZFm9L0C60TJGn7GM96dUZ6Ge+0BWc1HOMy7qjkZMld2B/FObDHpZsBmE+WwIk/H+Ygg1vkVA26/rNNibTS8BzXUyaFAXBQiXHsu/2L4pGx7pbJ3svTucYFHhP7nHYqY/dzygqjwkR1WFqUSxmMPVE5bv7tpahIFOVrZ5mzDTDENA9SwwknWle+sYvqbb4vHuBixQYWPIg5Yg1iZeJFGhplrEYU4lu4WVmj+Tc4izKkT+jLZyFeMwpWmEQVw0CjqobTBoB0N/2WQd8gv4JBfOp8b53iBPoxDQ1GQP6o928vCmyj46mhJVp2EGkvZYwEYTiY4IpFIgCp0XkmumKTBSd8XK7Y64pNLbyhx+aGiboTkUYxI6x21BidE0Z0OE3/7RJe9PLtaxuEgKhaDT/p8peB0i1anoEt0bcVzmXeqVyawmOboiZ7Gng0C3RYZxvaHzE8VTPu0m8oLuucb2MypJ+tMFeUEjs1JHA2AeM8J8jcqJioiedAtzf1QzvVmmYkGbAU3su4I0hUyUJe7h8pDA5IsTiGxGt93eQajweG8gz6MkTT+vHVhKJvp5Sc7zNGNiFsZL+dWxsZTgz2opw+UdOiaryt/y3pjAcZpJ/HmcAl9F0uUutgIWJ0EZacMgJ810YVZjzRBoH66at/IooNXbRz3APwSLqZrrqLJ0rPxZm2B0262dZiFMfQ8k0wgkjSthdXAalnYwQGALJE997ZhoXGy3UsL40WXH81bvWbx6YVx4HW+NKz7zpVt65pq9MHcsTqMtgqo7n1vjTrf0zx5zzhUC9CWYqPKEP9nbE1qgqetVuX4TDE6VFQFE4EhcmSUuzLI+FnBzVse0zOX7LCnTJebZJzO8TfkiCFcB1M9mPNEtL1KBluYs3wLBCvKPIay9zaAP46V8uRje/Zg6LeLNqtXClLwH9fubC+HzvwO0CoL/9Al5kIExundPXGa48Ogeukcu3TTNPVEm5mGgkdGeOvinodOTsvXnhJR/gOjR0w1rqxaywvw4Ye+kC+sFeCypoqJg9zNDFfQXkmQ0F1PCVFwjnGSXyGblSZj5ZViI40yrGRiq9pAEbmbJqgiTwM2mLKaJ3zx7+diZPLv4o6QG/nQr63N4vFVlfF5HZ2+5J+DkVDwS/qekg8JIkPCDBYlRLCU3IjiNOmN4AUiuuB8DS6XLGAW0LeUytgVtQD2Wc9ybpF0hKBZKiCW0n+KWeUrVEnr8rTGFxeyYFt1m39ygmGAkY8IHkj+ABP1mBTyQxL09V+Cm+Rxs0SM0AjtMNxgYK5XINJbURbxVEeYgHKeRBmF51EBeeCAFkycs6ErkvIO4lGIAnAQZdpvUECAN8oZQCxVGOMnlbe1eSZzkibxm1Aoz4aDFNhXBh1SaNl/tBOJCUJRAquojnK4XeADTKDGVKyguMf6sM3p6cE+YKCwPOx9DZtusyUN+Dsym2aXevudUoPiTBkWfc+f++Iji/5dwDrsdNbBoQMCiiOXwNyUN5ORt4EzkZOvwNpC3AWB/gflp0ntzG/Q3xraku91ef2Nky8/WZKvfgzy8cK6Uc+mM5L0Teg5UJ//gOXxUWaqYXy2hY1oqVV4IDoc6Z/SIqe/s7e3J48E8yfQTRAFADq1b5cDsp4PjCxVZvtffOntrY3Pjd/3eQRAuRF58jrSDEJObKgqnUPNYo7hMIRMh1zch/fcno/TT4XWikAC4TKh32CMru6+3cq2czbH8o+klGN3r99j61uutFx4Pj4aQfsdhHr3e5hXbRA+3jas7rzebWZM9SAy8gFOm+ewvpz1zG8At/EbKmXA8mC3iRag/JvPoMxS7z6y3b5HRj+HCNuesHMyr0idXITP/bkE+/4Pfu6uer1zLq8A3qX//YiWGfy1DTHp9bQAYCWTyHX3aDK4oicEESGEAPqG6/QjCVV0MVvnxc+7Ah66CtXXcvlF+qSummZclBxW6KKj8r0LI+wVKtl2hHYCugWk2GMYE9mP1aGcDwOKSMgpoLZrqgpGGCGNoobOcwI1s6SrLABd8V/tfFRht0CWVHTI6Q89xFKA+DppjlTaIIkl6+GwW6juDzXyfOmrwZzbP+N7fDUwvcAhE5s9P/Y0pgEl4FsS2r+rWLxxCXAYvralZNAcVYvWVWsMcA9N32iTZEvVJedomsAIiLE7ftMgTIHuwOm4dOgrAWycHADEEKDr724TzhpuGB45PlB2ijEd7NWW3ouzUlD0H1LcOp0h9V1O32ApkG9zZ++MR6W1tGf54TASLFCc1eXs02WnUbImwk30CqJPHGLwAMaUBWZFmL89c4B7BnDhH9gOafFDWo7L7j8p54DiBhsMawP27gmUb0E18i1PLsPCJD4PhNKbtligHFsKo8Z0J9ouWkfrdtWQOa0uZdrE/Nv4C4wIAVpeKQLSuBgCQu7G0xBjUjqvBdJB5FpjvGMXvHq8z+2GVWfrW/Dq7OdtN5mAqhMOQn335GQZLHgxzPwvT4vD/eXcfgnNBAgA=";
59
+
60
+// MeshCommander LMS (GZIP'ed, Base64) v0.9.0
61
+var _IntelAmtWebApp_etag = "A2rEfbOagx5Xc9AV3Gmm";
62
+var _IntelAmtWebApp = "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";
63
64
// MeshCommander Local (GZIP'ed, Base64) v0.8.3
65
-var FullSite_IntelAmtLocalWebApp_etag = "4KRCn+aIuFXANJsGKU7G";
66
-var FullSite_IntelAmtLocalWebApp = "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";
65
+var FullSite_IntelAmtLocalWebApp_etag = "xVzv3zwu7TbauOUKmy3r";
66
+var FullSite_IntelAmtLocalWebApp = "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";
67
68
// Check the server certificate fingerprint
69
function onVerifyServer(clientName, certs) {
public/commander-de.htm
new
+1466
@@ -0,0 +1,1466 @@
1
+<!DOCTYPE html><html lang="de" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=Verbinden onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>Getrennt</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>Systemstatus</a><p id=go14 class=nav1 onclick=go(14)><a>Remotedesktop</a><p id=go24 class=nav1 onclick=go(24)> <a>Dateien</a><p id=go13 class=nav1 onclick=go(13)><a>Serial-over-LAN</a><p id=go2 class=nav1 onclick=go(2)><a>Hardware-Informationen</a><p id=go6 class=nav1 onclick=go(6)><a>Ereignisprotokoll</a><p id=go15 class=nav1 onclick=go(15)><a>Audit-Log</a><p id=go21 class=nav1 onclick=go(21)><a>Lager</a><p id=go8 class=nav1 onclick=go(8)><a>Netzwerkeinstellungen</a><p id=go17 class=nav1 onclick=go(17)><a>Interneteinstellungen</a><p id=go16 class=nav1 onclick=go(16)><a>Sicherheitseinstellungen</a><p id=go19 class=nav1 onclick=go(19)><a>Agentenpräsenz</a><p id=go18 class=nav1 onclick=go(18)><a>Systemverteidigung</a><p id=go11 class=nav1 onclick=go(11)><a>Benutzerkonten</a><p id=go22 class=nav1 onclick=go(22)><a>Abonnements</a><p id=go23 class=nav1 onclick=go(23)><a>Weckalarme</a><p id=go20 class=nav1 onclick=go(20)><a>Script Editor</a><p id=go12 class=nav1 onclick=go(12)><a>WSMAN Browser</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value="Disk Map" onclick=iderToggleDiskMap()><input type=button value="Beenden Sie die IDE-R-Sitzung" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>Diskette, Blöcke sind 512 Bytes.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CD-ROM, Blöcke sind 2048 Bytes.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="Skript stoppen" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>Skript ausführen</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>Die Firmware dieses Computers sollte aktualisiert werden. <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>Bitte überprüfen Sie hier</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>Wird geladen...</h1></div><div id=p1 style=display:none><h1>Systemstatus</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>Hardware-Informationen</h1><span id=18></span></div><div id=p6 style=display:none><h1>Ereignisprotokoll</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>Netzwerkeinstellungen</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>Benutzerkonten</h1><span id=23></span></div><div id=p12 style=display:none><h1>WSMAN Browser</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=Abfrage style=margin:4px onclick=wsmanQuery()><input type=button value=klar style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=Filter style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Serial-over-LAN-Terminal</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Der Intel® AMT-Umleitungsport oder die Serial-over-LAN-Funktion sind deaktiviert<span id=28>Klicken Sie hier, um es zu aktivieren.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Der Remotecomputer ist nicht eingeschaltet. Klicken Sie hier, um einen Energiebefehl auszugeben.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Machtaktionen ..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="Starten Sie den Remote-Festplatten-Mount-Vorgang" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Starten Sie die Erfassung" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=Verbinden onclick=connectTerminal(event) disabled="disabled"> <span id=31>Getrennt.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR + LF" title="Schalten Sie um, was die Eingabetaste senden soll" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value="80 x 25" title="Terminalgröße umschalten" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Intel (F10 = ESC + [OM)" title="Schalten Sie den Emulationstyp der Tasten F1 bis F10 um" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Erweiterte Ascii" title="Terminalemulationstyp umschalten" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Rücktaste onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=Einfügen disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>Remotedesktop</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Der Intel® AMT-Umleitungsport oder die KVM-Funktion sind deaktiviert<span id=43>Klicken Sie hier, um es zu aktivieren.</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Der Remotecomputer ist nicht eingeschaltet. Klicken Sie hier, um einen Energiebefehl auszugeben.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="Nach links drehen" onclick=drotate(-1)>↺</div><div class=rb title="Drehe nach rechts" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="Schalten Sie den Vollbildmodus um" onkeypress="return false" onkeydown="return false" value=Voll onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="Speichern Sie einen Screenshot des Remotedesktops" onkeypress="return false" onkeydown="return false" value=Speichern... onclick=deskSaveImage() style=margin-right:3px><input type=button value="Die Einstellungen..." title="Bearbeiten Sie die Remotedesktopeinstellungen" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="Starten Sie den Remote-Festplatten-Mount-Vorgang" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="Ändern Sie den Energiezustand des Remote-Computers" onkeypress="return false" onkeydown="return false" value="Machtaktionen ..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=Verbinden onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>Getrennt.</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>Sieg<option value=1>Win + Down<option value=2>Win + Up<option value=3>Win + L.<option value=4>Win + M.<option value=20>Win + R.<option value=23>Gewinnen + Links<option value=24>Win + Right<option value=5>Umschalt + Win + M.<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Strg-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=Senden onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Strg-Alt-Entf onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=Art onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>Leerer Bildschirm </span><span id=53><input id=54 type=checkbox>Nur anschauen </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>Audit-Log</h1><span id=56></span></div><div id=p16 style=display:none><h1>Sicherheitseinstellungen</h1><span id=57></span></div><div id=p17 style=display:none><h1>Interneteinstellungen</h1><span id=58></span></div><div id=p18 style=display:none><h1>Systemverteidigung</h1><span id=59></span></div><div id=p19 style=display:none><h1>Agentenpräsenz</h1><span id=60></span></div><div id=p20 style=display:none><h1>Script Editor</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>Gestoppt</div><div><input type=button value="Editor anzeigen" title="Wechseln Sie zur Skriptzeilen-Editoransicht" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="Builder anzeigen" title="Wechseln Sie zur Blockeditoransicht" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=Neu... title="Löschen Sie den Skripteditor" onclick=script_newScriptDlg()><input type=button value=Belastung... title="Laden Sie ein Skript aus einer Datei" onclick=script_runScriptDlg()><input type=button value=Speichern... title="Speichern Sie ein Skript in einer Datei" onclick=script_saveScript(event)><input type=button value="Neu starten" title="Kompilieren Sie das Skript und machen Sie sich bereit, es von Anfang an auszuführen" onclick=resetScriptButton()><input type=button value=Fortsetzen title="Führen Sie das Skript vom aktuellen Ausführungspunkt aus" onclick=runScriptButton()><input type=button value=Brechen title="Unterbrechen Sie die Ausführung des Skripts" onclick=breakScriptButton()><input type=button value=Schritt title="Führen Sie einen Schritt des Skripts aus" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>Skript-Generator</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="Filterblöcke ..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>Skript</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>Kompiliertes Skript</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>Variablen</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>Konsole</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>Lager</h1><span id=61></span></div><div id=p22 style=display:none><h1>Event-Abonnements</h1><span id=62></span></div><div id=p23 style=display:none><h1>Weckalarme</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>Dateien</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=Oben> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="Wählen Sie Alle" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=Umbenennen onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=Löschen onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="Neuer Ordner" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=Hochladen onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=Schnitt onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=Kopieren onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=Einfügen onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=Aktualisierung onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">Nach Name sortieren<option value=2>Nach Größe sortiert<option value=3>Nach Datum sortieren<option value=4>Mit Namen absteigen<option value=5>Nach Größe absteigen<option value=6>Abstieg nach Datum</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>Nutzername</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Passwort*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Kennwort bestätigen</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>Lokal<option value=1>Netzwerk<option value=2>Irgendein</select><div>Genehmigung</div></div><div>Erteilte Berechtigungen</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>* Mindestens 8 Zeichen mit Groß-, Klein-, 0-9 und einem von! @ # $% ^ & * () + -</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>Power Action</div></div><div><span style=color:red>Warnung:</span>Einige Stromversorgungsaktionen können zu Datenverlust führen und die Desktop-, Terminal- oder Festplattenumleitungssitzungen trennen.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>Zustimmungscode</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>Primäre Anzeige<option value=1>Sekundäranzeige<option id=d6ThirdDisplay value=2 style=display:none>Dritte Anzeige</select><div>Zustimmungsanzeige</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, Farbe<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>Bildcodierung</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>Lokalen Mauszeiger anzeigen</label><br><label><input type=checkbox id=d7showcad>Zeigen Sie Strg-Alt-Entf</label><br><label><input type=checkbox id=d7limitFrameRate>Begrenzte Bildrate</label><br><label><input type=checkbox id=d7noMouseRotate>Maus nicht drehen</label><br></div><div>Andere Einstellungen</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">Software KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>Qualität</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87,5%<option value=768>75%<option value=640>62,5%<option value=512>50%<option value=384>37,5%<option value=256>25%<option value=128>12,5%</select><div style=height:20px>Skalierung</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=Administrator style=float:right;width:220px><div style=height:20px>Nutzername</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>Passwort</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>Umleitungsport</label><label id=c15 style=display:block><input type=checkbox id=c16>KVM-Remotedesktop</label><label style=display:block><input type=checkbox id=c17>IDE-Umleitung<br></label><label style=display:block><input type=checkbox id=c18>Serial-over-LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>Nicht benötigt<br></label><label><input type=radio name=d10 id=c20 value=1>Nur für KVM erforderlich<br></label><label><input type=radio name=d10 id=c21 value=4294967295>Immer erforderlich<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Maximal 32 Zeichen"><div title="Maximal 32 Zeichen">Profilname</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Maximal 32 Zeichen"><div title="Maximal 32 Zeichen">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>Priorität</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>Wpa psk</select><div>Authentifizierung</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>Keiner</select><div>Verschlüsselung</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Länge zwischen 8 und 63 Zeichen"><div title="Länge zwischen 8 und 63 Zeichen">Passwort*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Länge zwischen 8 und 63 Zeichen"><div title="Länge zwischen 8 und 63 Zeichen">Kennwort bestätigen</div></div></div><div id=dialog19 style=margin:auto;margin:3px>Dadurch wird der gesamte Status von Intel® AMT für diesen Computer in einer Datei gespeichert. Passwörter werden nicht gespeichert, es können jedoch einige vertrauliche Daten enthalten sein.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>Behindert<br><input type=radio name=d20 id=d20b value=1>ICMP-Antwort<br><input type=radio name=d20 id=d20c value=2>RMCP-Antwort<br><input type=radio name=d20 id=d20d value=3>ICMP & RMCP Antwort<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>Synchronisierung der IP-Adresse des Betriebssystems</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>IP Adresse</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Subnetzmarke</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Tor</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Primärer DNS</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Alternatives DNS</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>Behindert<option value=1>Deaktiviert, DHCP-Update<option value=2>aktiviert</select><div>Dynamischer DNS-Client</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>Aktualisierungsintervall (Minuten)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (Sekunden)</div></div><div style=font-size:10px><br>Das Standardintervall beträgt 1440 Minuten, die Standard-TTL beträgt 900 Sekunden.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>Einschalten<option value=10>Zurücksetzen<option value=5>Aus- und Wiedereinschalten<option value=8>Stromausfall<option id=d24p500 value=500>OS Wake aus dem Standby<option id=d24p501 value=501>Energiesparen des Betriebssystems<option value=999>Legen Sie die Startoptionen fest</select><div>Fernbefehl</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>BIOS-Pause</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>Erzwingen Sie einen sicheren Start</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>BIOS-Setup</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>Fortschrittsereignisse erzwingen</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>Netzschalter sperren</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>Reset-Taste sperren</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>Schlaftaste sperren</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>Tastatur sperren</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>BIOS-Passwort-Bypass</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>BIOS neu starten</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>Sicherheitsmodus</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>Verwenden Sie IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Serial-over-LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>Intel® Remote Secure Erase</label><br></div></div><div>Starteinstellungen</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Keiner<option id=ForceDVDBootOption value=1>CD / DVD-Start erzwingen<option id=ForcePXEBootOption value=2>PXE-Start erzwingen<option id=ForceHDBootOption value=3>Festplattenstart erzwingen<option id=ForceDiagBootOption value=4>Diagnosestart erzwingen</select><div>Boot-Quelle</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Keiner<option value=1>Index 1<option value=2>Index 2<option value=3>Index 3<option value=3>Index 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Booten Sie auf Diskette<option value=1>Booten Sie auf CD-ROM</select><div>IDER-Startgerät</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Systemfehler<option id=c45 value=1>Ruhig<option id=c46 value=2>Ausführlich<option id=c47 value=3>Leerer Bildschirm</select><div>Verbocity</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>RSE-Passwort</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>Alarmname</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Weckdatum (Jahr-Monat-Tag)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>Weckzeit (Stunde: Min: Sek)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Intervall (Tage-Stunden-Min.)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>Alarm halten<option value=1>Nach Abschluss löschen</select></div><div style=padding-top:4px>Nach dem Aufwachen</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=Stornieren style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=OK style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=Löschen style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"Ung\u00fcltige Daten":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",
92
+v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"Agent Watchdog"+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... gewechselt zu"+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"Fall Eindringen";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"Eine Remote-Serial-Over-LAN-Sitzung wurde eingerichtet.";if(1==c[2])return"Remote Serial Over LAN-Sitzung beendet. Die Benutzersteuerung wurde wiederhergestellt.";
93
+if(2==c[2])return"Eine Remote-IDE-Umleitungssitzung wurde eingerichtet.";if(3==c[2])return"Remote-IDE-Umleitungssitzung beendet. Die Benutzersteuerung wurde wiederhergestellt."}if(36==a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="verdrahtet"),4294967293==a?"Alle empfangenen Paketfilter wurden abgeglichen"+b+" Schnittstelle.":4294967292==a?"Alle ausgehenden Paketfilter wurden abgeglichen"+b+" Schnittstelle.":4294967290==a?"Der gef\u00e4lschte Paketfilter wurde angepasst"+
94
+b+" Schnittstelle.":"Filter"+a+" wurde auf abgestimmt"+b+" Schnittstelle.";if(192==a)return 0==c[2]?"Sicherheitsrichtlinie aufgerufen. Ein Teil oder der gesamte Netzwerkverkehr (TX) wurde gestoppt.":2==c[2]?"Sicherheitsrichtlinie aufgerufen. Ein Teil oder der gesamte Netzwerkverkehr (RX) wurde gestoppt.":"Sicherheitsrichtlinie aufgerufen.";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"Benutzeranforderung f\u00fcr Remoteverbindung.";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"EAC-Fehler: Versuchen Sie, die Haltung zu ermitteln, w\u00e4hrend NAC in Intel AMT deaktiviert ist.";
95
+if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"HWA-Fehler: Allgemeiner Fehler"}return 6==a?"Authentifizierung fehlgeschlagen"+(c[1]+(c[2]<<8))+" mal. Das System wird m\u00f6glicherweise angegriffen.":30==a?"Keine bootf\u00e4higen Medien":32==a?"Betriebssystemsperre oder Stromunterbrechung":35==a?"Systemstartfehler":37==a?"Die Systemfirmware wurde gestartet (mindestens eine CPU wird ordnungsgem\u00e4\u00df ausgef\u00fchrt).":"Unbekannter Sensortyp #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);
96
+else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);
97
+1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>Lokal</i>",g=5);3==b.InitiatorType&&(b.Initiator="<i>KVM-Standardport</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+
98
+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/","http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+
99
+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),
100
+b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,
101
+execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};
102
+l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
103
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
104
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
105
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
106
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
107
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
108
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
109
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
110
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
111
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
112
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
113
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
114
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
115
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
116
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
117
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
118
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
119
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
120
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
121
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
122
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
123
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
124
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
125
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
126
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
127
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
128
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
129
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
130
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
131
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
132
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
133
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
134
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
135
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
136
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
137
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
138
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
139
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
140
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
141
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
142
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
143
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
144
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
145
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
146
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
147
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
148
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
149
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
150
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
151
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
152
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
153
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="Nicht spezifiziert. ; Kein Systemspeicher ist physisch im System installiert. ; Kein verwendbarer Systemspeicher, der gesamte installierte Speicher hat einen nicht behebbaren Fehler. ; Nicht behebbarer Festplatten- / ATAPI / IDE-Ger\u00e4tefehler. ; Nicht behebbarer Systemplatinenfehler. ; Nicht behebbare Diskette Subsystemfehler. ; Nicht behebbarer Festplattencontrollerfehler. ; Nicht behebbarer PS / 2- oder USB-Tastaturfehler. ; Wechselmedium nicht gefunden. ; Nicht behebbarer Videocontrollerfehler. ; Kein Videoger\u00e4t erkannt. ; Firmware (BIOS) -ROM-Besch\u00e4digung erkannt. ; Nicht \u00fcbereinstimmende CPU-Spannung (Prozessoren mit derselben Versorgung haben nicht \u00fcbereinstimmende Spannungsanforderungen) ; Fehler bei der Anpassung der CPU-Geschwindigkeit".split(";"),
154
+h="Nicht spezifiziert. ; Speicherinitialisierung. ; Festplatteninitialisierung und -test starten. Initialisierung der Sekund\u00e4rprozessoren. Benutzerauthentifizierung. Benutzerinitiiertes System-Setup. USB-Ressourcenkonfiguration. PCI-Ressourcenkonfiguration. Option ROM-Initialisierung. Video-Initialisierung. Cache-Initialisierung. SM Businitialisierung ; Initialisierung des Tastaturcontrollers ; Initialisierung des eingebetteten Controllers / Verwaltungscontrollers ; Anschlie\u00dfen der Dockingstation ; Aktivieren der Dockingstation ; Auswerfen der Dockingstation ; Deaktivieren der Dockingstation ; Aufrufen des Aufweckvektors des Betriebssystems ; Starten des Startvorgangs des Betriebssystems ; Initialisierung des Baseboards oder Motherboards ; reserviert ; Disketteninitialisierung ; Tastaturtest ; Zeigeger\u00e4tetest ; Prim\u00e4rprozessorinitialisierung".split(";"),
155
+g="Nicht spezifiziert ; Andere ; Unbekannt ; Prozessor ; Festplatte ; Peripherieger\u00e4t ; Systemverwaltungsmodul ; Systemplatine ; Speichermodul ; Prozessormodul ; Stromversorgung ; Karte hinzuf\u00fcgen ; Frontplatine ; R\u00fcckwandplatine ; Stromversorgungsplatine ; Antriebsr\u00fcckwandplatine ; Systeminterne Erweiterung Karte ; Andere Systemplatine ; Prozessorkarte ; Netzteil ; Leistungsmodul ; Energieverwaltungskarte ; Geh\u00e4use-R\u00fcckwandplatine ; Systemgeh\u00e4use ; Untergeh\u00e4use ; Andere Geh\u00e4useplatine ; Festplattenschacht ; Peripheriefachschacht ; Ger\u00e4teschacht ; L\u00fcfterk\u00fchlung ; K\u00fchleinheit ; Kabelverbindung ; Speicherger\u00e4t ; Systemverwaltungssoftware ; BIOS ; Intel (r) ME ; Systembus ; Gruppe ; Intel (r) ME ; Externe Umgebung ; Batterie ; Verarbeitungsblatt ; Konnektivit\u00e4tsschalter ; Prozessor / Speichermodul ; E / A-Modul ; Prozessor-E / A-Modul ; Firmware des Management-Controllers ; IPMI-Kanal ; PCI-Bus ; PCI-Express-Bus ; SCSI-Bus ; SATA / SAS-Bus ; Prozessor-Front-Side-Bus".split(";");
156
+l.RealmNames=";; Umleitung ;; Hardware-Asset ; Fernbedienung ; Speicher ; Event Manager ; Speicheradministrator ; Agentenpr\u00e4senz Lokal ; Agentenpr\u00e4senz Remote ; Leistungsschalter ; Netzwerkzeit ; Allgemeine Informationen ; Firmware-Aktualisierung ; EIT ; LocalUN ; Endpunktzugriffskontrolle ; Endpunktzugriffskontrolle Admin ; Ereignisprotokollleser ; \u00dcberwachungsprotokoll ; ACL-Bereich ;;; Lokales System".split(";");l.WatchdogCurrentStates={1:"Nicht angefangen",2:"Gestoppt",4:"Laufen",
157
+8:"Abgelaufen",16:"Suspendiert"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),D={1:"",2:"HTTPS",4:"Local PBA",
158
+8:"WinRE"},y={16:"Sicherheitsadministrator",17:"RCO",18:"Umleitungsmanager",19:"Firmware Update Manager",20:"Sicherheits\u00fcberwachungsprotokoll",21:"Netzwerkzeit",22:"Netzwerkadministration",23:"Speicherverwaltung",24:"Event Manager",25:"Leistungsschalter-Manager",26:"Agent Presence Manager",27:"Drahtlose Konfiguration",28:"EAC",29:"KVM",30:"Benutzer-Opt-In-Ereignisse",32:"Bildschirmausblendung",33:"Watchdog-Ereignisse",1600:"Bereitstellung gestartet",1601:"Bereitstellung abgeschlossen",1602:"ACL-Eintrag hinzugef\u00fcgt",
159
+1603:"ACL-Eintrag ge\u00e4ndert",1604:"ACL-Eintrag entfernt",1605:"ACL-Zugriff mit ung\u00fcltigen Anmeldeinformationen",1606:"ACL-Eingangsstatus",1607:"TLS-Status ge\u00e4ndert",1608:"TLS Server Certificate Set",1609:"TLS-Serverzertifikat entfernen",1610:"TLS Trusted Root Certificate hinzugef\u00fcgt",1611:"TLS Trusted Root Certificate entfernt",1612:"TLS Preshared Key Set",1613:"Kerberos-Einstellungen ge\u00e4ndert",1614:"Kerberos-Hauptschl\u00fcssel ge\u00e4ndert",1615:"Blitzverschlei\u00dfz\u00e4hler zur\u00fcckgesetzt",
160
+1616:"Netzteil ge\u00e4ndert",1617:"Stellen Sie den Realm-Authentifizierungsmodus ein",1618:"Aktualisieren Sie den Client auf den Admin-Steuerungsmodus",1619:"Unprovisioning gestartet",1700:"Power Up durchgef\u00fchrt",1701:"Power Down durchgef\u00fchrt",1702:"Aus- und Wiedereinschalten",1703:"Reset durchgef\u00fchrt",1704:"Legen Sie die Startoptionen fest",1800:"IDER-Sitzung ge\u00f6ffnet",1801:"IDER-Sitzung geschlossen",1802:"IDER aktiviert",1803:"IDER deaktiviert",1804:"SoL-Sitzung er\u00f6ffnet",
161
+1805:"SoL-Sitzung geschlossen",1806:"SoL aktiviert",1807:"SoL deaktiviert",1808:"KVM-Sitzung gestartet",1809:"KVM-Sitzung beendet",1810:"KVM aktiviert",1811:"KVM deaktiviert",1812:"Das VNC-Passwort ist dreimal fehlgeschlagen",1900:"Firmware aktualisiert",1901:"Firmware-Aktualisierung fehlgeschlagen",2E3:"Sicherheits\u00fcberwachungsprotokoll gel\u00f6scht",2001:"Sicherheits\u00fcberpr\u00fcfungsrichtlinie ge\u00e4ndert",2002:"Sicherheits\u00fcberwachungsprotokoll deaktiviert",2003:"Sicherheits\u00fcberwachungsprotokoll aktiviert",
162
+2004:"Sicherheits\u00fcberwachungsprotokoll exportiert",2005:"Sicherheits\u00fcberwachungsprotokoll wiederhergestellt",2100:"Intel® ME Zeiteinstellung",2200:"TCPIP-Parameter eingestellt",2201:"Hostname festgelegt",2202:"Domain Name Set",2203:"VLAN-Parameter eingestellt",2204:"Link Policy Set",2205:"IPv6-Parameter festgelegt",2300:"Globale Speicherattribute festgelegt",2301:"Speicher EACL ge\u00e4ndert",2302:"Speicher FPACL ge\u00e4ndert",2303:"Speicherschreibvorgang",2400:"Benachrichtigung abonniert",
163
+2401:"Benachrichtigung abbestellt",2402:"Ereignisprotokoll gel\u00f6scht",2403:"Ereignisprotokoll eingefroren",2500:"CB-Filter hinzugef\u00fcgt",2501:"CB-Filter entfernt",2502:"CB-Richtlinie hinzugef\u00fcgt",2503:"CB-Richtlinie entfernt",2504:"CB-Standardrichtliniensatz",2505:"CB Heuristik Optionsset",2506:"CB Heuristics State Cleared",2600:"Agent Watchdog hinzugef\u00fcgt",2601:"Agent Watchdog entfernt",2602:"Agent Watchdog-Aktionssatz",2700:"Drahtloses Profil hinzugef\u00fcgt",2701:"Drahtloses Profil entfernt",
164
+2702:"Drahtloses Profil aktualisiert",2800:"EAC Posture Signer SET",2801:"EAC aktiviert",2802:"EAC deaktiviert",2803:"EAC Posture State",2804:"EAC-Set-Optionen",2900:"KVM-Anmeldung aktiviert",2901:"KVM-Anmeldung deaktiviert",2902:"KVM-Passwort ge\u00e4ndert",2903:"KVM-Zustimmung erfolgreich",2904:"KVM-Zustimmung fehlgeschlagen",3E3:"\u00c4nderung der Opt-In-Richtlinie",3001:"Einwilligungscode-Ereignis senden",3002:"Starten Sie das blockierte Opt-In-Ereignis"};l.GetAuditLogExtendedDataStr=function(a,
165
+b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,2+b.charCodeAt(1));if(1603==a)return 0==b.charCodeAt(1)?b.substring(3):null;if(1605==a)return["Ung\u00fcltiger ME-Zugriff","Ung\u00fcltiger MEBx-Zugriff"][b.charCodeAt(0)];if(1606==a){var c=["Behindert","aktiviert"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+=","+b.substring(3));return c}return 1607==a?"Fernbedienung"+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(0)]+", Lokal"+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(1)]:
166
+1617==a?l.RealmNames[ReadInt(b,0)]+","+["NoAuth","Auth","Behindert"][b.charCodeAt(4)]:1619==a?["BIOS","MEBx","Lokale MEI","Lokaler WSMAN","Remote-WSAMN"][b.charCodeAt(0)]:1900==a?"Von"+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" zu"+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"Von"+["Keiner","KVM","Alle"][b.charCodeAt(0)]+" zu"+
167
+["Keiner","KVM","Alle"][b.charCodeAt(1)]:3001==a?["Erfolg","3 mal fehlgeschlagen"][b.charCodeAt(0)]:null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}
168
+function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
169
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
170
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
171
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
172
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
173
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
174
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
175
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
176
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
177
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
178
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
179
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
180
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
181
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
182
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
183
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
184
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
185
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
186
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
187
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
188
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
189
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
190
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
191
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
192
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
193
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
194
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
195
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
196
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
197
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
198
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
199
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
200
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
201
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
202
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
203
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
204
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
205
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
206
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
207
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
208
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
209
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
210
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
211
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
212
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
213
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
214
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
215
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
216
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
217
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
218
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
219
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
220
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
221
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
222
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
223
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
224
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
225
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
226
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
227
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
228
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
229
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
230
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
231
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
232
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
233
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
234
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
235
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
236
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
237
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
238
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
239
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
240
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
241
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
242
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
243
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
244
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
245
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
246
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
247
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
248
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
249
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
250
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
251
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
252
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
253
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
254
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
255
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
256
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
257
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
258
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
259
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
260
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
261
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
262
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
263
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
264
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
265
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
266
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
267
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
268
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
269
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
270
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
271
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
272
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
273
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
274
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
275
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
276
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
277
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
278
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
279
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
280
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
281
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
282
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
283
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
284
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
285
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
286
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
287
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
288
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
289
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
290
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
291
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
292
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
293
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
294
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
295
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
296
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
297
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
298
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
299
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
300
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
301
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
302
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
303
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
304
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
305
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
306
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
307
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
308
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
309
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
310
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
311
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
312
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
313
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
314
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
315
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
316
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
317
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
318
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
319
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
320
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
321
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
322
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
323
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
324
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
325
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
326
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
327
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
328
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
329
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
330
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
331
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
332
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
333
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
334
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
335
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
336
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
337
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
338
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
339
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
340
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
341
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
342
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
343
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
344
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
345
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
346
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
347
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
348
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
349
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
350
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
351
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
352
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
353
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
354
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
355
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
356
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
357
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
358
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
359
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
360
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
361
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
362
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
363
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
364
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
365
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
366
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
367
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
368
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
369
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
370
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
371
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
372
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
373
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
374
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
375
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
376
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
377
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
378
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
379
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
380
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
381
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
382
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
383
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
384
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
385
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
386
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
387
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
388
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
389
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
390
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
391
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
392
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
393
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
394
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
395
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
396
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
397
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
398
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
399
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
400
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
401
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
402
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
403
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
404
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
405
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
406
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
407
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
408
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
409
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
410
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
411
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
412
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
413
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
414
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
415
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
416
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
417
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
418
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
419
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
420
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
421
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
422
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
423
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
424
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
425
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
426
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
427
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
428
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
429
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
430
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
431
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
432
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
433
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
434
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
435
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
436
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
437
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
438
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
439
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
440
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
441
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
442
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
443
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
444
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
445
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
446
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
447
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
448
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
449
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
450
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
451
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
452
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
453
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
454
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
455
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
456
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
457
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
458
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
459
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
460
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
461
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
462
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
463
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
464
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
465
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
466
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
467
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
468
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
469
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
470
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
471
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
472
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
473
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
474
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
475
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
476
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
477
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
478
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
479
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
480
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
481
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
482
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
483
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
484
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
485
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
486
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
487
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
488
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
489
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
490
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
491
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
492
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
493
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
494
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
495
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
496
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
497
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
498
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
499
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
500
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
501
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
502
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
503
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
504
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
505
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
506
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
507
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
508
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
509
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
510
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
511
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
512
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
513
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
514
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
515
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
516
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
517
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
518
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
519
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
520
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
521
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
522
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
523
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
524
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
525
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
526
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
527
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
528
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
529
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
530
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
531
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
532
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
533
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
534
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
535
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
536
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
537
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
538
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
539
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
540
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
541
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
542
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
543
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
544
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
545
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
546
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
547
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
548
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
549
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
550
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
551
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
552
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
553
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
554
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
555
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
556
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
557
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
558
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
559
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
560
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
561
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
562
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
563
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
564
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
565
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
566
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
567
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
568
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
569
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
570
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
571
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
572
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
573
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
574
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
575
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
576
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
577
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
578
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
579
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
580
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
581
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
582
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
583
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
584
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
585
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
586
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
587
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
588
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
589
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
590
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
591
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
592
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
593
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
594
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
595
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
596
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
597
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
598
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
599
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
600
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
601
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
602
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
603
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
604
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
605
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
606
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
607
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
608
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
609
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
610
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
611
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
612
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
613
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
614
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
615
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
616
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
617
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
618
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
619
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
620
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
621
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
622
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
623
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
624
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
625
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
626
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
627
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
628
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
629
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
630
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
631
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
632
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
633
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
634
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
635
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
636
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
637
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
638
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
639
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
640
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
641
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
642
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
643
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
644
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
645
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
646
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
647
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
648
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
649
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
650
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
651
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
652
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
653
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
654
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
655
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
656
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
657
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
658
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
659
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
660
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
661
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
662
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
663
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
664
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
665
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
666
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
667
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
668
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
669
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
670
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
671
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
672
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
673
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
674
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
675
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
676
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
677
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
678
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
679
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
680
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
681
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
682
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
683
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
684
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
685
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
686
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
687
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
688
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
689
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
690
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
691
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
692
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
693
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
694
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
695
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
696
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
697
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
698
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
699
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
700
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
701
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
702
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
703
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
704
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
705
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
706
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
707
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
708
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
709
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
710
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
711
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
712
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
713
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
714
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
715
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
716
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
717
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
718
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
719
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
720
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
721
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
722
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
723
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
724
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
725
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
726
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
727
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
728
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
729
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
730
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
731
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
732
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
733
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
734
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
735
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
736
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
737
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
738
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
739
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
740
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
741
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
742
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
743
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
744
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
745
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
746
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
747
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
748
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
749
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
750
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
751
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
752
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
753
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
754
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
755
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
756
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
757
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
758
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
759
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
760
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
761
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
762
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
763
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
764
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
765
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
766
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
767
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
768
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
769
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
770
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
771
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
772
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
773
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
774
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
775
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
776
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
777
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
778
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
779
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
780
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
781
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
782
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
783
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
784
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
785
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
786
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
787
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
788
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
789
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
790
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
791
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
792
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
793
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
794
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
795
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
796
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
797
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
798
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
799
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
800
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
801
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
802
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
803
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
804
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
805
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
806
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
807
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
808
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
809
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
810
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
811
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
812
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
813
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
814
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
815
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
816
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
817
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
818
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
819
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
820
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
821
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
822
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
823
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
824
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
825
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
826
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
827
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
828
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
829
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
830
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
831
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
832
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
833
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
834
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
835
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
836
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
837
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
838
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
839
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
840
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
841
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
842
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
843
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
844
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
845
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
846
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
847
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
848
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
849
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
850
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
851
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
852
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
853
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
854
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
855
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
856
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
857
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
858
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
859
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
860
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
861
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
862
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
863
+k.Init();return k},ZLIB=ZLIB||{};
864
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
865
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
866
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
867
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
868
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
869
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
870
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
871
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
872
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
873
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
874
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
875
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
876
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
877
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
878
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
879
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
880
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
881
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
882
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
883
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
884
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
885
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
886
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
887
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
888
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
889
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
890
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
891
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
892
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
893
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
894
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
895
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
896
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
897
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
898
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
899
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
900
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
901
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
902
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
903
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
904
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
905
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
906
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
907
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
908
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
909
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
910
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
911
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
912
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
913
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
914
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
915
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
916
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
917
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
918
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
919
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
920
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
921
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
922
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
923
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
924
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
925
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
926
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
927
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
928
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
929
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
930
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
931
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
932
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
933
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
934
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
935
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
936
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
937
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
938
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
939
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
940
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
941
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
942
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
943
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>Wird geladen...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
944
+StatusStrs=["Getrennt","Anschlie\u00dfen ...","Installieren...","In Verbindung gebracht"],scriptstate,t,t2,rsepass=null;
945
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
946
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR + LF":"LF";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
947
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
948
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
949
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
950
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
951
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="Trennen"}function getCurrentMeshNode(){return currentMeshNode}
952
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="Starten Sie die Erfassung";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
953
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
954
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
955
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
956
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
957
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
958
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
959
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
960
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="Verbinden";QH(5,"Getrennt");go(100)}
961
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
962
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
963
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
964
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
965
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
966
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
967
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
968
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
969
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
970
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
971
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"Uhr synchronisieren",3,syncClockEx,"Intel AMT Uhr mit diesem Computer synchronisieren?")}
972
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","Zeit konnte nicht eingestellt werden, Status ="+d):0!=a.Body.ReturnValue?messagebox("","Zeit konnte nicht eingestellt werden, Fehler: "+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}
973
+var DMTFPowerStates=";;Ein;Leichter Schlaf;Tiefschlaf;Aus- und Wiedereinschalten (Soft off);Aus - Schwer;Ruhezustand (Aus weich);Weich aus;Aus- und Wiedereinschalten (Aus-hart);Hauptbus zur\u00fcckgesetzt;Diagnose-Interrupt (NMI);Unzutreffend;Aus - Weich anmutig;Aus - Schwer anmutig;Master-Bus zur\u00fcckgesetzt anmutig;Aus- und Wiedereinschalten (Aus - Weich anmutig);Aus- und Wiedereinschalten (Aus - Hart anmutig);Diagnoseunterbrechung (INIT)".split(";");
974
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>Unbekannt</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"Ein"==a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&
975
+3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=[", Eingesteckt",", Batteriebetrieben"][q.PowerSource]);d+=TableEntry("Leistung",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>Keiner</i>":EscapeHtml(c);d+=TableEntry("Name & Domain",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?
976
+d+=TableEntry("System ID",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("System ID",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" aktiviert im Admin Control Mode (ACM)",4==k.ProvisioningMode&&(p=" aktiviert im Client Control Mode (CCM)",b=9));d+=TableEntry("Intel® ME","v"+getItem(amtlogicalelements,
977
+"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,
978
+n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);
979
+r&&(e+=", Umleitungsport");n&&(e+=", Serial-over-LAN");p&&(e+=", IDE-Redirect");w&&(e+=", KVM");""==e&&(e=" Keiner");d+=TableEntry("Aktive Funktionen",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="Prim\u00e4re Anzeige",7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["Prim\u00e4re Anzeige","Sekund\u00e4ranzeige",
980
+"3. Anzeige"][p.DefaultScreen]),e='<span title="'+format("Die Standardfernanzeige ist {0}",e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+=", Port 5900 aktiviert"),1==p.OptInPolicy&&(e+=","+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"Sekunden Opt-In":"zweite Anmeldung")),e+=","+p.SessionTimeout+" Minute"+(0<p.SessionTimeout?"s":"")+" Session-Timeout",9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService?((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&
981
+1))&&(e+=", Ausblenden erlaubt"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("Remotedesktop",addLinkConditional(e,"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="Unbekannter Zustand",r=amtsysstate.IPS_OptInService.response.OptInRequired,
982
+0==r&&(e="Nicht ben\u00f6tigt"),1==r&&(e="Nur f\u00fcr KVM erforderlich"),4294967295==r&&(e="Immer erforderlich"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("Zustimmung des Benutzers",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(r=
983
+e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==r&&(d+=TableEntry("Energiepolitik",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&(d+=TableEntry("Terminzeit",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+
984
+" ";e+=AddButton("Machtaktionen ...","showPowerActionDlg()")+" ";e+=AddButton("Sicherer Staat...","saveEntireAmtState()")+" ";e+=AddButton("Skript ausf\u00fchren...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");QH(17,d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+
985
+AddRefreshButton("PullSystemStatus(1)")+" Das \u00c4ndern der Netzwerkeinstellungen kann dazu f\u00fchren, dass diese Seite nicht mehr verf\u00fcgbar ist.");d=d+"<br><h2>Allgemeine Einstellungen</h2>"+TableStart();e="";"<i>Keiner</i>"!=c&&(1==q.SharedFQDN&&(e=", mit dem Betriebssystem geteilt"),0==q.SharedFQDN&&(e=", anders als OS"));d+=TableEntry("Name & Domain",addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));c="Behindert";1==q.DDNSUpdateEnabled?c="Jeweils aktiviert"+q.DDNSPeriodicUpdateInterval+
986
+" Minuten ist TTL"+q.DDNSTTL+" Protokoll":1==q.DDNSUpdateByDHCPServerEnabled&&(c="Update per DHCP-Server");d+=TableEntry("Dynamisches DNS",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"Drahtlose Schnittstelle":
987
+"Kabelgebundene Schnittstelle")+"</h2>";d+=TableStart();d+=TableEntry("Verbindungsstatus",1==c.LinkIsUp?"Link ist aktiv":"Link ist ausgefallen");if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 / AC"),14==c.LinkPolicy[l]&&e.push("Sx / AC"),16==c.LinkPolicy[l]&&e.push("S0 / DC"),224==c.LinkPolicy[l]&&e.push("Sx / DC");0==e.length&&e.push("");d+=TableEntry("Link-Richtlinie",addLinkConditional(0==e.length?"Nicht verf\u00fcgbar":"Verf\u00fcgbar in: "+
988
+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("MAC-Adresse",c.MACAddress));amtwirelessif==a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("Zustand",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("Radio State",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+", SSID: "+
989
+(s?s:"<i>Keiner</i>")));amtwirelessif!=a&&(d+=TableEntry("Antworten Sie auf Ping",addLinkConditional(["Behindert","ICMP-Antwort","RMCP-Antwort","ICMP & RMCP Antwort"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"Automatisch mit DHCP-Server":"Statische IP-Adresse",1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("IPv4-Status",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("IPv4-Adresse",isIpAddress(c.IPAddress,
990
+"Keiner"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("IPv4-Gateway / Maske",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"Keiner")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("IPv4-Domainnamenserver",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r="Behindert",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value==
991
+"Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?"Aktivierte, automatische und manuelle Adressen":"Aktiviert, Automatische Adressen");d+=TableEntry("IPv6-Status",addLinkConditional(r,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=
992
+0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=","),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("IPv6-Adresse",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("IPv6-Adresse","Keiner");isIpAddress(c.CurrentDefaultRouter)&&(d+=TableEntry("IPv6-Standardrouter",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("IPv6-Domainnamenserver",
993
+e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<amtversion||11==amtversion&&5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
994
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
995
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"Link-Richtlinie",3,showLinkPolicyDlgEx,a,b)}}
996
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
997
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Link-Richtlinie",format("Neue Linkrichtlinie kann nicht festgelegt werden, Fehler {0}",d))}
998
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>Keiner</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
999
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>Vertrauensw\u00fcrdige</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+" Bytes,<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+
1000
+c+")>Herunterladen</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" Bytes,<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>Herunterladen</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
1001
+function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
1002
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"Speichern Sie den gesamten Intel® AMT-Status",3,saveEntireAmtStateOk)}}
1003
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"Speichern Sie den gesamten Intel® AMT-Status",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1004
+function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1005
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>Prim\u00e4re Anzeige</option><option value=1>Sekund\u00e4ranzeige</option>";9<amtversion&&(c+="<option value=2>3. Anzeige</option>");c+='</select><div style=padding-top:4px>Standardanzeige</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Sitzungszeitlimit (Minuten)</div></div>';
1006
+1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Opt-In-Zeitlimit (Sekunden)</div></div>');c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Deaktiviert, empfohlen</option><option value=1>Aktiviert, Legacy-KVM-Viewer</option></select><div style=padding-top:4px>Port 5900</div></div>";
1007
+c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>5900 Passwort (8 Zeichen)</div></div>";9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+='<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Behindert</option><option value=1>aktiviert</option></select><div style=padding-top:4px title="Diese Funktion wird nicht oft unterst\u00fctzt">Bildschirmausblendung</div></div>');
1008
+c+="</div>";setDialogMode(11,"Remotedesktopeinstellungen",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}
1009
+function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1010
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1011
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("Remotedesktopeinstellungen",format("Fehler {0}, Werte k\u00f6nnen nicht festgelegt werden.",d))}
1012
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("Error",format("Das Ausblenden des Bildschirms konnte nicht festgelegt werden. Das Ausblenden wird auf diesem System m\u00f6glicherweise nicht unterst\u00fctzt ({0}).",d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}
1013
+function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1014
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("Protokoll einfrieren","FreezeLog(0)"):AddButton("Protokoll einfrieren","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="Filter" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1015
+AddRefreshButton("PullEventLog(1)")+AddButton("Protokoll l\u00f6schen","ClearLog()")+AddButton("Speichern...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1016
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>Quelle</b><td class=r1><b>Beschreibung</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1017
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1018
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"Ereignisprotokoll l\u00f6schen?"),setDialogMode(1,"Ereignisprotokoll",3,ClearLogEx))}function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("Ereignisprotokoll","Fehler beim L\u00f6schen, Fehler: "+d):PullEventLog()})}
1019
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("Zeit",c.Time.toLocaleString());a+=addHtmlValue("Quelle",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("Beschreibung",c.Desc);a+=MoreStart();a+=addHtmlValue("Ger\u00e4teadresse",c.DeviceAddress);a+=addHtmlValue("Entit\u00e4t",c.Entity);a+=addHtmlValue("Entit\u00e4tsinstanz",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];a+=addHtmlValue("Daten",
1020
+d);a+=addHtmlValue("Offset",c.EventOffset);a+=addHtmlValue("Sensorart",c.EventSensorType);a+=addHtmlValue("Schwere",c.EventSeverity);a+=addHtmlValue("Quelle Typ",c.EventSourceType);a+=addHtmlValue("Art",c.EventType);a+=addHtmlValue("Sensornummer",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("Ereignis # {0} Details",b+1),a)}}
1021
+function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1022
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1023
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Event-Abonnenten verwalten.<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],
1024
+b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>Keine Abonnements gefunden.</i></div><br>");e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("Neues Abonnement","newSubscriptionButton()"));b+="<br><td class=r1>"+
1025
+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"dr\u00fccken",3:"Dr\u00fccken Sie mit ACK",4:"Veranstaltungen",5:"ziehen"};
1026
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("Ziel",a.Destination);d+=addHtmlValue("Filter",c);d+=addHtmlValue("Liefermodus",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"Abonnement"+(b+1),xxAccountAdminName?5:1,deleteSubscriptionButton,
1027
+d+"</div>",b)}}
1028
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
1029
+Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1030
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>dr\u00fccken</option><option value=PushWithAck>Dr\u00fccken Sie mit ACK</option></select><div style=padding-top:4px>Art</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+='<option value="'+subscriptionsFilters[c].InstanceID+
1031
+'">'+subscriptionsFilters[c].CollectionName.substring(13)+"</option>";b+="</select><div style=padding-top:4px>Filter</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>URL</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>Keiner</option><option value=1>Verdauen</option></select><div style=padding-top:4px>Authentifizierung</div></div>";
1032
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Nutzername</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Passwort</div></div>";b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>Argumente</div></div>";
1033
+setDialogMode(11,"Event-Abonnement hinzuf\u00fcgen",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1034
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1035
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="Unbekannt;Andere;aktiviert;Behindert;Herunterfahren;Unzutreffend;Aktiviert aber offline;Im Test;Aufgeschoben;Ruhe;Beginnend".split(";");
1036
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"Behindert":"aktiviert",c&2&&(b+=", Gesperrt"),c&4&&(b+=", Fast voll"),c&8&&(b+=", Voll"),c&16&&(b+=", Kein Schl\u00fcssel"),c="<h1>\u00dcberwachungsprotokolleinstellungen</h1>"+TableStart(),c+=TableEntry("Zustand",b),c+=TableEntry("Lager",a[0].CurrentNumberOfRecords+" Aufzeichnungen),"+a[0].PercentageFree+"% kostenlos"),c+=TableEntry("Richtlinie \u00fcberschreiben",2==a[0].OverwritePolicy?"Wraps wenn voll":"\u00dcberschreibt nie"),
1037
+c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1038
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="Filter" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("Speichern...","SaveAuditLog()")+AddButton("Protokoll l\u00f6schen","ClearAuditLog()"))+"<br>");if(0==c.length)d="Es wurden keine \u00dcberwachungsprotokollereignisse gefunden.";else{var e=
1039
+0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>Zeit</b><td class=r1 style=width:260px><b>Initiator</b><td class=r1><b>Action</b>";for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+=","+q.Event);null!=q.ExStr&&(p+=","+q.ExStr);""!=k&&""!=r&&(k+=",");d+="<tr id=xamtaudit"+
1040
+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}
1041
+function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","Intel AMT Audit Log",auditLog)}function ClearAuditLog(b){QH(66,"\u00dcberwachungsprotokoll l\u00f6schen?");setDialogMode(1,"Audit-Log",3,ClearAuditLogEx)}
1042
+function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("Audit-Log","Error: "+d)}
1043
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("Zeit",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("Initiator",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("Adresse",a.NetAddress));d+=addHtmlValue("Anwendung",a.AuditApp);d+=addHtmlValue("Veranstaltung",a.Event);if(null!=a.ExStr)d+=addHtmlValue("Erweiterte Daten",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<e.length&&(e+=","),e+=a.Ex.charCodeAt(c);""!=
1044
+e&&(d+=addHtmlValue("Datenwerte",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("Datenzeichenfolge",a.Ex.substring(2)))}messagebox("Audit Event #"+(b+1)+" Einzelheiten",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;
1045
+function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1046
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1047
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1048
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1049
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"Behindert";var c=(1==xxTlsSettings[b].MutualAuthentication?"TLS mit gegenseitiger Authentifizierung":"Serverauthentifizierung TLS")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" und Nicht-TLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1050
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("Remote-TLS-Sicherheit",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("Lokale TLS-Sicherheit",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Verwalten Sie Intel® AMT-Zertifikate f\u00fcr diesen Computer.<br><br>");
1051
+if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>Keine Zertifikate gefunden.</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b=", Vertrauensw\u00fcrdige Wurzel"),xxCertificates[d].XPrivateKey&&(b=", Privat Schl\u00fcssel"),d==xxTlsCurrentCert&&(b+=", TLS-Zertifikat"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+
1052
+b+"</i></div></div>";for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>Nicht zugewiesenes privates Schl\u00fcsselpaar #"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("Zertifikat hinzuf\u00fcgen ...","addCertButton()")+AddButton("Zertifikat ausstellen ...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1053
+function showKeyPairDetails(b){setDialogMode(11,"Schl\u00fcsselpaar #"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"Dies ist ein \u00f6ffentliches / privates Zertifikatschl\u00fcsselpaar, das zu keinem Zertifikat geh\u00f6rt. Dieser Eintrag sollte vor\u00fcbergehend sein.")}
1054
+var xxCertSubjectNames={CN:"Gemeinsamen Namen",O:"Organisation",OU:"Organisationseinheit",S:"Staat / Provinz",ST:"Staat / Provinz",L:"Lokalit\u00e4t",C:"Land",SN:"Nachname",GN:"Vorname"};
1055
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("Zertifikat",c.X509Certificate.length+" Bytes,<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>Herunterladen</a>");a+=addHtmlValue("Vertrauensw\u00fcrdige Wurzel",c.TrustedRootCertficate?"Ja":"Nein");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("Privat Schl\u00fcssel","Vorhanden"));a+='<br><div style="border-bottom:1px solid gray"><i>Zertifikat Betreff</i></div><br>';for(var d in c.XSubject)c.XSubject[d]&&
1056
+(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>Ausstellerzertifikat</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"Zertifikat -"+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},
1057
+function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}var xxDragDropCertFiles=null;
1058
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>Zertifikatdatei</div></div>")+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>Vertrauensw\u00fcrdiges Stammzertifikat</option><option value=0>Kettenzertifikat</option></select><div style=padding-top:4px>Art des Zertifikats</div></div>",
1059
+setDialogMode(11,"Zertifikat hinzuf\u00fcgen",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1060
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1061
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>Zertifikat Passwort</div></div>",
1062
+b+='<br><div style="border-bottom:1px solid gray"><i>Intel® AMT-Zertifikat</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>Gemeinsamen Namen</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>Organisation</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>Staat / Provinz</div></div>",
1063
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>Land</div></div>",b+='<div>Zertifikatsverwendung</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',b+="<li><label><input type=checkbox id=d11_cu4 checked>TLS-Server (HTTPS)</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>TLS-Client (HTTPS)</label></li>",
1064
+b+="<li><label><input type=checkbox id=d11_cu6>E-Mail-Schutz</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>Codesignatur</label></li>",b+="<li><label><input type=checkbox id=d11_cu8>Zeitstempel</label></li>",b+="</ul>",setDialogMode(11,"Zertifikat ausstellen",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1065
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1066
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("Zertifikat ausstellen","Zertifikat kann nicht entschl\u00fcsselt / entschl\u00fcsselt werden.")}
1067
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1068
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("Zertifikat ausstellen","Schl\u00fcsselpaar konnte nicht generiert werden. Status: "+d):0!=a.Body.ReturnValue?messagebox("Zertifikat ausstellen","Schl\u00fcsselpaar konnte nicht generiert werden."+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1069
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("Zertifikat ausstellen","Schl\u00fcsselpaar konnte nicht generiert werden. Status: "+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"Nicht vertrauensw\u00fcrdiges Stammzertifikat"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=
1070
+xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("Zertifikat ausstellen","Zertifikat kann nicht signiert werden."):(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,
1071
+q.length-25),GenerateKeyPairResponse4))}}function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("Zertifikat ausstellen","Schl\u00fcsselpaar konnte nicht generiert werden. Status: "+d):PullCertificates()}function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("Zertifikat hinzuf\u00fcgen","Zertifikat kann nicht hinzugef\u00fcgt werden, Fehler"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}
1072
+function certificateRemoved(b,c,a,d){200!=d?messagebox("Zertifikat entfernen","Zertifikat kann nicht entfernt werden, Fehler"+d):PullCertificates()}function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1073
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>Kein Zertifikat, TLS deaktiviert</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>Zertifikat</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
1074
+b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="Durch Kommas getrennte Liste der gebr\u00e4uchlichen Zertifikatsnamen, die eine Remoteverbindung herstellen d\u00fcrfen."><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="name1, name2"><div style=padding-top:4px>Remote CN\'s</div></div>';setDialogMode(11,
1075
+"TLS-Einstellungen",3,showSetTlsSecurityDlgOk,b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);getSelectElement("tlsremote").value=(1==xxTlsSettings[c].MutualAuthentication?
1076
+2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1077
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1078
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1079
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1080
+b,c,d){200!=d?messagebox("","Zeit konnte nicht eingestellt werden, Status ="+d):0!=c.Body.ReturnValue?messagebox("","Zeit konnte nicht eingestellt werden, Fehler: "+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,
1081
+0,1,a[1]);statusbox("TLS-Einstellungen","Neue Sicherheitseinstellungen anwenden ...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1082
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","Fehler beim Festlegen der TLS-Sicherheit, status ="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1083
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","Fehler beim Festlegen der TLS-Sicherheit, status ="+d):0!=a.Body.ReturnValue?messagebox("","Fehler beim Festlegen der TLS-Sicherheit, Fehler: "+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1084
+function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1085
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1086
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1087
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1088
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}var watchdogEnabledStates="Unbekannt;Andere;aktiviert;Behindert;Herunterfahren;Unzutreffend;Aktiviert aber offline;Im Test;Aufgeschoben;Ruhe;Beginnend".split(";"),watchdogMonitoredEntity="Unbekannt;Andere;Betriebssystem;Startvorgang des Betriebssystems;Prozess zum Herunterfahren des Betriebssystems;Firmware-Startvorgang;BIOS-Startvorgang;Anwendung;Serviceprozessor".split(";");
1089
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("Maximale Wachhunde",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" Aufpasser");b+=TableEntry("Maximale Gesamtaktionen",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" Aktionen");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Verwalten Sie Intel® AMT-Agenten-Anwesenheits-Watchdogs.<br><br>";if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||
1090
+0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>Kein Agent Presence Watchdog gefunden.</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="Aktion hinzuf\u00fcgen ..." onclick=addWatchdogAction(event,'+
1091
+c+")>";a.transitions&&(b+='<input type=button style=float:right value="Aktionen l\u00f6schen ..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+=": Zu protokollierendes Ereignis")}""!=
1092
+d&&(b+="<div style=padding:12px>"+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("Watchdog hinzuf\u00fcgen ...","AddWatchdog()"));b+="<br>";QH(60,b)}}function getWatchdogTransitionStr(b){if(31==b)return"Jeder Staat";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1093
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("Beschreibung",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("\u00dcberwachte Entit\u00e4t",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("Aktuellen Zustand",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("Aktivierter Status",watchdogEnabledStates[b.EnabledState]);c+=addHtmlValue("Startintervall",
1094
+b.StartupInterval+" Sekunde (n)");c+=addHtmlValue("Timeout-Intervall",b.TimeoutInterval+" Sekunde (n)");setDialogMode(11,format("Wachhund {0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1095
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Name</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="Generieren Sie eine zuf\u00e4llige Ger\u00e4te-ID">'+addLink("Ger\u00e4te ID","GenerateWatchdogGuid()")+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Start (Sekunden)</div></div>";
1096
+b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Zeit\u00fcberschreitung (Sekunden)</div></div>";setDialogMode(11,"Watchdog hinzuf\u00fcgen",3,AddWatchdogOk,b);AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}
1097
+function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1098
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1099
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("Wachhund","Watchdog kann nicht hinzugef\u00fcgt werden, Fehler #"+d):PullWatchdog()}
1100
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>Von<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>Zu<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"Watchdog-Aktion hinzuf\u00fcgen",
1101
+3,addWatchdogActionOk,d+"</table><br>Aktion ausf\u00fchren<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>In das Ereignisprotokoll schreiben<br />",a);addWatchdogActionUpdate();haltEvent(b)}function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1102
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Watchdog-Aktion","Watchdog-Aktion kann nicht hinzugef\u00fcgt werden, Fehler #"+d):PullWatchdog()}
1103
+function deleteWatchdogActions(b,c){setDialogMode(11,"Watchdog-Aktionen l\u00f6schen",3,deleteWatchdogActionsOk,"Alle Aktionen f\u00fcr diesen Watchdog l\u00f6schen?",xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1104
+function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Watchdog-Aktion","Watchdog-Aktionen k\u00f6nnen nicht entfernt werden, Fehler #"+d):PullWatchdog()}
1105
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"Alle IP-Pakete",2054:"Alle ARP-Pakete"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"Erlaube, z\u00e4hle",1:"Drop, Count",2:"Bewertungslimit",3:"erm\u00f6glichen",4:"Fallen"},xxSystemDefenceFilters={HdrProtocolID:1,HdrDestAddress:2,HdrDestMask:2,HdrSrcAddress:2,
1106
+HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,TCPFlagsOn:3,TCPFlagsOff:3};function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}
1107
+function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1108
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1109
+a}b+=TableStart();c="<i>Keiner</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("Standardrichtlinie f\u00fcr Kabel",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d=1==d?d+" Paket":d+" Pakete",b+=TableEntry((0==c?"Verdrahtet":"Kabellos")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>Verwalten von Intel® AMT-Systemverteidigungsrichtlinien.<br><br>";
1110
+if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+="<div style=padding-left:15px><i>Keine Systemverteidigungsrichtlinien gefunden.</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+c+")><div style=padding-top:3px><b>"+
1111
+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>Verwalten Sie Intel® AMT-Systemschutzfilter.<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>Es wurden keine Systemverteidigungsfilter gefunden.</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||
1112
+(d="Alle Ethernet-Protokoll"+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" beim"+a.FilterProfileData+" Paket / Sek"),1==a.ActionEventOnMatch&&(d+=", Ereignis beim Spiel"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=xxSystemDefense.AMT_IPHeadersFilter.responses[c];
1113
+(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="Alle Ethernet-Protokoll"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==a.FilterProfile&&(d+=" beim"+a.FilterProfileData+" Paket / Sek");1==a.ActionEventOnMatch&&(d+=", Ereignis beim Spiel");var q=0;for(e in xxSystemDefenceFilters)a[e]&&q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+
1114
+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("Filter hinzuf\u00fcgen ...","AddDefenseFilter()")+AddButton("Richtlinie hinzuf\u00fcgen ...","AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}
1115
+function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1116
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1117
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1118
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1119
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>Keiner";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1120
+"Standard-Systemverteidigungsrichtlinie",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>Standardrichtlinie</div></div>",b)}}
1121
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
1122
+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1123
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">Intel (r) AMT Ethernet Port '+
1124
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1125
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("Standard-Systemverteidigungsrichtlinie","Richtlinie, Fehler kann nicht festgelegt werden"+d):PullSystemDefense()}
1126
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Name</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Ethernet IP-Paketfilter<option value=1>Ethernet ARP-Paketfilter<option value=2>IPv4-Paketfilter<option value=3>IPv6-Paketfilter</select><div style=padding-top:4px>Art</div></div>";b+=
1127
+'<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="Optionale Regeln" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u00dcbereinstimmende Regeln</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Ausgehend / Senden<option value=1>Eingehend / Empfangen</select><div style=padding-top:4px>Richtung</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Erlaube, z\u00e4hle<option value=1>Drop, Count<option value=2>Bewertungslimit<option value=3>erm\u00f6glichen<option value=4>Fallen</select><div style=padding-top:4px>Aktion</div></div>";
1128
+b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Pakete / Sekunde</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>Nichts tun<option value=1>Ereignis beim Spiel</select><div style=padding-top:4px>Ereignisprotokoll</div></div>";setDialogMode(11,"Systemverteidigungsfilter hinzuf\u00fcgen",
1129
+3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1130
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1131
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="Hdr"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1132
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1133
+function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("Systemverteidigungsfilter hinzuf\u00fcgen","Filter kann nicht hinzugef\u00fcgt werden, Fehler #"+d):PullSystemDefense()}
1134
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="Ethernet-Verkehr",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="Alle Ethernet-Protokoll"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="IP-Verkehr",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="Alle IP-Protokoll"+d.HdrIPVersion));var p;p=""+addHtmlValue("Name",EscapeHtml(d.Name));p+=addHtmlValue("Art",e);p+=addHtmlValue("Passender Verkehr",
1135
+a);p+=addHtmlValue("Richtung",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("Filter"+a,e));p+=addHtmlValue("Ereignis beim Spiel",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,"Ethernet Filter #"+d.InstanceID,5,showFilterDetailsOk,
1136
+p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("Filter entfernen","Filter kann nicht entfernt werden. Stellen Sie sicher, dass er nicht verwendet wird."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1137
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>Name</div></div><div style=height:26px;margin-top:4px><select id=policytx title="Standardaktion f\u00fcr ausgehenden Datenverkehr" style=float:right;width:133px><option value=0>Allow<option value=1>Fallen<option value=2>Erlaube, z\u00e4hle<option value=3>Drop, Count<option value=4>Zulassen, Z\u00e4hlen, Ereignis<option value=5>Drop, Count, Event</select><select id=policyrx style=float:right;width:133px title="Standardaktion f\u00fcr eingehenden Datenverkehr"><option value=0>erm\u00f6glichen<option value=1>Fallen<option value=2>Erlaube, z\u00e4hle<option value=3>Drop, Count<option value=4>Zulassen, Z\u00e4hlen, Ereignis<option value=5>Drop, Count, Event</select><div style=padding-top:4px>Standard TX / RX</div></div>';b+=
1138
+"<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1139
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>Filter hinzuf\u00fcgen</div></div>"}setDialogMode(11,"Systemverteidigungsrichtlinie hinzuf\u00fcgen",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}
1140
+function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1141
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>Diese Richtlinie enth\u00e4lt keine Filter.</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Entfernen","removeFilterButton("+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+GetFilterById(xxAddDefensePolicyFilters[c]).Name+
1142
+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1143
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1144
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("Systemverteidigungsrichtlinie hinzuf\u00fcgen","Richtlinie kann nicht hinzugef\u00fcgt werden, Fehler #"+d):PullSystemDefense()}
1145
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("Name",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("Vorrang",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"Fallen":"erm\u00f6glichen";1==c.TxDefaultCount&&(d+=", Anzahl");1==c.TxDefaultMatchEvent&&(d+=", Veranstaltung");a+=addHtmlValue("Standard-TX-Aktion",d);d=1==c.RxDefaultDrop?"Drop":"Allow";1==c.RxDefaultCount&&(d+=", Count");1==c.RxDefaultMatchEvent&&
1146
+(d+=", Event");a+=addHtmlValue("Standard-Empfangsaktion",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=addHtmlValue("Filter #"+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("Richtlinie #",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}
1147
+function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("Richtlinie entfernen","Richtlinie kann nicht entfernt werden. Stellen Sie sicher, dass sie nicht verwendet wird."):PullSystemDefense()}var xxWireless;function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}function wifiRefresh(){xxdialogMode||PullWireless()}
1148
+var xxWifiState={3:"Behindert",32768:"Aktiviert in S0",32769:"Aktiviert in S0, Sx / AC"},xxRadioState={2:"Ein, Verbunden",3:"aus",6:"Ein, Nicht verbunden"},xxWifiAuthenticationMethod={1:"Andere",2:"\u00d6ffnen",3:"Gemeinsamer Schl\u00fcssel",4:"Wpa psk",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"Andere",2:"WEP",3:"TKIP-RC4",4:"CCMP-AES",5:"Keiner"};function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1149
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>Drahtlose Profile</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>Drahtlose Profile, die Intel® AMT f\u00fcr die Netzwerkkonnektivit\u00e4t verwendet.<br><br>";for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+
1150
+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("Entfernen",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>Keine drahtlosen Profile vorhanden</i><br>");e+="<br><td class=r2>";e=xxAccountAdminName?e+TableEnd(AddButton("Neues Profil","showWifiNewProfile()")):e+TableEnd("");
1151
+QH(22,e+"<br>")}}}function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"Drahtloser Zustand",3,wifiStateDlg,b)}}
1152
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1153
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("Profilname",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("Authentifizierung",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("Verschl\u00fcsselung",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("Priorit\u00e4t",b.Priority);messagebox("Drahtloses Profil",c+"</div>")}}
1154
+function wifiRemoveButton(b){xxdialogMode||(QH(66,format('WLAN-Profil entfernen "{0}"?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"Drahtloses Profil",3,function(){removeWifiButtonEx(b)}))}function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}
1155
+function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1156
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"Drahtloses Profil hinzuf\u00fcgen",3,function(){addWifiProfile()});updateWifiDialog()}}
1157
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1158
+PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1159
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1160
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1161
+var DMTFCPUStatus="Unbekannt;aktiviert;Vom Benutzer deaktiviert;Vom BIOS deaktiviert (POST-Fehler);Leerlauf;Andere".split(";"),DMTFMemType="Unbekannt;Andere;DRAM;Synchroner DRAM;Cache-DRAM;EDO;EDRAM;VRAM;SRAM;RAM;Rom;Blitz;EEPROM;FEPROM;EPROM;CDRAM;3DRAM;SDRAM;SGRAM;RDRAM;DDR;DDR-2;BRAM;FB-DIMM;DDR3;FBD2;DDR4;LPDDR;LPDDR2;LPDDR3;LPDDR4".split(";"),DMTFMemFormFactor=";Andere;Unbekannt;SIMM;SCHLUCK;Chip;TAUCHEN;ZIP;Propriet\u00e4re Karte;DIMM;TSOP;Reihe von Chips;RIMM;SODIMM;SRIMM;FB-DIM".split(";"),
1162
+DMTFProcFamilly={191:"Intel® Core ™ 2 Duo Prozessor",192:"Intel® Core ™ 2 Solo Prozessor",193:"Intel® Core ™ 2 Extreme Prozessor",194:"Intel® Core ™ 2 Quad-Prozessor",195:"Intel® Core ™ 2 Extreme Mobilprozessor",196:"Intel® Core ™ 2 Duo Mobilprozessor",197:"Intel® Core ™ 2 Solo Mobilprozessor",198:"Intel® Core ™ i7-Prozessor",199:"Dual-Core Intel® Celeron® Prozessor"},HardwareInventory;
1163
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("Speichern...","SaveHardwareLog()")+" Hardwareinformationen werden beim Systemstart erfasst.");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>Plattform</h2>"+FullTable({Computermodell:c.Model,Hersteller:c.Manufacturer,
1164
+"Ausf\u00fchrung":c.Version,Ordnungsnummer:c.SerialNumber,"System ID":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>Fu\u00dfleiste</h2>";b+=FullTable({Hersteller:d.Manufacturer,Produktname:d.Model,"Ausf\u00fchrung":d.Version,Ordnungsnummer:d.SerialNumber,"Asset-Tag":d.Tag,"Austauschbar?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({"Verk\u00e4ufer":a.CIM_BIOSElement.response.Manufacturer,"Ausf\u00fchrung":q,"Ver\u00f6ffentlichungsdatum":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",
1165
+{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>Prozessor "+(parseInt(e)+1)+"</h2>",b+=FullTable({Hersteller:trademarks(d.Manufacturer),Familie:DMTFProcFamilly[c.Family],"Ausf\u00fchrung":trademarks(d.Version),"Maximale Sockelgeschwindigkeit":c.MaxClockSpeed+" MHz",Status:DMTFCPUStatus[c.CPUStatus]},"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=a.CIM_PhysicalMemory.responses[e],b+="<h2>Speichermodul "+(+e+
1166
+1)+"</h2>",b+=FullTable({"Bank Label":c.BankLabel,Hersteller:c.Manufacturer,Ordnungsnummer:c.SerialNumber,"Gr\u00f6\u00dfe":parseInt(c.Capacity/1048576)+" MB",Formfaktor:DMTFMemFormFactor[c.FormFactor],Art:DMTFMemType[c.MemoryType],"Asset-Tag":c.Tag,Artikelnummer:c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>Speichermedium "+(parseInt(e)+1)+"</h2>",b+=FullTable({Modell:d.Model,Ordnungsnummer:""==
1167
+d.SerialNumber?"Unknown":d.SerialNumber,"Gr\u00f6\u00dfe":parseInt(Math.round(1E3*c.MaxMediaSize/1048576))+" MB"},"");b+="<br>";QH(18,b);updateSystemStatus()}}function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","Intel AMT Hardware-Informationen",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}
1168
+function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"Intel® AMT-Stromversorgungsrichtlinie",3,showPowerPolicyDlgOk,c)}}
1169
+function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1170
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1171
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1172
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1173
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>Verwalten Sie die Intel® AMT-Benutzerkonten f\u00fcr diesen Computer.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=
1174
+a.AccessPermission){2==q&&(p+="Behindert,");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a.Bereiche[c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="Wirtschaftspr\u00fcfer,");p=0<=a.Realms.indexOf(3)?p+"Administrator":1==k?p+"1 Reich":p+(k+" Bereiche")}else p+="Administrator",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&
1175
+(b+=" "+AddButton2("Bearbeiten...","changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="Versteckte Konten umschalten" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");
1176
+xxAccountAdminName&&(c+=AddButton("Neues Konto","newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1177
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"Konto bearbeiten",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1178
+function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"Neues Konto",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1179
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("Kontofehler","Ung\u00fcltige Parameter");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,
1180
+k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1181
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">Administrator</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1182
+function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["Nur lokal","Nur Netzwerk","Alle (lokal & Netzwerk)"];
1183
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("Name",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("Zustand",1==xxAccountEnabledInfo[b].Enabled?"aktiviert":"Behindert"));if(e==xxAccountAdminName)a+=addHtmlValue("Genehmigung","Administrator");else{var a=a+addHtmlValue("Genehmigung",xxUserPermissions[c.AccessPermission]),q="";if(0<=c.Realms.indexOf(3))q="Administrator",
1184
+0<=c.Realms.indexOf(20)&&(q+=", Wirtschaftspr\u00fcfer");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+=","),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="Keiner");a+=addHtmlValue("Bereiche","")+"<b>"+q+"</b>"}messagebox("Konto"+e,a+"</div>")}}
1185
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("Browser",c,browserResponse,null,!0))}
1186
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>(Leeren)":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>Error #"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1187
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1188
+function onTerminalStateChange(b,c){c4.value=0==c?"Verbinden":"Trennen";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1189
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["UTF8-Terminal","Erweitertes ASCII","Intel ASCII"];
1190
+function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["Intel (F10 = ESC + [OM)","Alternative (F10 = ESC + 0)","VT100 + (F10 = ESC + [OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1191
+function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR + LF",terminal.m.lineFeed="\r\n")}
1192
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="Beenden Sie die Erfassung";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),
1193
+b+".txt")}delete terminal.m.capture;c3.value="Starten Sie die Erfassung"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"Einf\u00fcgen",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1194
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1195
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1196
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1197
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1198
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("Datenkanal",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1199
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1200
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1201
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1202
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1203
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1204
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1205
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1206
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"Verbinden":"Trennen";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("Remotedesktop","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("Remotedesktop","The device indicated that this type of connection of not supported."):5E4==b.disconnectCode?
1207
+messagebox("Remotedesktop","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1208
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b=", Soft-KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"Remotedesktopeinstellungen",3,showDesktopSettingsChanged))}
1209
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1210
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1211
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1212
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1213
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1214
+"8px"),center()))}
1215
+function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"Remote-Tastatureingabe",3,showDeskTypeEx,'<div>Geben Sie Text ein und klicken Sie auf OK, um ihn per Fernzugriff \u00fcber eine US-englische Tastatur einzugeben. Stellen Sie sicher, dass sich der Remote-Cursor an der richtigen Position befindet, bevor Sie fortfahren.<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1216
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1217
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1218
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1219
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1220
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1221
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1222
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1223
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1224
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1225
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1226
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1227
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>Wurzel</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+'">'+EscapeHtml(r.substring(0,
1228
+70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1229
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1230
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1231
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1232
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1233
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="W\u00e4hlen Sie Alle",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||
1234
+0==d));QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"Nichts ausgew\u00e4hlt":"W\u00e4hlen Sie Alle";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24PasteButton",(0<p24filetreelocation.length||
1235
+0==d)&&null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}
1236
+function p24createfolder(){setDialogMode(11,"Neuer Ordner",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}
1237
+function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"L\u00f6schen",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1238
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"Umbenennen",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1239
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1240
+function p24uploadFile(){setDialogMode(11,"Datei hochladen",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;
1241
+function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1242
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"Einf\u00fcgen",3,p24pasteFileEx,b)}
1243
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1244
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1245
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1246
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24filetable"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1247
+function getFileSizeStr(b){return 1==b?"1 Byte":format("{0} Bytes",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();
1248
+function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1249
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"Download-Datei",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+a+" />"))}
1250
+function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1251
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1252
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"Datei hochladen",10,p24uploadFileCancel,"<div id=p24dfileName>Einrichten ...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1253
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1254
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1255
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1256
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1257
+function iderStart(b){if(!xxdialogMode){b="<div>Mounten von Disk-Images auf einem Intel® AMT-Computer - Experimentell.</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+NoBreak("Diskette (.img)")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+NoBreak("CD-ROM (.iso)")+"</div></div>";setDialogMode(11,"Speicherumleitung",3,iderStart2,b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>Beim n\u00e4chsten Start<option value=1>Anmutig<option value=2>Sofortig</select><div>Sitzungsstart</div></div>");
1258
+b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=b.substring(1,b.length-1))}}
1259
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("Speicherumleitungsfehler","Es muss mindestens eine Disk-Image-Datei ausgew\u00e4hlt sein.");else if(1==Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("Speicherumleitungsfehler","Ung\u00fcltige IMG-Datei.");else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%2048)messagebox("Speicherumleitungsfehler","Ung\u00fcltige ISO-Datei.");
1260
+else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,Q("iderStartType").value)}}
1261
+function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1262
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1263
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"Server":"")+"IDE-R-Sitzung </ b>, verbunden,"+ider.m.bytesFromAmt+" im,"+ider.m.bytesToAmt+" aus.")}var heatMapWidth=600,heatMapDividor={};
1264
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CD-ROM </ b>, Bl\u00f6cke sind {0} Bytes.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b> Diskette </ b>, Bl\u00f6cke sind {0} Bytes.",512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=
1265
+6*(Math.floor(a/(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1266
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"Speicherumleitung",a?a:3,onIderDialogPromptOk,c.html)}
1267
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1268
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"Behindert",32769:"BIOS aktiviert",32770:"Betriebssystem aktivieren",32771:"BIOS & OS aktiviert"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1269
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1270
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1271
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1272
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1273
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="Behindert",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="Aktiviert,"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("Umgebungserkennung",addLink(c,"editEnvironmentDetection()"));b+=TableEntry("Benutzerinitiierungsoptionen",
1274
+addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>Keiner</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("Vom Benutzer initiierte Verbindung",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));c="<i>Keiner</i>";if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<
1275
+c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("Alarm initiierte Verbindung",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>Keiner</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName","Periodisch");
1276
+if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format("alle {0} Sekunden",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("Periodische Verbindung",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Verwalten von Intel® AMT-Remoteverwaltungsservern.<br><br>";if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>Keine Remote-Server gefunden.</i></div><br>";
1277
+else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>Verwalten von HTTP-Proxys, die f\u00fcr Verwaltungsverbindungen verwendet werden.<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,0==c.length)b+="<div style=padding-left:15px><br><i>Keine Proxys konfiguriert.</i></div><br>";
1278
+else for(d in c)b+="<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("Server hinzuf\u00fcgen...","AddRemoteAccessServer()"),a&&(d+=AddButton("Proxy hinzuf\u00fcgen ...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+d);QH(58,b)}}var xxEditMpsPolicyType;
1279
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="Benutzer initiiert");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(Keiner)",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?" selected":"")+">"+
1280
+xxCiraServers[e].AccessInfo;c+="</select><div>Prim\u00e4rserver</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Extern<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA - Intern</select><div>Prim\u00e4rer MPS-Typ</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";
1281
+c+="<option value=-1>(Keiner)";for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>Sekund\u00e4rserver</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Extern<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA - Intern</select><div>Sekund\u00e4rer MPS-Typ</div></div>")}e=
1282
+0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>Tunnellebensdauer (Sekunden)</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">Periodisch, Zeitintervall<option value=1"+
1283
+(1==a?" selected":"")+">Tageszeit einmal am Tag",c+="</select><div>Ausl\u00f6sertyp</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("{0} Verbindung",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1284
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1285
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"Ausl\u00f6seintervall (Sekunden)":"Tageszeit (HH: MM)"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1286
+function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1287
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1288
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1289
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1290
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="Geben Sie bis zu 5 Intranet-Domain-Suffixe ein. Befindet sich der Computer au\u00dferhalb dieser Dom\u00e4nen, werden die lokalen Intel® AMT-Ports geschlossen und Remote-Serververbindungen sind aktiv.<br><br>");0==editEnvironmentDetectionTmp.length&&(c+="<i>Keine Intranet-Dom\u00e4nen, Umgebungserkennung deaktiviert.</i><br>");
1291
+for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Entfernen","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");
1292
+1==b?QH(69,c):setDialogMode(11,"Umgebungserkennung",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1293
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("Umgebungserkennung",format("Server konnte nicht hinzugef\u00fcgt werden, Status {0}",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("Umgebungserkennung",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}
1294
+function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}
1295
+function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"Vom Benutzer initiierter Tunnel",3,editUserInitiatedCiraDlg,b)}}
1296
+function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1297
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("Zugriffsname",c.AccessInfo);c.Port&&(a+=addHtmlValue("Hafen",c.Port));c.CN&&(a+=addHtmlValue("Gemeinsamen Namen",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,0<c.indexOf("Username")?(a+=addHtmlValue("Authentifizierungsart","User & Pass / Server-Auth TLS"),a+=addHtmlValue("Remote-ID",getInstance(xxMPSUserPass,
1298
+c).RemoteID)):(a+=addHtmlValue("Authentifizierungsart","Zertifikat / Gegenseitige Authentifizierung TLS"),c=getInstance(xxCertificates,c),a+=addHtmlValue("Zertifikatname",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Remote Server #"+(b+1),c,showServerDetailsOk,a)}
1299
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1300
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}function showServerDetailsOk2(b,c,a,d){408==d?messagebox("Remote-Server entfernen","Server kann nicht entfernt werden, Zugriff verweigert."):PullRemoteAccess()}function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1301
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("Zugriffsname",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("DNS Suffex",c.NetworkDnsSuffix),a=a+addHtmlValue("Proxy-Typ",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"HTTP-Proxy #"+(b+1),c,showProxyDetailsOk,a,b)}
1302
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("Entfernen des HTTP-Proxys","HTTP-Proxy kann nicht entfernt werden, Zugriff verweigert."):PullRemoteAccess()}
1303
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>Hostname FQDN<option value=3>IPv4-Adresse<option value=4>IPv6-Adresse</select><div>Verbindungstyp</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>Hafen</div></div>';b+=
1304
+"<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>DNS-Suffix</div></div>";setDialogMode(11,"HTTP-Proxy hinzuf\u00fcgen",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1305
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN / Hostname","IPv4-Adresse","IPv6-Adresse"][Q("d2type").value])}function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}
1306
+function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("Proxyserver hinzuf\u00fcgen","Proxy, Status konnte nicht hinzugef\u00fcgt werden"+d):0!=a.Body.ReturnValue?messagebox("Proxyserver hinzuf\u00fcgen",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1307
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>Hostname FQDN<option value=3>IPv4-Adresse</select><div>Verbindungstyp</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";a+='<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>Server Port</div></div>';
1308
+a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Allgemeiner Name des Servers</div></div>";a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";0<b.length&&(a+="<option value=1>Zertifikat");a+="<option value=2>Benutzername Passwort</select><div>Authentifizierungsart</div></div>";a+="<span id=d2utype>";a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Nutzername</div></div>";
1309
+a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Sicheres Passwort</div></div>";a+="</span>";a+="<span id=d2ctype>";a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>Zertifikat</div></div></span>";setDialogMode(11,"Remote-Server hinzuf\u00fcgen",3,AddRemoteAccessServerOk,
1310
+a);AddRemoteAccessServerUpdate()}
1311
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+Q("d2cert").value+
1312
+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1313
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("Internet Server hinzuf\u00fcgen",format("Server konnte nicht hinzugef\u00fcgt werden, Status {0}",d)):0!=a.Body.ReturnValue?messagebox("Internet Server hinzuf\u00fcgen",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1314
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"Hostname":"IPv4-Adresse");QV("d2utype",2==Q("d2auth").value);QV("d2ucn",
1315
+3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1316
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>Name & Domain</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+(b?"selected":"")+'>Geteilt, genau wie das Betriebssystem<option value="false" '+
1317
+(b?"":"selected")+">Engagiert, anders als das Betriebssystem</select><div>Namensfreigabe</div></div>");setDialogMode(11,"Computername",3,editNameDlgOk,c)}}
1318
+function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}
1319
+function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"Dynamischer DNS-Client",3,showEditDnsDlgOk)}}
1320
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1321
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"Intel® AMT-Funktionen",3,featuresDlgOk))}
1322
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("Error","RedirectionService, RequestStateChange-Fehler"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,0,function(a,c,d,e){200!=e?messagebox("Error","KVMRedirectionSAP, RequestStateChange-Fehler"+
1323
+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("Error","RedirectionService PUT-Fehler"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}
1324
+function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"Zustimmung des Benutzers",3,consentDlgOk)}}
1325
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="Lokale Adresse verkn\u00fcpfen;Lokale Netzwerkadresse;Globale Adresse;Benutzer konfiguriert;Nicht erlaubt;DAD in Bearbeitung;g\u00fcltig;veraltet;bevorzugt / veraltet;abgelaufen;Kollision;nicht erlaubt".split(";");
1326
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+","+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"IPv6-Adressen f\u00fcr die kabelgebundene Schnittstelle":"IPv6-Adressen f\u00fcr die drahtlose Schnittstelle",1,null,a+TableEnd())}}
1327
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 deaktiviert");QH("d21l1","IPv6 aktiviert, automatisch");QH("d21l2","IPv6-f\u00e4hig, automatisch + manuelle Adresse");d21o0.checked=!c;d21o1.checked=c&&!ipv6manual;
1328
+d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"IPv6-Unterst\u00fctzung f\u00fcr kabelgebundene Schnittstelle":"IPv6-Unterst\u00fctzung f\u00fcr drahtlose Schnittstellen",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1329
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1330
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1331
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1332
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1333
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv6-Unterst\u00fctzung",format("IPv6-Status kann nicht festgelegt werden, Fehler {0}",d))}
1334
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"Intel® AMT Ping-Antwort",3,showPingActionDlgOk)}}
1335
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1336
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","Automatische Konfiguration \u00fcber den DHCP-Server");QH("d21l2","Statische Konfiguration mit den folgenden IPv4-Einstellungen");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=!d21o1.checked;c30.value=
1337
+isIpAddress(b.IPAddress,"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"IPv4-Einstellungen",3,showIPSetupDlgOk)}}
1338
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6-f\u00e4hig, automatisch + manuelle Adresse"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1339
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1340
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv4-Einstellungen",format("Netzwerkparameter k\u00f6nnen nicht eingestellt werden, Fehler {0}",d))}amtPowerBootCapabilities=null;
1341
+function showPowerActionDlg(){xxdialogMode||(statusbox("Power-Aktionen","Funktionen \u00fcberpr\u00fcfen ..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1342
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","Einschalten",2);b&1&&(addOption("d5actionSelect","Zur\u00fccksetzen",10),addOption("d5actionSelect","Aus- und Wiedereinschalten",5),addOption("d5actionSelect","Stromausfall",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect","Schalten Sie die Diagnose ein",
1343
+300),b&1&&addOption("d5actionSelect","Auf Diagnose zur\u00fccksetzen",301));9<amtversion&&b&1&&(addOption("d5actionSelect","OS Wake aus dem Standby",500),addOption("d5actionSelect","Energiesparen des Betriebssystems",501),addOption("d5actionSelect","Soft-Off",12),addOption("d5actionSelect","Soft-Reset",14),addOption("d5actionSelect","Schlaf",4),addOption("d5actionSelect","\u00dcberwintern",7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&addOption("d5actionSelect","Schalten Sie das BIOS ein",100),
1344
+b&1&&addOption("d5actionSelect","Auf BIOS zur\u00fccksetzen",101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","Schalten Sie das Ger\u00e4t zum sicheren L\u00f6schen ein",104),b&1&&addOption("d5actionSelect","Zum sicheren L\u00f6schen zur\u00fccksetzen",105));b&1&&addOption("d5actionSelect","Auf IDE-R-Diskette zur\u00fccksetzen",200);b&2&&addOption("d5actionSelect","Schalten Sie die IDE-R-Diskette ein",201);b&1&&addOption("d5actionSelect","Auf IDE-R-CD-ROM zur\u00fccksetzen",
1345
+202);b&2&&addOption("d5actionSelect","Schalten Sie die IDE-R-CD-ROM ein",203);b&1&&addOption("d5actionSelect","Auf PXE zur\u00fccksetzen",400);b&2&&addOption("d5actionSelect","Schalten Sie PXE ein",401);addOption("d5actionSelect","Benutzerdefinierte Aktion ...",999);5<amtversion&&addOption("d5actionSelect","Zustimmung des Benutzers ...",998);setDialogMode(5,"Power-Aktionen",3,powerActionDlgCheck)}else messagebox("Power Action",format("Systemfunktionen k\u00f6nnen nicht abgerufen werden, Fehler {0}",
1346
+d))}
1347
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Power-Aktion abgeschlossen."):QH(66,format("Power Action Fehler # {0}.",e));setDialogMode(1,"Power Action",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="Ausf\u00fchrung von Intel® Remote Secure Erase best\u00e4tigen?<br>Geben Sie bei Bedarf das Kennwort zum sicheren L\u00f6schen ein.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>Passwort</div></div><br><div style=color:red><b> WARNUNG: </ b> Dadurch werden Daten auf dem Remote-System gel\u00f6scht.</div>",rsepass=
1348
+1,setDialogMode(11,"Power-Aktionen",3,powerActionDlg,b)):powerActionDlg()}
1349
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("Power Action","Status pr\u00fcfen ...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&(c=!1);c?amtstack.Get("IPS_OptInService",
1350
+powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1351
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1352
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1353
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"Benutzerdefinierte Power-Aktion",
1354
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1355
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Power-Aktion abgeschlossen."):QH(66,format("Power Action Fehler # {0}.",e));setDialogMode(1,"Power Action",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=Q("d24BiosSecureBoot").checked,
1356
+AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=Q("d24LockSleepButton").checked,
1357
+AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),statusbox("Power Action","Status pr\u00fcfen ..."),amtstack.Get("IPS_OptInService",
1358
+powerActionResponse0,0,1))}
1359
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("Power Action",format("Fehler # {0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"Zustimmung des Benutzers",11,powerActionSendConsent),checkConsentDisplay(),consentChanged()):(statusbox("Power Action","Opt-In starten ..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,0,1)):connectDesktopConsent?
1360
+(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Zustimmung des Benutzers","Benutzereinwilligung nicht erforderlich."):(statusbox("Power Action","Starteinstellungen abrufen ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1361
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Power Action",format("Error #",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Benutzerzustimmungsfehler",a.Body.ReturnValueStr.replace(/_/g," ")):(d6ConsentText.value="",setDialogMode(6,"Zustimmung des Benutzers",11,powerActionSendConsent),checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",function(a,
1362
+b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1363
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("Power Action","Benutzereinwilligung senden ..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1364
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("Power Action",format("Fehler # {0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Zustimmung des Benutzers","Benutzereinwilligung erfolgreich."):(statusbox("Power Action","Status pr\u00fcfen ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1365
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("Power Action",format("Fehler # {0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=AvdPowerDlg.IDERBootDevice,e.LockKeyboard=
1366
+AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&(e.RSEPassword=
1367
+AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,!0===e.SecureErase&&
1368
+0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("Startaktion: "+b);console.log("Festlegen der Starteinstellungen: "+ObjectToString2(e));statusbox("Power Action","Starteinstellungen einstellen ...");
1369
+amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,function(a,b,c,d){200!=d?messagebox("Power Action",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1370
+function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("Power Action",format("PUT AMT_BootSettingData, Fehler # {0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("Power Action","N\u00e4chsten Start einstellen ..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1371
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1372
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1373
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("Power Action","Power Action ausf\u00fchren ...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);targetPowerAction=b;
1374
+11==b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("Power Action","N\u00e4chster Startaktionssatz.")}}function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"Power-Aktion abgeschlossen."),setDialogMode(1,"Power Action",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}
1375
+function consentChanged(){QE("c49",6==d6ConsentText.value.length)}function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1376
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1377
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1378
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1379
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Verwalten Sie den Intel® AMT-Speicher f\u00fcr diesen Computer.<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+
1380
+" / "+r):e+"Wurzel";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("Herunterladen","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" Bytes</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==
1381
+n&&(wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>Keine Dateien gefunden.</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+
1382
+(q?AddButton("Hochladen...","UploadToStorage()"):""));QH(61,a)}else QH(61,"Speicherdaten k\u00f6nnen nicht geladen werden ...<br/>"+AddButton("Aktualisierung","PullStorage()"))}
1383
+function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("Verk\u00e4ufer",b));""!=c&&(e+=addHtmlValue("Anwendung",c));e+=addHtmlValue("Name",a);e+=addHtmlValue("Gr\u00f6\u00dfe",q.size+" bytes");q.link&&(e+=addHtmlValue("Verkn\u00fcpfung",q.link));setDialogMode(11,"Aufbewahrungsgegenstand",5,showStorageDetailsEx,e,d)}}
1384
+function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}function storageDeleteResponse(b,c){200!=c?messagebox("Lager",format("Datei kann nicht gel\u00f6scht werden (ERR {0}). \u00dcberpr\u00fcfen Sie, ob der Computer eingeschaltet ist.",c)):PullStorage()}function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}
1385
+function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}
1386
+function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}function PushToStorageResponse(b,c,a){200!=c?messagebox("Lager",format("Datei kann nicht \u00fcbertragen werden (ERR {0}). \u00dcberpr\u00fcfen Sie, ob der Computer eingeschaltet ist.",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1387
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>W\u00e4hlen Sie eine kleine Datei aus, die in den Speicher hochgeladen werden soll, und geben Sie einen Anbieter, eine Anwendung und einen Dateinamen ein.<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>Datei hochladen</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+
1388
+'<br><div style=height:16px><input id=mstoragevendor placeholder="Verk\u00e4ufer" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>Herstellername</div></div>';a+='<br><div style=height:16px><input id=mstorageapplication placeholder="App" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>Anwendungsname</div></div>';a+='<br><div style=height:16px><input id=mstoragefilename placeholder="Dateiname" maxlength=11 style=float:right;width:240px><div>Dateiname</div></div>';
1389
+a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>Mime Typ</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="Wenn festgelegt, wird auf der Hauptwebseite ein Link zu diesem Inhalt erstellt">Verkn\u00fcpfung</div></div><br>';a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';a+="</datalist>";
1390
+a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"Speicher-Upload",3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}
1391
+function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1392
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1393
+b}
1394
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1395
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1396
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," Tage").replace("H"," Std").replace("M"," Protokoll");b=b.replace(" 1 Tag"," 1 Tag").replace(" 1 Stunde"," 1 Stunde").replace(" 1 Minute"," 1 Minute");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1397
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Weckalarme verwalten.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, wach auf "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," beim"),void 0!=d[c].Interval&&(a+=" und jede"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&(a+=", l\u00f6schen, wenn Sie fertig sind"),
1398
+b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("Bearbeiten...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>Es wurden keine Weckalarme registriert.</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("Entfernen Sie alle Alarme","RemoveAllAlarms()")+
1399
+AddButton("Hinzuf\u00fcgen","showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1400
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1401
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"Entfernen Sie alle Weckalarme",3,RemoveAllAlarmsEx,"Entfernen aller Weckalarme best\u00e4tigen?")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1402
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1403
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1404
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"Neuen Alarm hinzuf\u00fcgen",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1405
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1406
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("Alarm hinzuf\u00fcgen",format("Fehler beim Hinzuf\u00fcgen eines Alarms. Status: {0}. <br/> \u00dcberpr\u00fcfen Sie, ob der Alarm f\u00fcr eine zuk\u00fcnftige Zeit gilt.",d)):0!=c.Body.ReturnValue?messagebox("Alarm hinzuf\u00fcgen",format("Alarm {0} konnte nicht hinzugef\u00fcgt werden. <br/> \u00dcberpr\u00fcfen Sie, ob der Alarm f\u00fcr eine zuk\u00fcnftige Zeit gilt.",
1407
+c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("Alarm bearbeiten",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1408
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("Name",c.ElementName)+addHtmlValue("Weckzeit",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("Intern",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("Nach dem Aufwachen",1==c.DeleteOnCompletion?"Alarm l\u00f6schen":"Alarm halten")+"</div>";messagebox(format("Alarm {0}",c.ElementName),a);setDialogMode(11,"Alarm"+c.ElementName,
1409
+5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"Skript ausf\u00fchren",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1410
+function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1411
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1412
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("Skript ausf\u00fchren",
1413
+"Ung\u00fcltige Skriptdatei.")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1414
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1415
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1416
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1417
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1418
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("Bearbeiten Sie {0}",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1419
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1420
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1421
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1422
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1423
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1424
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1425
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1426
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1427
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1428
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1429
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1430
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1431
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1432
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1433
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1434
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1435
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1436
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"Bin\u00e4rdatei,"+script_BlockScript[c].vars[d].value.length+" Bytes":"Nicht eingestellt");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+="<tr><td style=height:3px></table>"}b+=
1437
+"</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">Starten Sie Ihr Skript, indem Sie Bl\u00f6cke von der linken Seite in dieses Skriptfeld ziehen und dort ablegen.<div>');QH("scriptblocks",b+"<div style=height:80px></div>");for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1438
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1439
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}
1440
+function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"Neues Skript",3,script_newScriptDlgOk,"<br>Skripteditor zur\u00fccksetzen und l\u00f6schen?")}function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1441
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("Skriptkompilierungsfehler",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","Gestoppt");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,_mode:"Firmware"}),editscriptstate.wsstack=wsstack,editscriptstate.amtstack=
1442
+amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}
1443
+function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["Gestoppt","Laufen","Pause"];
1444
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="Gestoppt, kein Skript";b&&null!=b&&(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,b.ip)));50<c.length&&(c=c.substring(0,
1445
+50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1446
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"Skriptblock",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1447
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1448
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1449
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1450
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1451
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1452
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1453
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}var httpErrorTable={200:"OK",401:"Authentifizierungsfehler",408:"Timeout-Fehler",601:"WSMAN-Analysefehler",602:"HTTP-Antwortheader kann nicht analysiert werden",603:"Unerwartete HTTP-Enum-Antwort",604:"Unerwartete HTTP-Pull-Antwort",997:"Ung\u00fcltiger Verdauungsbereich"};
1454
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("Fehler # {0}",b)),401==b&&QH(5,'Authentifizierungsfehler<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1455
+function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1456
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1457
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1458
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("Anruffehler",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}
1459
+function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}
1460
+function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="Aktualisierung" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}
1461
+function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}
1462
+function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}
1463
+function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1464
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1465
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1466
+</script>
\ No newline at end of file
public/commander-es.htm
new
+1468
@@ -0,0 +1,1468 @@
1
+<!DOCTYPE html><html lang="es" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAEZ0FNQQAAsY58+1GTAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAIuSURBVHjalJNBTBNBFIb/2S4tlliFdLBNW0mktibaeivBm9eejFeDZw81kROXHj2SyIEDB65wI3iBI5iYmEjSREtIpI1tQdOm20KBdkuX3ZnnYUVq2Cb6kklm3vxv3vdm3oCI4DTazZ3p3HpM5NZjot3cmR6kY0QEJ9vdnNJcaoMP3xyB3vI2EunP4046xcl5WttK99olHn4URSA2AaNT5qe1rbST1pFgd3NKU93H/P6TJADg8GthIMU1gqODtZlep8QjiegfXzBuUxwdrM1cy9Z/IVIYSn4jpe1vx8jsviAABIBM/Tl9/5Sg/EZKk8JQ+mP+ImiUVjJGp8xDDycB2b1KIgSC0RCMTpk3SisZxxKkpXvqhaXs7aAfnhtukBBXKmFCHVLgj4yjXljKSkv3XDugXlyeM/QKDz24CxIWSJhXBKYJMk2MT3AYeoXXi8tzl3sqAFgXLV+zvJrxhzkUqwdxQQARZl+FbbqeXY7CGHjEj2Z5NcMnXy6o7tEzRkT4mX/7Tisuvok/joBJC5ACl8/LmAIov0EVBZIYvn35gUD89UI4mZ1lRrca2N9+lh8bPeG3RgCyTEBKgAi+1CEAoJ27B6gqGGMAY2idCbRORhvxp++TanVvviaMQ/g8XshzAxACIIn+/pLGOWAqYIoLAODzuKB1K7y6N19j+Y0U3fG3MCw6IMsCyM4Oxvob1l4ze84YQ5u8OD7jUNWhMXz4uI//tx4Syfjg3/iv9msAKbs79bi84QcAAAAASUVORK5CYII=");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAEZ0FNQQAAsY58+1GTAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAANGSURBVHjadJNNTBwFAIW//UFWfrbsgDuzBTvu0s6OWhHwYMhCOEAbSESC4dpL07TFg9GkxIRDjT3YhEBNPUjC0SbaJjVNQyJQaxtDpzYmlDYUOjuUrhspO0N0gQVWl/0ZD5ZmPfiSd3t5l/c+h23bFCsajR7Rdf1GPBbHtEwAJFFCDsqoqno0HA7/WJx37BUkk8k6bUYb0g2jxy8G6kQpgK9KAGB9I4llJlizEiuqokxE2iJfCIKw8qIgmUzWTU1OfZXaSve9KQep3tzA9fQJhfhvZHd3yfl85OUg26F6os9W8FaWXevq7vpIEIQVJ4A2ow2lttJ9LTU1hH64Tt1qHHv8a0rnH/LS4iPsK9/iixnUXr1Ck3cfqa10nzajDQG4o9HoEd0wet493Ij/zm18n3yMJxQivbND7Px58thUD3xI+egoBcMgd+FLlO73mTUWe5Ro9Jqrs7Nz2eUu9YbSacriT8lms5Q3NlLR3s6uaVJQFISRC1SUuFm9dInJ6WlCfpGMFPBub6eOueOxOMobb+H4+Ta/f3cZz927FPJ5hOPHqRkZgT/+xFniIjY6yveDg0gOB9l6BbHpBMbiPE7TMvFVCWSXl3DU7secnWXu9GniFy+ymctRIfhYHxvj6pkzBG2bA0Du8SN8VQKmZeLc2zOXybA2P8+mbeNpbydTWUmJ203etvGIInV+PxVA9t/pXvzALYkS6xtJqoRq/rJtqoNB/KdO8Up/P+atWxSA8t5e3vN6mT55kgOrq5TUH2J9I4kkSjjloIxlJiiEDiK2tREYHkbq7yd57x6XOzr4paMD59IS+7q7+WB8nPtuNyVN72CZCeSgjFNV1dY1K6H9fbiBDWk/uwsL5G7e5JuWFhTgVUBrbmZX11memyMgv0a64W3WrISmqmqrw7ZtJq5PfP4sYZ0Nl5ayPjJM4fECKdtGAF5+bt3pxBt+HWXwU37NZKgNiOd6ens+27uyNDU5dTa1lR44JAXwPHiA/fA++ScGTsB1UMHV1MxOQyOGmcBbWTbW1d11ThAEsxgmSZvRBnTD6PCLgcj/wKSpivJTpC0yJgiC+R8ai3CO6Lp+NB6Lt5qWqTzH2ZCD8h1VVW+Ew2GtOP/PAFZGexs+cGPjAAAAAElFTkSuQmCC");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=Conectar onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>Desconectado</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>Estado del sistema</a><p id=go14 class=nav1 onclick=go(14)><a>Escritorio remoto</a><p id=go24 class=nav1 onclick=go(24)> <a>Archivos</a><p id=go13 class=nav1 onclick=go(13)><a>Serie sobre LAN</a><p id=go2 class=nav1 onclick=go(2)><a>Información de hardware</a><p id=go6 class=nav1 onclick=go(6)><a>Registro de eventos</a><p id=go15 class=nav1 onclick=go(15)><a>Registro de auditoría</a><p id=go21 class=nav1 onclick=go(21)><a>Almacenamiento</a><p id=go8 class=nav1 onclick=go(8)><a>Configuración de red</a><p id=go17 class=nav1 onclick=go(17)><a>Configuraciones de internet</a><p id=go16 class=nav1 onclick=go(16)><a>Configuracion seguridad</a><p id=go19 class=nav1 onclick=go(19)><a>Presencia de agente</a><p id=go18 class=nav1 onclick=go(18)><a>Defensa del sistema</a><p id=go11 class=nav1 onclick=go(11)><a>Cuentas de usuario</a><p id=go22 class=nav1 onclick=go(22)><a>Suscripciones</a><p id=go23 class=nav1 onclick=go(23)><a>Wake Alarms</a><p id=go20 class=nav1 onclick=go(20)><a>Editor de guiones</a><p id=go12 class=nav1 onclick=go(12)><a>Navegador WSMAN</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value="Mapa de disco" onclick=iderToggleDiskMap()><input type=button value="Detener sesión IDE-R" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>Disquete, los bloques son 512 bytes.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CDROM, los bloques son 2048 bytes.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="Stop Script" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>Running Script</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>El firmware de esta computadora debe actualizarse, <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>por favor verifique aquí</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>Cargando...</h1></div><div id=p1 style=display:none><h1>Estado del sistema</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>Información de hardware</h1><span id=18></span></div><div id=p6 style=display:none><h1>Registro de eventos</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>Configuración de red</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>Cuentas de usuario</h1><span id=23></span></div><div id=p12 style=display:none><h1>Navegador WSMAN</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=Consulta style=margin:4px onclick=wsmanQuery()><input type=button value=Claro style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=Filtrar style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Terminal de serie sobre LAN</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>El puerto Intel® AMT Redirection o la función Serial-over-LAN está deshabilitada<span id=28>, haga clic aquí para habilitarlo.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>La computadora remota no está encendida, haga clic aquí para emitir un comando de encendido.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Acciones de poder ..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="Iniciar la operación remota de montaje en disco" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Iniciar captura" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=Conectar onclick=connectTerminal(event) disabled="disabled"> <span id=31>Desconectado.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR + LF" title="Alternar lo que enviará la tecla de retorno" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="Cambiar tamaño de terminal" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Intel (F10 = ESC + [OM)" title="Cambiar el tipo de emulación de teclas F1 a F10" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Ascii extendido" title="Cambiar el tipo de emulación de terminal" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Retroceso onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=Pegar disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>Escritorio remoto</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>El puerto Intel® AMT Redirection o la función KVM están deshabilitados<span id=43>, haga clic aquí para habilitarlo.</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>La computadora remota no está encendida, haga clic aquí para emitir un comando de encendido.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="Girar a la izquierda" onclick=drotate(-1)>↺</div><div class=rb title="Gira a la derecha" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="Alternar el modo de pantalla completa" onkeypress="return false" onkeydown="return false" value=Completo onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="Guardar una captura de pantalla del escritorio remoto" onkeypress="return false" onkeydown="return false" value=Salvar... onclick=deskSaveImage() style=margin-right:3px><input type=button value="Configuraciones ..." title="Editar configuraciones de escritorio remoto" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="Iniciar la operación remota de montaje en disco" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="Cambiar el estado de energía de la máquina remota" onkeypress="return false" onkeydown="return false" value="Acciones de poder ..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=Conectar onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>Desconectado.</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>Ganar<option value=1>Win + Down<option value=2>Win + Up<option value=3>Win + L<option value=4>Win + M<option value=20>Win + R<option value=23>Win + Izquierda<option value=24>Win + Right<option value=5>Shift + Win + M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=Enviar onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=Tipo onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>Pantalla en blanco </span><span id=53><input id=54 type=checkbox>Sólo vista </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>Registro de auditoría</h1><span id=56></span></div><div id=p16 style=display:none><h1>Configuracion seguridad</h1><span id=57></span></div><div id=p17 style=display:none><h1>Configuraciones de internet</h1><span id=58></span></div><div id=p18 style=display:none><h1>Defensa del sistema</h1><span id=59></span></div><div id=p19 style=display:none><h1>Presencia de agente</h1><span id=60></span></div><div id=p20 style=display:none><h1>Editor de guiones</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>Detenido</div><div><input type=button value="Ver editor" title="Cambiar a la vista del editor de línea de script" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="View Builder" title="Cambiar a bloquear la vista del editor" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=Nuevo... title="Borrar el editor de guiones" onclick=script_newScriptDlg()><input type=button value=Carga... title="Cargar un script desde el archivo" onclick=script_runScriptDlg()><input type=button value=Salvar... title="Guardar un script en un archivo" onclick=script_saveScript(event)><input type=button value=Reiniciar title="Compila el script y prepárate para ejecutarlo desde el principio" onclick=resetScriptButton()><input type=button value=Seguir title="Ejecute el script desde el punto de ejecución actual" onclick=runScriptButton()><input type=button value=Rotura title="Pausa la ejecución del script." onclick=breakScriptButton()><input type=button value=Paso title="Ejecute un paso del guión" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>Script Builder</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="Filtrar bloques ..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>Guión</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>Script compilado</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>Variables</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>Consola</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>Almacenamiento</h1><span id=61></span></div><div id=p22 style=display:none><h1>Suscripciones a eventos</h1><span id=62></span></div><div id=p23 style=display:none><h1>Wake Alarms</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>Archivos</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=Arriba> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="Seleccionar todo" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=Rebautizar onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=Eliminar onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="Nueva carpeta" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=Subir onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=Cortar onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=Copiar onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=Pegar onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=Actualizar onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">Ordenar por nombre<option value=2>Ordenado por tamaño<option value=3>Ordenar por fecha<option value=4>Desciende por nombre<option value=5>Descender por tamaño<option value=6>Descender por fecha</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>Nombre de usuario</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Contraseña*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Confirmar contraseña</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>Local<option value=1>Red<option value=2>Ninguna</select><div>Permiso</div></div><div>Permisos concedidos</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>* Mínimo 8 caracteres con mayúsculas, minúsculas, 0-9 y uno de! @ # $% ^ & * () + -</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>Acción de poder</div></div><div><span style=color:red>Advertencia:</span>Algunas acciones de energía pueden provocar la pérdida de datos y pueden desconectar las sesiones de redirección de escritorio, terminal o disco.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>Código de consentimiento</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>Pantalla principal<option value=1>Pantalla secundaria<option id=d6ThirdDisplay value=2 style=display:none>Tercera pantalla</select><div>Visualización de consentimiento</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, color<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>Codificación de imagen</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>Mostrar cursor del mouse local</label><br><label><input type=checkbox id=d7showcad>Mostrar Ctrl-Alt-Supr</label><br><label><input type=checkbox id=d7limitFrameRate>Límite de velocidad de fotogramas</label><br><label><input type=checkbox id=d7noMouseRotate>No gire el mouse</label><br></div><div>Otros ajustes</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">Software KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>Calidad</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87,5%<option value=768>75%<option value=640>62,5%<option value=512>50%<option value=384>37,5%<option value=256>25%<option value=128>12,5%</select><div style=height:20px>Escalada</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=administración style=float:right;width:220px><div style=height:20px>Nombre de usuario</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>Contraseña</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>Puerto de redireccionamiento</label><label id=c15 style=display:block><input type=checkbox id=c16>Escritorio remoto KVM</label><label style=display:block><input type=checkbox id=c17>Redirección IDE<br></label><label style=display:block><input type=checkbox id=c18>Serie sobre LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>No requerido<br></label><label><input type=radio name=d10 id=c20 value=1>Requerido solo para KVM<br></label><label><input type=radio name=d10 id=c21 value=4294967295>Siempre requerido<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Máximo 32 caracteres"><div title="Máximo 32 caracteres">Nombre de perfil</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Máximo 32 caracteres"><div title="Máximo 32 caracteres">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>Prioridad</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>PSK WPA</select><div>Autenticación</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>Ninguna</select><div>Cifrado</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Longitud entre 8 y 63 caracteres."><div title="Longitud entre 8 y 63 caracteres.">Contraseña*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Longitud entre 8 y 63 caracteres."><div title="Longitud entre 8 y 63 caracteres.">Confirmar contraseña</div></div></div><div id=dialog19 style=margin:auto;margin:3px>Esto guardará todo el estado de Intel® AMT para esta máquina en un archivo. Las contraseñas no se guardarán, pero se pueden incluir algunos datos confidenciales.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>Discapacitado<br><input type=radio name=d20 id=d20b value=1>Respuesta ICMP<br><input type=radio name=d20 id=d20c value=2>Respuesta RMCP<br><input type=radio name=d20 id=d20d value=3>Respuesta ICMP y RMCP<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>Sincronización de dirección IP del sistema operativo</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>dirección IP</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Marca de subred</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Puerta</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>DNS primario</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>DNS alternativo</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>Discapacitado<option value=1>Desactivado, actualización de DHCP<option value=2>Habilitado</select><div>Cliente DNS dinámico</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>Intervalo de actualización (minutos)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (segundos)</div></div><div style=font-size:10px><br>El intervalo predeterminado es de 1440 minutos, el TTL predeterminado es de 900 segundos.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>Encender<option value=10>Reiniciar<option value=5>Ciclo de poder<option value=8>Corriente cortada<option id=d24p500 value=500>OS Wake desde Standby<option id=d24p501 value=501>Ahorro de energía del sistema operativo<option value=999>Establecer opciones de arranque</select><div>Comando remoto</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>Pausa del BIOS</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>Hacer cumplir el arranque seguro</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>Configuración del BIOS</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>Forzar eventos de progreso</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>Botón de encendido de bloqueo</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>Botón de reinicio de bloqueo</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>Botón de bloqueo</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>Bloqueo de teclado</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>BIOS bypass de contraseña</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>Reflash BIOS</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>Modo seguro</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>Use IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Serie sobre LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>Borrado seguro remoto Intel®</label><br></div></div><div>Configuración de arranque</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Ninguna<option id=ForceDVDBootOption value=1>Forzar arranque de CD / DVD<option id=ForcePXEBootOption value=2>Arranque Force PXE<option id=ForceHDBootOption value=3>Forzar arranque de disco duro<option id=ForceDiagBootOption value=4>Arranque de diagnóstico de fuerza</select><div>Fuente de arranque</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Ninguna<option value=1>Índice 1<option value=2>Índice 2<option value=3>Índice 3<option value=3>Índice 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Arrancar en disquete<option value=1>Arrancar en CDROM</select><div>Dispositivo de arranque IDER</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Sistema por defecto<option id=c45 value=1>Tranquilo<option id=c46 value=2>Verboso<option id=c47 value=3>Pantalla en blanco</select><div>Verbocidad</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>Contraseña RSE</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>Nombre de alarma</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Fecha de activación (año-mes-día)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>Tiempo de activación (hora: min: seg)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Intervalo (días-horas-min)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>Mantener alarma<option value=1>Eliminar al finalizar</select></div><div style=padding-top:4px>Despues de despertar</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=Cancelar style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=Okay style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=Eliminar style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"Datos inv\u00e1lidos":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",
92
+v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"Agente de vigilancia"+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... cambiado a"+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"Intrusi\u00f3n de casos";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"Se estableci\u00f3 una sesi\u00f3n remota Serial Over LAN.";if(1==c[2])return"Sesi\u00f3n remota serie en LAN finalizada. Se restableci\u00f3 el control del usuario.";
93
+if(2==c[2])return"Se estableci\u00f3 una sesi\u00f3n remota de redirecci\u00f3n de IDE.";if(3==c[2])return"Sesi\u00f3n remota de redirecci\u00f3n de IDE finalizada. Se restableci\u00f3 el control del usuario."}if(36==a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="cableado"),4294967293==a?"Todos los filtros de paquetes recibidos coinciden"+b+" interfaz.":4294967292==a?"Todos los filtros de paquetes salientes coincidieron con"+b+" interfaz.":4294967290==a?"El filtro de paquetes falsificado se hizo coincidir"+
94
+b+" interfaz.":"Filtrar"+a+" fue emparejado en"+b+" interfaz.";if(192==a)return 0==c[2]?"Pol\u00edtica de seguridad invocada. Se detuvo parte o todo el tr\u00e1fico de red (TX).":2==c[2]?"Pol\u00edtica de seguridad invocada. Se detuvo parte o todo el tr\u00e1fico de red (RX).":"Pol\u00edtica de seguridad invocada.";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"Solicitud del usuario para conexi\u00f3n remota.";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"Error de EAC: intente obtener una postura mientras NAC en Intel\u00ae AMT est\u00e1 desactivado.";
95
+if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"Error de HWA: error general"}return 6==a?"Autenticaci\u00f3n fallida"+(c[1]+(c[2]<<8))+" veces. El sistema puede estar bajo ataque.":30==a?"No hay medios de arranque":32==a?"Bloqueo del sistema operativo o interrupci\u00f3n de energ\u00eda":35==a?"Falla de arranque del sistema":37==a?"Se inici\u00f3 el firmware del sistema (al menos una CPU se est\u00e1 ejecutando correctamente).":"Tipo de sensor desconocido #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,
96
+[],d);else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),
97
+g=6+g);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>Local</i>",g=5);3==b.InitiatorType&&(b.Initiator="<i>Puerto predeterminado de KVM</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*
98
+b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/","http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+
99
+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),
100
+b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,
101
+execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};
102
+l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
103
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
104
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
105
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
106
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
107
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
108
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
109
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
110
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
111
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
112
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
113
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
114
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
115
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
116
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
117
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
118
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
119
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
120
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
121
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
122
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
123
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
124
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
125
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
126
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
127
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
128
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
129
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
130
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
131
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
132
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
133
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
134
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
135
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
136
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
137
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
138
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
139
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
140
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
141
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
142
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
143
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
144
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
145
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
146
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
147
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
148
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
149
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
150
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
151
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
152
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
153
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="Sin especificar. No hay memoria del sistema instalada f\u00edsicamente en el sistema. No hay memoria utilizable del sistema, toda la memoria instalada ha experimentado una falla irrecuperable. Falla irrecuperable del disco duro / dispositivo ATAPI / IDE. Falla irrecuperable de la placa del sistema. falla del subsistema. ; Falla irrecuperable del controlador del disco duro. ; Falla irrecuperable del teclado PS / 2 o USB. ; No se encontr\u00f3 el medio de arranque extra\u00edble. ; Falla irrecuperable del controlador de video. ; No se detect\u00f3 ning\u00fan dispositivo de video. ; Se detect\u00f3 corrupci\u00f3n de ROM del firmware (BIOS). ; Falta de coincidencia de voltaje de la CPU (los procesadores que comparten el mismo suministro tienen requisitos de voltaje no coincidentes)".split(";"),
154
+h="Sin especificar. ; Inicializaci\u00f3n de memoria. ; Inicio de inicializaci\u00f3n y prueba de disco duro ; Inicializaci\u00f3n de procesador (es) secundario (s) ; Autenticaci\u00f3n de usuario ; Configuraci\u00f3n del sistema iniciada por el usuario ; Configuraci\u00f3n de recursos USB ; Configuraci\u00f3n de recursos PCI ; Inicializaci\u00f3n de ROM opcional ; Inicializaci\u00f3n de cach\u00e9 ; SM inicializaci\u00f3n Inicializaci\u00f3n del bus ; Inicializaci\u00f3n del controlador del teclado ; Inicializaci\u00f3n del controlador integrado / controlador de gesti\u00f3n ; Conexi\u00f3n de la estaci\u00f3n de acoplamiento ; Habilitaci\u00f3n de la estaci\u00f3n de acoplamiento ; Expulsi\u00f3n de la estaci\u00f3n de acoplamiento ; Inhabilitaci\u00f3n de la estaci\u00f3n de acoplamiento ; Llamada del vector de activaci\u00f3n del sistema operativo ; Inicio del proceso de arranque del sistema operativo ; Inicializaci\u00f3n de la placa base o placa base ; reservado ; Inicializaci\u00f3n de disquete ; Prueba de teclado ; Prueba de dispositivo se\u00f1alador ; Inicializaci\u00f3n del procesador primario".split(";"),
155
+g="Sin especificar ; Otro ; Desconocido ; Procesador ; Disco ; Perif\u00e9rico ; M\u00f3dulo de gesti\u00f3n del sistema ; Placa del sistema ; M\u00f3dulo de memoria ; M\u00f3dulo del procesador ; Fuente de alimentaci\u00f3n ; Agregar tarjeta ; Placa del panel frontal ; Placa del panel posterior ; Placa del sistema de alimentaci\u00f3n ; Placa posterior de la unidad ; Expansi\u00f3n interna del sistema placa ; Otra placa del sistema ; Placa del procesador ; Unidad de potencia ; M\u00f3dulo de potencia ; Placa de administraci\u00f3n de energ\u00eda ; Placa del panel posterior del chasis ; Chasis del sistema ; Chasis secundario ; Otra placa del chasis ; Compartimento de la unidad de disco ; Compartimento perif\u00e9rico ; Compartimento del dispositivo ; Refrigeraci\u00f3n del ventilador ; Unidad de refrigeraci\u00f3n ; Interconexi\u00f3n de cables ; Dispositivo de memoria ; Software de gesti\u00f3n del sistema ; BIOS ; Intel (r) ME ; Bus del sistema ; Grupo ; Intel (r) ME ; Entorno externo ; Bater\u00eda ; Blade de procesamiento ; Interruptor de conectividad ; M\u00f3dulo de procesador / memoria ; M\u00f3dulo de E / S ; M\u00f3dulo de E / S del procesador ; Firmware del controlador de gesti\u00f3n ; Canal IPMI ; Bus PCI ; Bus PCI express ; Bus SCSI ; Bus SATA / SAS ; Bus frontal del procesador".split(";");
156
+l.RealmNames=";; Redirecci\u00f3n ;; Activo de hardware ; Control remoto ; Almacenamiento ; Administrador de eventos ; Administrador de almacenamiento ; Presencia de agente local ; Presencia de agente remoto ; Disyuntor ; Tiempo de red ; Informaci\u00f3n general ; Actualizaci\u00f3n de firmware ; EIT ; LocalUN ; Control de acceso de punto final ; Control de acceso de punto final Admin ; Lector de registro de eventos ; Registro de auditor\u00eda ; Reino ACL ;;; Sistema local".split(";");l.WatchdogCurrentStates=
157
+{1:"No empezado",2:"Detenido",4:"Corriendo",8:"Caducado",16:"Suspendido"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),
158
+D={1:"",2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"Administrador de seguridad",17:"RCO",18:"Gerente de redireccionamiento",19:"Administrador de actualizaci\u00f3n de firmware",20:"Registro de auditor\u00eda de seguridad",21:"Tiempo de red",22:"Administraci\u00f3n de red",23:"Administraci\u00f3n de almacenamiento",24:"Administrador de evento",25:"Gerente de disyuntores",26:"Gerente de presencia de agente",27:"Configuraci\u00f3n inal\u00e1mbrica",28:"EAC",29:"KVM",30:"Eventos de aceptaci\u00f3n del usuario",
159
+32:"Pantalla en blanco",33:"Eventos de vigilancia",1600:"Aprovisionamiento iniciado",1601:"Aprovisionamiento completado",1602:"Entrada de ACL agregada",1603:"Entrada de ACL modificada",1604:"Entrada de ACL eliminada",1605:"Acceso a ACL con credenciales no v\u00e1lidas",1606:"Estado de entrada de ACL",1607:"Estado de TLS cambiado",1608:"Conjunto de certificados de servidor TLS",1609:"Certificado de servidor TLS Eliminar",1610:"Certificado TLS Trusted Root agregado",1611:"Certificado ra\u00edz de confianza TLS eliminado",
160
+1612:"Juego de llaves TLS previamente compartidas",1613:"Configuraci\u00f3n de Kerberos modificada",1614:"Clave principal de Kerberos modificada",1615:"Restablecimiento de contadores de desgaste de flash",1616:"Paquete de energ\u00eda modificado",1617:"Establecer modo de autenticaci\u00f3n de reino",1618:"Actualizar cliente al modo de control de administrador",1619:"Desaprovisionamiento iniciado",1700:"Encendido realizado",1701:"Apagado realizado",1702:"Ciclo de energ\u00eda realizado",1703:"Reinicio realizado",
161
+1704:"Establecer opciones de arranque",1800:"Sesi\u00f3n IDER abierta",1801:"Sesi\u00f3n IDER cerrada",1802:"IDER habilitado",1803:"IDER deshabilitado",1804:"Sesi\u00f3n de SoL abierta",1805:"Sesi\u00f3n de SoL cerrada",1806:"SoL habilitado",1807:"SoL deshabilitado",1808:"Sesi\u00f3n KVM iniciada",1809:"Sesi\u00f3n KVM finalizada",1810:"KVM habilitado",1811:"KVM deshabilitado",1812:"La contrase\u00f1a de VNC fall\u00f3 3 veces",1900:"Firmware actualizado",1901:"Error de actualizaci\u00f3n de firmware",
162
+2E3:"Registro de auditor\u00eda de seguridad borrado",2001:"Pol\u00edtica de auditor\u00eda de seguridad modificada",2002:"Registro de auditor\u00eda de seguridad deshabilitado",2003:"Registro de auditor\u00eda de seguridad habilitado",2004:"Registro de auditor\u00eda de seguridad exportado",2005:"Registro de auditor\u00eda de seguridad recuperado",2100:"Intel® ME Time Set",2200:"Conjunto de par\u00e1metros TCPIP",2201:"Conjunto de nombres de host",2202:"Conjunto de nombres de dominio",2203:"Conjunto de par\u00e1metros de VLAN",
163
+2204:"Conjunto de pol\u00edticas de enlace",2205:"Conjunto de par\u00e1metros de IPv6",2300:"Conjunto de atributos de almacenamiento global",2301:"Almacenamiento EACL modificado",2302:"Almacenamiento FPACL modificado",2303:"Operaci\u00f3n de escritura de almacenamiento",2400:"Alerta suscrita",2401:"Alerta sin suscripci\u00f3n",2402:"Registro de eventos borrado",2403:"Registro de eventos congelado",2500:"Filtro CB agregado",2501:"Filtro CB eliminado",2502:"Pol\u00edtica de CB agregada",2503:"Pol\u00edtica de CB eliminada",
164
+2504:"Conjunto de pol\u00edticas predeterminadas de CB",2505:"Conjunto de opciones de heur\u00edstica CB",2506:"Estado de heur\u00edstica de CB aprobado",2600:"Agente de vigilancia agregado",2601:"Agente de vigilancia eliminado",2602:"Conjunto de acciones del agente de vigilancia",2700:"Perfil inal\u00e1mbrico agregado",2701:"Perfil inal\u00e1mbrico eliminado",2702:"Perfil inal\u00e1mbrico actualizado",2800:"EAC Posture Signer SET",2801:"EAC habilitado",2802:"EAC deshabilitado",2803:"Estado de postura de EAC",
165
+2804:"Opciones de configuraci\u00f3n de EAC",2900:"Opci\u00f3n KVM habilitada",2901:"Opci\u00f3n KVM desactivada",2902:"Contrase\u00f1a KVM modificada",2903:"Consentimiento de KVM exitoso",2904:"Consentimiento de KVM fallido",3E3:"Cambio de pol\u00edtica de aceptaci\u00f3n",3001:"Enviar evento de c\u00f3digo de consentimiento",3002:"Iniciar evento bloqueado de aceptaci\u00f3n"};l.GetAuditLogExtendedDataStr=function(a,b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,2+b.charCodeAt(1));
166
+if(1603==a)return 0==b.charCodeAt(1)?b.substring(3):null;if(1605==a)return["Acceso inv\u00e1lido a m\u00ed","Acceso no v\u00e1lido a MEBx"][b.charCodeAt(0)];if(1606==a){var c=["Discapacitado","Habilitado"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+=","+b.substring(3));return c}return 1607==a?"Remoto"+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(0)]+", Local"+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+","+["NoAuth","Autenticaci\u00f3n","Discapacitado"][b.charCodeAt(4)]:
167
+1619==a?["BIOS","MEBx","MEI local","WSMAN local","WSAMN remota"][b.charCodeAt(0)]:1900==a?"Desde"+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" a"+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"Desde"+["Ninguna","KVM","Todas"][b.charCodeAt(0)]+" a"+["Ninguna","KVM","Todas"][b.charCodeAt(1)]:3001==a?["\u00c9xito","Fall\u00f3 3 veces"][b.charCodeAt(0)]:
168
+null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
169
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
170
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
171
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
172
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
173
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
174
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
175
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
176
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
177
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
178
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
179
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
180
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
181
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
182
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
183
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
184
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
185
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
186
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
187
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
188
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
189
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
190
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
191
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
192
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
193
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
194
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
195
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
196
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
197
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
198
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
199
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
200
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
201
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
202
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
203
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
204
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
205
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
206
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
207
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
208
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
209
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
210
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
211
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
212
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
213
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
214
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
215
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
216
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
217
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
218
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
219
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
220
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
221
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
222
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
223
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
224
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
225
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
226
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
227
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
228
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
229
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
230
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
231
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
232
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
233
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
234
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
235
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
236
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
237
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
238
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
239
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
240
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
241
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
242
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
243
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
244
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
245
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
246
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
247
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
248
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
249
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
250
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
251
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
252
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
253
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
254
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
255
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
256
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
257
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
258
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
259
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
260
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
261
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
262
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
263
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
264
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
265
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
266
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
267
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
268
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
269
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
270
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
271
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
272
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
273
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
274
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
275
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
276
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
277
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
278
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
279
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
280
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
281
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
282
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
283
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
284
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
285
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
286
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
287
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
288
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
289
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
290
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
291
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
292
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
293
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
294
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
295
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
296
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
297
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
298
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
299
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
300
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
301
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
302
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
303
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
304
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
305
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
306
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
307
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
308
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
309
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
310
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
311
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
312
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
313
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
314
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
315
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
316
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
317
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
318
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
319
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
320
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
321
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
322
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
323
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
324
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
325
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
326
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
327
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
328
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
329
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
330
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
331
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
332
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
333
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
334
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
335
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
336
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
337
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
338
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
339
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
340
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
341
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
342
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
343
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
344
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
345
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
346
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
347
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
348
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
349
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
350
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
351
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
352
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
353
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
354
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
355
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
356
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
357
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
358
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
359
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
360
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
361
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
362
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
363
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
364
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
365
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
366
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
367
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
368
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
369
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
370
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
371
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
372
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
373
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
374
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
375
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
376
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
377
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
378
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
379
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
380
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
381
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
382
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
383
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
384
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
385
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
386
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
387
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
388
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
389
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
390
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
391
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
392
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
393
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
394
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
395
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
396
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
397
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
398
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
399
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
400
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
401
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
402
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
403
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
404
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
405
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
406
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
407
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
408
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
409
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
410
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
411
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
412
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
413
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
414
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
415
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
416
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
417
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
418
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
419
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
420
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
421
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
422
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
423
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
424
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
425
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
426
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
427
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
428
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
429
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
430
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
431
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
432
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
433
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
434
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
435
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
436
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
437
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
438
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
439
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
440
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
441
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
442
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
443
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
444
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
445
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
446
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
447
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
448
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
449
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
450
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
451
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
452
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
453
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
454
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
455
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
456
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
457
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
458
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
459
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
460
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
461
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
462
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
463
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
464
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
465
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
466
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
467
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
468
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
469
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
470
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
471
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
472
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
473
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
474
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
475
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
476
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
477
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
478
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
479
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
480
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
481
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
482
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
483
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
484
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
485
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
486
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
487
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
488
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
489
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
490
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
491
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
492
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
493
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
494
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
495
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
496
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
497
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
498
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
499
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
500
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
501
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
502
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
503
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
504
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
505
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
506
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
507
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
508
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
509
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
510
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
511
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
512
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
513
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
514
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
515
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
516
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
517
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
518
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
519
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
520
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
521
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
522
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
523
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
524
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
525
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
526
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
527
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
528
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
529
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
530
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
531
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
532
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
533
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
534
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
535
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
536
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
537
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
538
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
539
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
540
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
541
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
542
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
543
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
544
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
545
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
546
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
547
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
548
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
549
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
550
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
551
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
552
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
553
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
554
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
555
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
556
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
557
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
558
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
559
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
560
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
561
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
562
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
563
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
564
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
565
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
566
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
567
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
568
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
569
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
570
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
571
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
572
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
573
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
574
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
575
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
576
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
577
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
578
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
579
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
580
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
581
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
582
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
583
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
584
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
585
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
586
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
587
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
588
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
589
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
590
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
591
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
592
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
593
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
594
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
595
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
596
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
597
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
598
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
599
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
600
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
601
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
602
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
603
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
604
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
605
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
606
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
607
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
608
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
609
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
610
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
611
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
612
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
613
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
614
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
615
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
616
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
617
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
618
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
619
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
620
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
621
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
622
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
623
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
624
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
625
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
626
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
627
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
628
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
629
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
630
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
631
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
632
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
633
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
634
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
635
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
636
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
637
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
638
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
639
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
640
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
641
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
642
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
643
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
644
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
645
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
646
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
647
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
648
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
649
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
650
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
651
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
652
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
653
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
654
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
655
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
656
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
657
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
658
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
659
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
660
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
661
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
662
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
663
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
664
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
665
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
666
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
667
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
668
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
669
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
670
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
671
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
672
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
673
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
674
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
675
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
676
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
677
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
678
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
679
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
680
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
681
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
682
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
683
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
684
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
685
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
686
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
687
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
688
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
689
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
690
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
691
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
692
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
693
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
694
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
695
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
696
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
697
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
698
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
699
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
700
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
701
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
702
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
703
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
704
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
705
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
706
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
707
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
708
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
709
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
710
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
711
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
712
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
713
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
714
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
715
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
716
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
717
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
718
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
719
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
720
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
721
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
722
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
723
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
724
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
725
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
726
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
727
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
728
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
729
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
730
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
731
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
732
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
733
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
734
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
735
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
736
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
737
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
738
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
739
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
740
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
741
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
742
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
743
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
744
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
745
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
746
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
747
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
748
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
749
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
750
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
751
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
752
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
753
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
754
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
755
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
756
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
757
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
758
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
759
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
760
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
761
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
762
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
763
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
764
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
765
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
766
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
767
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
768
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
769
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
770
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
771
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
772
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
773
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
774
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
775
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
776
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
777
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
778
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
779
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
780
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
781
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
782
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
783
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
784
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
785
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
786
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
787
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
788
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
789
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
790
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
791
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
792
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
793
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
794
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
795
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
796
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
797
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
798
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
799
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
800
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
801
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
802
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
803
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
804
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
805
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
806
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
807
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
808
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
809
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
810
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
811
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
812
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
813
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
814
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
815
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
816
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
817
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
818
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
819
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
820
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
821
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
822
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
823
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
824
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
825
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
826
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
827
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
828
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
829
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
830
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
831
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
832
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
833
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
834
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
835
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
836
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
837
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
838
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
839
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
840
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
841
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
842
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
843
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
844
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
845
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
846
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
847
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
848
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
849
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
850
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
851
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
852
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
853
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
854
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
855
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
856
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
857
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
858
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
859
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
860
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
861
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
862
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
863
+k.Init();return k},ZLIB=ZLIB||{};
864
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
865
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
866
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
867
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
868
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
869
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
870
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
871
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
872
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
873
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
874
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
875
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
876
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
877
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
878
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
879
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
880
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
881
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
882
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
883
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
884
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
885
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
886
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
887
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
888
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
889
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
890
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
891
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
892
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
893
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
894
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
895
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
896
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
897
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
898
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
899
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
900
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
901
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
902
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
903
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
904
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
905
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
906
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
907
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
908
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
909
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
910
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
911
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
912
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
913
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
914
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
915
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
916
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
917
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
918
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
919
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
920
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
921
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
922
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
923
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
924
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
925
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
926
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
927
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
928
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
929
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
930
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
931
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
932
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
933
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
934
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
935
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
936
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
937
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
938
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
939
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
940
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
941
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
942
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
943
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>Cargando...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
944
+StatusStrs=["Desconectado","Conectando ...","Preparar...","Conectado"],scriptstate,t,t2,rsepass=null;
945
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
946
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR + LF":"LF";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
947
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
948
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
949
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
950
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
951
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="Desconectar"}function getCurrentMeshNode(){return currentMeshNode}
952
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="Iniciar captura";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
953
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
954
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
955
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
956
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
957
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
958
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
959
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
960
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="Conectar";QH(5,"Desconectado");go(100)}
961
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
962
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
963
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
964
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
965
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
966
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
967
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
968
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
969
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
970
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
971
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"Sincronizar reloj",3,syncClockEx,"\u00bfSincronizar el reloj Intel AMT con esta computadora?")}
972
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","Error al establecer la hora, estado ="+d):0!=a.Body.ReturnValue?messagebox("","Error al establecer la hora, error: "+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}
973
+var DMTFPowerStates=";;Encendido;Sue\u00f1o ligero;Sue\u00f1o profundo;Ciclo de encendido (apagado suave);Apagado: duro;Hibernar (apagado suave);Suave apagado;Ciclo de encendido (apagado);Reinicio del bus principal;Interrupci\u00f3n de diagn\u00f3stico (NMI);No aplica;Apagado: suave y elegante;Apagado: duro y elegante;Reinicio del bus maestro agraciado;Ciclo de encendido (apagado - suave y elegante);Ciclo de encendido (Apagado - Gracioso duro);Interrupci\u00f3n de diagn\u00f3stico (INIT)".split(";");
974
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>Desconocido</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"Encendido"==a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&
975
+3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=[", Conectado",", En la bater\u00eda"][q.PowerSource]);d+=TableEntry("Poder",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>Ninguna</i>":EscapeHtml(c);d+=TableEntry("Nombre y dominio",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?
976
+d+=TableEntry("ID del sistema",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("ID del sistema",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" activado en modo de control de administrador (ACM)",4==k.ProvisioningMode&&(p=" activado en modo de control de cliente (CCM)",b=9));d+=TableEntry("Intel® ME",
977
+"v"+getItem(amtlogicalelements,"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,
978
+n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);
979
+r&&(e+=", Puerto de redireccionamiento");n&&(e+=", Serie sobre LAN");p&&(e+=", IDE-Redirect");w&&(e+=", KVM");""==e&&(e=" Ninguna");d+=TableEntry("Caracter\u00edsticas activas",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="Pantalla principal",7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["Pantalla principal",
980
+"Pantalla secundaria","Tercera pantalla"][p.DefaultScreen]),e='<span title="'+format("La pantalla remota predeterminada es {0}",e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+=", Puerto 5900 habilitado"),1==p.OptInPolicy&&(e+=","+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"segundos de suscripci\u00f3n":"segundo opt-in")),e+=","+p.SessionTimeout+" minuto"+(0<p.SessionTimeout?"s":"")+" hora de t\u00e9rmino de la sesi\u00f3n",9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService?
981
+((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&1))&&(e+=", Blanking permitido"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("Escritorio remoto",addLinkConditional(e,"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&
982
+(e="Estado desconocido",r=amtsysstate.IPS_OptInService.response.OptInRequired,0==r&&(e="No requerido"),1==r&&(e="Requerido solo para KVM"),4294967295==r&&(e="Siempre requerido"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("Consentimiento del usuario",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==
983
+e[l].SettingData.ReferenceParameters.ResourceURI)for(r=e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==r&&(d+=TableEntry("Pol\u00edtica de energ\u00eda",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&(d+=TableEntry("Fecha y hora",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",
984
+xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";e+=AddButton("Acciones de poder ...","showPowerActionDlg()")+" ";e+=AddButton("Guardar Estado...","saveEntireAmtState()")+" ";e+=AddButton("Ejecutar gui\u00f3n...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");QH(17,d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+
985
+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+" Cambiar la configuraci\u00f3n de red puede hacer que esta p\u00e1gina no est\u00e9 disponible.");d=d+"<br><h2>Configuraci\u00f3n general</h2>"+TableStart();e="";"<i>Ninguna</i>"!=c&&(1==q.SharedFQDN&&(e=", compartido con el sistema operativo"),0==q.SharedFQDN&&(e=", diferente del sistema operativo"));d+=TableEntry("Nombre y dominio",addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));c="Discapacitado";1==q.DDNSUpdateEnabled?
986
+c="Habilitado cada"+q.DDNSPeriodicUpdateInterval+" minutos, TTL es"+q.DDNSTTL+" minutos":1==q.DDNSUpdateByDHCPServerEnabled&&(c="Actualizaci\u00f3n por servidor DHCP");d+=TableEntry("DNS Din\u00e1mico",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==
987
+a&&b++;d+="<br><h2>"+(amtwirelessif==a?"Interfaz inal\u00e1mbrica":"Interfaz cableada")+"</h2>";d+=TableStart();d+=TableEntry("Estado de enlace",1==c.LinkIsUp?"Enlace est\u00e1 arriba":"El enlace est\u00e1 ca\u00eddo");if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 / AC"),14==c.LinkPolicy[l]&&e.push("Sx / AC"),16==c.LinkPolicy[l]&&e.push("S0 / DC"),224==c.LinkPolicy[l]&&e.push("Sx / DC");0==e.length&&e.push("");d+=TableEntry("Pol\u00edtica de enlaces",
988
+addLinkConditional(0==e.length?"No disponible":"Disponible en: "+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("Direcci\u00f3n MAC",c.MACAddress));amtwirelessif==a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("Estado",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("Radio State",
989
+xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+", SSID: "+(s?s:"<i>Ninguna</i>")));amtwirelessif!=a&&(d+=TableEntry("Responder al ping",addLinkConditional(["Discapacitado","Respuesta ICMP","Respuesta RMCP","Respuesta ICMP y RMCP"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"Autom\u00e1tico usando el servidor DHCP":"Direcci\u00f3n IP est\u00e1tica",1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("Estado IPv4",
990
+addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("Direcci\u00f3n IPv4",isIpAddress(c.IPAddress,"Ninguna"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("Puerta de enlace IPv4 / M\u00e1scara",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"Ninguna")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("Servidor de nombres de dominio IPv4",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];
991
+for(var r="Discapacitado",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?"Direcciones habilitadas, autom\u00e1ticas y manuales":"Habilitado, direcciones autom\u00e1ticas");d+=TableEntry("Estado IPv6",addLinkConditional(r,
992
+"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=","),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("Direcci\u00f3n IPv6",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("Direcci\u00f3n IPv6","Ninguna");isIpAddress(c.CurrentDefaultRouter)&&
993
+(d+=TableEntry("Enrutador predeterminado IPv6",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("Servidor de nombres de dominio IPv6",e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<amtversion||11==amtversion&&
994
+5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
995
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
996
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"Pol\u00edtica de enlaces",3,showLinkPolicyDlgEx,a,b)}}
997
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
998
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Pol\u00edtica de enlaces",format("No se puede establecer una nueva pol\u00edtica de enlaces, error {0}",d))}
999
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>Ninguna</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
1000
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>Trusted</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+" bytes,<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+
1001
+c+")>Descargar</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" bytes,<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>Descargar</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
1002
+function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
1003
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"Guardar todo el estado de Intel® AMT",3,saveEntireAmtStateOk)}}
1004
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"Guardar todo el estado de Intel® AMT",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1005
+function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1006
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>Pantalla principal</option><option value=1>Pantalla secundaria</option>";9<amtversion&&(c+="<option value=2>Tercera pantalla</option>");c+='</select><div style=padding-top:4px>Pantalla predeterminada</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Tiempo de espera de la sesi\u00f3n (minutos)</div></div>';
1007
+1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Opt-in timeout (segundos)</div></div>');c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Deshabilitado, Recomendado</option><option value=1>Habilitado, visores KVM heredados</option></select><div style=padding-top:4px>Puerto 5900</div></div>";
1008
+c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>5900 contrase\u00f1a (8 caracteres)</div></div>";9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+='<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Discapacitado</option><option value=1>Habilitado</option></select><div style=padding-top:4px title="Esta caracter\u00edstica no suele ser compatible">Pantalla en blanco</div></div>');
1009
+c+="</div>";setDialogMode(11,"Configuraci\u00f3n de escritorio remoto",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}
1010
+function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1011
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1012
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("Configuraci\u00f3n de escritorio remoto",format("Error {0}, no se pueden establecer valores.",d))}
1013
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("Error",format("No se pudo establecer la supresi\u00f3n de pantalla, es posible que la supresi\u00f3n de este sistema no sea compatible ({0})",d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}
1014
+function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1015
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("Descongelar registro","FreezeLog(0)"):AddButton("Congelar registro","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="Filtrar" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1016
+AddRefreshButton("PullEventLog(1)")+AddButton("Borrar registro","ClearLog()")+AddButton("Salvar...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1017
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>Fuente</b><td class=r1><b>Descripci\u00f3n</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1018
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1019
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"\u00bfBorrar el registro de eventos?"),setDialogMode(1,"Registro de eventos",3,ClearLogEx))}function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("Registro de eventos","No se puede borrar, error: "+d):PullEventLog()})}
1020
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("Hora",c.Time.toLocaleString());a+=addHtmlValue("Fuente",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("Descripci\u00f3n",c.Desc);a+=MoreStart();a+=addHtmlValue("Direcci\u00f3n del dispositivo",c.DeviceAddress);a+=addHtmlValue("Entidad",c.Entity);a+=addHtmlValue("Instancia de entidad",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];a+=
1021
+addHtmlValue("Datos",d);a+=addHtmlValue("Compensar",c.EventOffset);a+=addHtmlValue("Tipo de sensor",c.EventSensorType);a+=addHtmlValue("Gravedad",c.EventSeverity);a+=addHtmlValue("tipo de fuente",c.EventSourceType);a+=addHtmlValue("Tipo",c.EventType);a+=addHtmlValue("N\u00famero de sensor",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("Evento # {0} Detalles",b+1),a)}}
1022
+function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1023
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1024
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gestionar suscriptores de eventos.<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],
1025
+b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>No se encontraron suscripciones.</i></div><br>");e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("Nueva suscripci\u00f3n","newSubscriptionButton()"));b+=
1026
+"<br><td class=r1>"+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"empujar",3:"Empujar con ACK",4:"Eventos",5:"Halar"};
1027
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("Destino",a.Destination);d+=addHtmlValue("Filtrar",c);d+=addHtmlValue("Modo de entrega",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"Suscripci\u00f3n"+(b+1),xxAccountAdminName?
1028
+5:1,deleteSubscriptionButton,d+"</div>",b)}}
1029
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
1030
+Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1031
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>empujar</option><option value=PushWithAck>Empujar con ACK</option></select><div style=padding-top:4px>Tipo</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+='<option value="'+subscriptionsFilters[c].InstanceID+'">'+subscriptionsFilters[c].CollectionName.substring(13)+
1032
+"</option>";b+="</select><div style=padding-top:4px>Filtrar</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>URL</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>Ninguna</option><option value=1>Digerir</option></select><div style=padding-top:4px>Autenticaci\u00f3n</div></div>";
1033
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Nombre de usuario</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Contrase\u00f1a</div></div>";b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>Argumentos</div></div>";
1034
+setDialogMode(11,"Agregar suscripci\u00f3n de evento",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1035
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1036
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="Desconocido;Otro;Habilitado;Discapacitado;Apagando;No aplica;Habilitado pero sin conexi\u00f3n;En prueba;Diferido;Quietud;Comenzando".split(";");
1037
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"Discapacitado":"Habilitado",c&2&&(b+=", Bloqueado"),c&4&&(b+=", Casi lleno"),c&8&&(b+=", Completo"),c&16&&(b+=", No hay llave"),c="<h1>Configuraci\u00f3n del registro de auditor\u00eda</h1>"+TableStart(),c+=TableEntry("Estado",b),c+=TableEntry("Almacenamiento",a[0].CurrentNumberOfRecords+" registros),"+a[0].PercentageFree+"% gratis"),c+=TableEntry("Pol\u00edtica de sobrescritura",2==a[0].OverwritePolicy?"Se envuelve cuando est\u00e1 lleno":
1038
+"Nunca sobrescribe"),c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1039
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="Filtrar" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("Salvar...","SaveAuditLog()")+AddButton("Borrar registro","ClearAuditLog()"))+"<br>");if(0==c.length)d="No se encontraron eventos de registro de auditor\u00eda.";else{var e=0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>Hora</b><td class=r1 style=width:260px><b>Iniciador</b><td class=r1><b>Action</b>";
1040
+for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+=","+q.Event);null!=q.ExStr&&(p+=","+q.ExStr);""!=k&&""!=r&&(k+=",");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",
1041
+minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","Registro de auditor\u00eda de Intel AMT",auditLog)}
1042
+function ClearAuditLog(b){QH(66,"\u00bfBorrar el registro de auditor\u00eda?");setDialogMode(1,"Registro de auditor\u00eda",3,ClearAuditLogEx)}function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}
1043
+function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("Registro de auditor\u00eda","Error: "+d)}
1044
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("Hora",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("Iniciador",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("Habla a",a.NetAddress));d+=addHtmlValue("Solicitud",a.AuditApp);d+=addHtmlValue("Evento",a.Event);if(null!=a.ExStr)d+=addHtmlValue("Datos extendidos",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<e.length&&(e+=","),e+=a.Ex.charCodeAt(c);""!=e&&(d+=
1045
+addHtmlValue("Valores de datos",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("Cadena de datos",a.Ex.substring(2)))}messagebox("Evento de auditor\u00eda #"+(b+1)+" Detalles",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;
1046
+function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1047
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1048
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1049
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1050
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"Discapacitado";var c=(1==xxTlsSettings[b].MutualAuthentication?"TLS de autenticaci\u00f3n mutua":"TLS de autenticaci\u00f3n de servidor")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" y no TLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1051
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("Seguridad remota de TLS",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("Seguridad local de TLS",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Administre los certificados Intel® AMT para esta computadora.<br><br>");
1052
+if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>No se encontraron certificados.</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b=", Ra\u00edz de confianza"),xxCertificates[d].XPrivateKey&&(b=", Llave privada"),d==xxTlsCurrentCert&&(b+=", Certificado TLS"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+b+"</i></div></div>";
1053
+for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>Par de claves privadas sin asignar #"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("Agregar certificado ...","addCertButton()")+AddButton("Emitir certificado ...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1054
+function showKeyPairDetails(b){setDialogMode(11,"Par de claves #"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"Este es un par de claves de certificado p\u00fablico / privado que no pertenece a ning\u00fan certificado. Esta entrada debe ser temporal.")}
1055
+var xxCertSubjectNames={CN:"Nombre com\u00fan",O:"Organizaci\u00f3n",OU:"Unidad Org",S:"Provincia del estado",ST:"Provincia del estado",L:"Localidad",C:"Pa\u00eds",SN:"Apellido",GN:"Nombre de pila"};
1056
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("Certificado",c.X509Certificate.length+" bytes,<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>Descargar</a>");a+=addHtmlValue("Ra\u00edz de confianza",c.TrustedRootCertficate?"si":"No");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("Llave privada","Presente"));a+='<br><div style="border-bottom:1px solid gray"><i>Asunto del certificado</i></div><br>';for(var d in c.XSubject)c.XSubject[d]&&
1057
+(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>Certificado de emisor</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"Certificado -"+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},
1058
+function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}var xxDragDropCertFiles=null;
1059
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>Archivo de certificado</div></div>")+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>Certificado ra\u00edz de confianza</option><option value=0>Certificado de cadena</option></select><div style=padding-top:4px>Tipo de certificado</div></div>",
1060
+setDialogMode(11,"Agregar certificado",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1061
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1062
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>Contrase\u00f1a del certificado</div></div>",
1063
+b+='<br><div style="border-bottom:1px solid gray"><i>Certificado Intel® AMT</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>Nombre com\u00fan</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>Organizaci\u00f3n</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>Provincia del estado</div></div>",
1064
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>Pa\u00eds</div></div>",b+='<div>Usos de certificado</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',b+="<li><label><input type=checkbox id=d11_cu4 checked>Servidor TLS (HTTPS)</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>Cliente TLS (HTTPS)</label></li>",
1065
+b+="<li><label><input type=checkbox id=d11_cu6>Protecci\u00f3n de correo electr\u00f3nico</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>Firma de c\u00f3digo</label></li>",b+="<li><label><input type=checkbox id=d11_cu8>Sello de tiempo</label></li>",b+="</ul>",setDialogMode(11,"Emitir certificado",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1066
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1067
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("Emitir certificado","No se puede descifrar / decodificar el certificado.")}
1068
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1069
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("Emitir certificado","Error al generar par de claves. Estado: "+d):0!=a.Body.ReturnValue?messagebox("Emitir certificado","Error al generar par de claves,"+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1070
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("Emitir certificado","Error al generar par de claves. Estado: "+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"Certificado ra\u00edz no confiable"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=
1071
+xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("Emitir certificado","No se puede firmar el certificado."):(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,
1072
+q.length-25),GenerateKeyPairResponse4))}}function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("Emitir certificado","Error al generar par de claves. Estado: "+d):PullCertificates()}function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("Agregar certificado","No se puede agregar el certificado, error"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}
1073
+function certificateRemoved(b,c,a,d){200!=d?messagebox("Eliminar certificado","No se puede eliminar el certificado, error"+d):PullCertificates()}function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1074
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>Sin certificado, TLS deshabilitado</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>Certificado</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
1075
+b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="Lista separada por comas de nombres comunes de certificados que se les permitir\u00e1 conectarse de forma remota."><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="nombre1, nombre2"><div style=padding-top:4px>CN remotos</div></div>';setDialogMode(11,
1076
+"Configuraciones TLS",3,showSetTlsSecurityDlgOk,b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);getSelectElement("tlsremote").value=(1==xxTlsSettings[c].MutualAuthentication?
1077
+2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1078
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1079
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1080
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1081
+b,c,d){200!=d?messagebox("","Error al establecer la hora, estado ="+d):0!=c.Body.ReturnValue?messagebox("","Error al establecer la hora, error: "+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,0,1,a[1]);
1082
+statusbox("Configuraciones TLS","Aplicando nuevas configuraciones de seguridad ...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1083
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","Error al establecer la seguridad de TLS, estado ="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1084
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","Error al establecer la seguridad de TLS, estado ="+d):0!=a.Body.ReturnValue?messagebox("","Error al establecer la seguridad de TLS, error: "+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1085
+function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1086
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1087
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1088
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1089
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}var watchdogEnabledStates="Desconocido;Otro;Habilitado;Discapacitado;Apagando;No aplica;Habilitado pero sin conexi\u00f3n;En prueba;Diferido;Quietud;Comenzando".split(";"),watchdogMonitoredEntity="Desconocido;Otro;Sistema operativo;Proceso de arranque del sistema operativo;Proceso de apagado del sistema operativo;Proceso de arranque del firmware;Proceso de arranque del BIOS;Solicitud;Procesador de servicio".split(";");
1090
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("Watchdogs m\u00e1ximos",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" perros guardianes");b+=TableEntry("M\u00e1ximo total de acciones",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" comportamiento");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Administre los perros guardianes de presencia de agente Intel® AMT.<br><br>";if(null==
1091
+xxWatchdog.AMT_AgentPresenceWatchdog.responses||0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>No se encontr\u00f3 ning\u00fan agente de vigilancia de presencia de agentes.</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));
1092
+b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="Agregar acci\u00f3n ..." onclick=addWatchdogAction(event,'+c+")>";a.transitions&&(b+='<input type=button style=float:right value="Eliminar acciones ..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+
1093
+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+=": Evento para registrar")}""!=d&&(b+="<div style=padding:12px>"+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("A\u00f1adir perro guardi\u00e1n ...","AddWatchdog()"));b+="<br>";QH(60,b)}}
1094
+function getWatchdogTransitionStr(b){if(31==b)return"Cualquier estado";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1095
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("Descripci\u00f3n",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("Entidad monitoreada",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("Estado actual",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("Estado habilitado",watchdogEnabledStates[b.EnabledState]);c+=addHtmlValue("Intervalo de inicio",
1096
+b.StartupInterval+" segundos)");c+=addHtmlValue("Intervalo de tiempo de espera",b.TimeoutInterval+" segundos)");setDialogMode(11,format("Perro guardi\u00e1n {0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1097
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Nombre</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="Generar DeviceID aleatorio">'+addLink("ID del dispositivo","GenerateWatchdogGuid()")+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Inicio (segundos)</div></div>";
1098
+b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Tiempo de espera (segundos)</div></div>";setDialogMode(11,"Agregar perro guardi\u00e1n",3,AddWatchdogOk,b);AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}
1099
+function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1100
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1101
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("Perro guardi\u00e1n","No se puede agregar el perro guardi\u00e1n, error #"+d):PullWatchdog()}
1102
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>Desde<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>A<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"Agregar acci\u00f3n de vigilancia",
1103
+3,addWatchdogActionOk,d+"</table><br>Realizar una acci\u00f3n<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>Escribir en el registro de eventos<br />",a);addWatchdogActionUpdate();haltEvent(b)}function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1104
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Acci\u00f3n de vigilancia","No se puede agregar la acci\u00f3n de vigilancia, error #"+d):PullWatchdog()}
1105
+function deleteWatchdogActions(b,c){setDialogMode(11,"Eliminar acciones de vigilancia",3,deleteWatchdogActionsOk,"\u00bfEliminar todas las acciones para este perro guardi\u00e1n?",xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1106
+function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Acci\u00f3n de vigilancia","No se pueden eliminar las acciones de vigilancia, error #"+d):PullWatchdog()}
1107
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"Todos los paquetes IP",2054:"Todos los paquetes ARP"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"Permitir, contar",1:"Drop, Count",2:"L\u00edmite de tarifa",3:"Permitir",4:"soltar"},xxSystemDefenceFilters={HdrProtocolID:1,HdrDestAddress:2,HdrDestMask:2,
1108
+HdrSrcAddress:2,HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,TCPFlagsOn:3,TCPFlagsOff:3};function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}
1109
+function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1110
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1111
+a}b+=TableStart();c="<i>Ninguna</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("Pol\u00edtica cableada predeterminada",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d=1==d?d+" paquete":d+" paquetes",b+=TableEntry((0==c?"Cableado":"Inal\u00e1mbrico")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>Administre las pol\u00edticas de defensa del sistema Intel® AMT.<br><br>";
1112
+if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+="<div style=padding-left:15px><i>No se encontraron pol\u00edticas de defensa del sistema.</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+c+
1113
+")><div style=padding-top:3px><b>"+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>Administre los filtros de defensa del sistema Intel® AMT.<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>No se encontraron filtros de defensa del sistema.</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=xxSystemDefense.AMT_Hdr8021Filter.responses[c],
1114
+(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||(d="Todo el protocolo de Ethernet"+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" a"+a.FilterProfileData+" paquete / seg"),1==a.ActionEventOnMatch&&(d+=", Evento en partido"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=
1115
+xxSystemDefense.AMT_IPHeadersFilter.responses[c];(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="Todo el protocolo de Ethernet"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==a.FilterProfile&&(d+=" a"+a.FilterProfileData+" paquete / seg");1==a.ActionEventOnMatch&&(d+=", Evento en partido");var q=0;for(e in xxSystemDefenceFilters)a[e]&&q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==
1116
+a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("A\u00f1adir filtro...","AddDefenseFilter()")+AddButton("Agregar pol\u00edtica ...","AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}
1117
+function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1118
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1119
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1120
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1121
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>Ninguna";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1122
+"Pol\u00edtica predeterminada de defensa del sistema",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>Pol\u00edtica predeterminada</div></div>",b)}}
1123
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
1124
+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1125
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">Puerto Ethernet Intel (r) AMT '+
1126
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1127
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("Pol\u00edtica predeterminada de defensa del sistema","No se puede establecer la pol\u00edtica, error"+d):PullSystemDefense()}
1128
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Nombre</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Filtro de paquete IP Ethernet<option value=1>Filtro de paquetes Ethernet ARP<option value=2>Filtro de paquetes IPv4<option value=3>Filtro de paquetes IPv6</select><div style=padding-top:4px>Tipo</div></div>";b+=
1129
+'<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="Reglas opcionales" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Reglas a juego</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Saliente / Transmitir<option value=1>Entrante / Recibir</select><div style=padding-top:4px>Direcci\u00f3n</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Permitir, contar<option value=1>Drop, Count<option value=2>L\u00edmite de tarifa<option value=3>Permitir<option value=4>soltar</select><div style=padding-top:4px>Acci\u00f3n</div></div>";
1130
+b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Paquetes / segundo</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>Hacer nada<option value=1>Evento en partido</select><div style=padding-top:4px>Registro de eventos</div></div>";setDialogMode(11,"Agregar filtro de defensa del sistema",
1131
+3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1132
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1133
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="Hdr"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1134
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1135
+function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("Agregar filtro de defensa del sistema","No se puede agregar el filtro, error #"+d):PullSystemDefense()}
1136
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="Tr\u00e1fico Ethernet",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="Todo el protocolo de Ethernet"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="Tr\u00e1fico IP",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="Todo el protocolo IP"+d.HdrIPVersion));var p;p=""+addHtmlValue("Nombre",EscapeHtml(d.Name));p+=addHtmlValue("Tipo",
1137
+e);p+=addHtmlValue("Tr\u00e1fico a juego",a);p+=addHtmlValue("Direcci\u00f3n",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("Filtrar"+a,e));p+=addHtmlValue("Evento en partido",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,
1138
+"Filtro Ethernet #"+d.InstanceID,5,showFilterDetailsOk,p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("Eliminar filtro","No se puede quitar el filtro, aseg\u00farese de que no est\u00e9 en uso."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1139
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>Nombre</div></div><div style=height:26px;margin-top:4px><select id=policytx title="Acci\u00f3n predeterminada a tomar para el tr\u00e1fico saliente" style=float:right;width:133px><option value=0>Allow<option value=1>soltar<option value=2>Permitir, contar<option value=3>Drop, Count<option value=4>Permitir, contar, evento<option value=5>Drop, Count, Event</select><select id=policyrx style=float:right;width:133px title="Acci\u00f3n predeterminada a tomar para el tr\u00e1fico entrante"><option value=0>Permitir<option value=1>soltar<option value=2>Permitir, contar<option value=3>Drop, Count<option value=4>Permitir, contar, evento<option value=5>Drop, Count, Event</select><div style=padding-top:4px>TX / RX predeterminado</div></div>';b+=
1140
+"<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1141
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>A\u00f1adir filtro</div></div>"}setDialogMode(11,"Agregar pol\u00edtica de defensa del sistema",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}
1142
+function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1143
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>Esta pol\u00edtica no contiene filtros.</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Eliminar","removeFilterButton("+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+GetFilterById(xxAddDefensePolicyFilters[c]).Name+
1144
+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1145
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1146
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("Agregar pol\u00edtica de defensa del sistema","No se puede agregar la pol\u00edtica, error #"+d):PullSystemDefense()}
1147
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("Nombre",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("Precedencia",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"soltar":"Permitir";1==c.TxDefaultCount&&(d+=", Cuenta");1==c.TxDefaultMatchEvent&&(d+="Evento");a+=addHtmlValue("Acci\u00f3n TX predeterminada",d);d=1==c.RxDefaultDrop?"Drop":"Allow";1==c.RxDefaultCount&&(d+=", Count");1==c.RxDefaultMatchEvent&&
1148
+(d+=", Event");a+=addHtmlValue("Acci\u00f3n RX predeterminada",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=addHtmlValue("Filtro #"+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("Pol\u00edtica #",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}
1149
+function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("Eliminar pol\u00edtica","No se puede eliminar la pol\u00edtica, aseg\u00farese de que no est\u00e9 en uso."):PullSystemDefense()}var xxWireless;function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}function wifiRefresh(){xxdialogMode||PullWireless()}
1150
+var xxWifiState={3:"Discapacitado",32768:"Habilitado en S0",32769:"Habilitado en S0, Sx / AC"},xxRadioState={2:"Encendido, conectado",3:"Apagado",6:"Encendido, desconectado"},xxWifiAuthenticationMethod={1:"Otro",2:"Abierto",3:"Llave compartida",4:"PSK WPA",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"Otro",2:"WEP",3:"TKIP-RC4",4:"CCMP-AES",5:"Ninguna"};function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1151
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>Perfiles inal\u00e1mbricos</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>Perfiles inal\u00e1mbricos que Intel® AMT usar\u00e1 para la conectividad de red.<br><br>";for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+
1152
+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("Eliminar",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>No hay perfiles inal\u00e1mbricos presentes</i><br>");e+="<br><td class=r2>";e=xxAccountAdminName?e+TableEnd(AddButton("Nuevo perfil","showWifiNewProfile()")):
1153
+e+TableEnd("");QH(22,e+"<br>")}}}function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"Estado inal\u00e1mbrico",3,wifiStateDlg,b)}}
1154
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1155
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("Nombre de perfil",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("Autenticaci\u00f3n",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("Cifrado",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("Prioridad",b.Priority);messagebox("Perfil inal\u00e1mbrico",c+"</div>")}}
1156
+function wifiRemoveButton(b){xxdialogMode||(QH(66,format('\u00bfEliminar el perfil inal\u00e1mbrico "{0}"?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"Perfil inal\u00e1mbrico",3,function(){removeWifiButtonEx(b)}))}function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}
1157
+function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1158
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"Agregar perfil inal\u00e1mbrico",3,function(){addWifiProfile()});updateWifiDialog()}}
1159
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1160
+PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1161
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1162
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1163
+var DMTFCPUStatus="Desconocido;Habilitado;Deshabilitado por el usuario;Deshabilitado por BIOS (error POST);Ocioso;Otro".split(";"),DMTFMemType="Desconocido;Otro;DRACMA;DRAM sincr\u00f3nico;DRAM de cach\u00e9;EDO;EDRAM;VRAM;SRAM;RAM;ROM;Destello;EEPROM;FEPROM;EPROM;CDRAM;3DRAM;SDRAM;SGRAM;RDRAM;DDR;DDR-2;BRAM;FB-DIMM;DDR3;FBD2;DDR4;LPDDR;LPDDR2;LPDDR3;LPDDR4".split(";"),DMTFMemFormFactor=";Otro;Desconocido;SIMM;sorbo;Chip;INMERSI\u00d3N;ZIP;Tarjeta propietaria;DIMM;TSOP;Fila de papas fritas;RIMM;SODIMM;SRIMM;FB-DIM".split(";"),
1164
+DMTFProcFamilly={191:"Procesador Intel® Core ™ 2 Duo",192:"Procesador Intel® Core ™ 2 Solo",193:"Procesador Intel® Core ™ 2 Extreme",194:"Procesador Intel® Core ™ 2 Quad",195:"Procesador m\u00f3vil Intel® Core ™ 2 Extreme",196:"Procesador m\u00f3vil Intel® Core ™ 2 Duo",197:"Procesador m\u00f3vil Intel® Core ™ 2 Solo",198:"Procesador Intel® Core ™ i7",199:"Procesador Intel® Celeron® de doble n\u00facleo"},HardwareInventory;
1165
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("Salvar...","SaveHardwareLog()")+" La informaci\u00f3n de hardware se recopila en el momento del arranque del sistema.");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>Plataforma</h2>"+FullTable({"Modelo de computadora":c.Model,
1166
+Fabricante:c.Manufacturer,"Versi\u00f3n":c.Version,"N\u00famero de serie":c.SerialNumber,"ID del sistema":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>Z\u00f3calo</h2>";b+=FullTable({Fabricante:d.Manufacturer,"Nombre del producto":d.Model,"Versi\u00f3n":d.Version,"N\u00famero de serie":d.SerialNumber,"Etiqueta de propiedad":d.Tag,"\u00bfReemplazable?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({Vendedor:a.CIM_BIOSElement.response.Manufacturer,
1167
+"Versi\u00f3n":q,"Fecha de lanzamiento":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>Procesador "+(parseInt(e)+1)+"</h2>",b+=FullTable({Fabricante:trademarks(d.Manufacturer),Familia:DMTFProcFamilly[c.Family],"Versi\u00f3n":trademarks(d.Version),"Velocidad m\u00e1xima del z\u00f3calo":c.MaxClockSpeed+" megahercio",Estado:DMTFCPUStatus[c.CPUStatus]},
1168
+"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=a.CIM_PhysicalMemory.responses[e],b+="<h2>M\u00f3dulo de memoria "+(+e+1)+"</h2>",b+=FullTable({"Etiqueta del banco":c.BankLabel,Fabricante:c.Manufacturer,"N\u00famero de serie":c.SerialNumber,Talla:parseInt(c.Capacity/1048576)+" MEGABYTE","Factor de forma":DMTFMemFormFactor[c.FormFactor],Tipo:DMTFMemType[c.MemoryType],"Etiqueta de propiedad":c.Tag,"N\u00famero de pieza":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=
1169
+a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>Medios de almacenamiento "+(parseInt(e)+1)+"</h2>",b+=FullTable({Modelo:d.Model,"N\u00famero de serie":""==d.SerialNumber?"Unknown":d.SerialNumber,Talla:parseInt(Math.round(1E3*c.MaxMediaSize/1048576))+" MEGABYTE"},"");b+="<br>";QH(18,b);updateSystemStatus()}}
1170
+function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","Informaci\u00f3n de hardware de Intel AMT",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}
1171
+function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"Pol\u00edtica de energ\u00eda Intel® AMT",3,showPowerPolicyDlgOk,c)}}
1172
+function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1173
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1174
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1175
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1176
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>Administre las cuentas de usuario Intel® AMT para esta computadora.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=a.AccessPermission){2==
1177
+q&&(p+="Discapacitado,");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a.Reinos[c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="Auditor,");p=0<=a.Realms.indexOf(3)?p+"Administrador":1==k?p+"1 reino":p+(k+" reinos")}else p+="Administrador",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("Editar...",
1178
+"changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="Alternar cuentas ocultas" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");xxAccountAdminName&&(c+=AddButton("Nueva cuenta",
1179
+"newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1180
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"Editar cuenta",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1181
+function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"Nueva cuenta",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1182
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("Error de cuenta","Par\u00e1metros inv\u00e1lidos");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,
1183
+k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1184
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">Administrador</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1185
+function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["Solo locales","Solo red","Todo (local y de red)"];
1186
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("Nombre",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("Estado",1==xxAccountEnabledInfo[b].Enabled?"Habilitado":"Discapacitado"));if(e==xxAccountAdminName)a+=addHtmlValue("Permiso","Administrador");else{var a=a+addHtmlValue("Permiso",xxUserPermissions[c.AccessPermission]),q="";if(0<=c.Realms.indexOf(3))q="Administrador",
1187
+0<=c.Realms.indexOf(20)&&(q+="Auditor");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+=","),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="Ninguna");a+=addHtmlValue("Reinos","")+"<b>"+q+"</b>"}messagebox("Cuenta"+e,a+"</div>")}}
1188
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("Navegador",c,browserResponse,null,!0))}
1189
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>(Vac\u00edo)":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>Error #"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1190
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1191
+function onTerminalStateChange(b,c){c4.value=0==c?"Conectar":"Desconectar";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1192
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["Terminal UTF8","ASCII extendido","Intel ASCII"];
1193
+function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["Intel (F10 = ESC + [OM)","Alternativo (F10 = ESC + 0)","VT100 + (F10 = ESC + [OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1194
+function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR + LF",terminal.m.lineFeed="\r\n")}
1195
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="Detener captura";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),b+".txt")}delete terminal.m.capture;
1196
+c3.value="Iniciar captura"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"Pegar",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1197
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1198
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1199
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1200
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1201
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("DataChannel",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1202
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1203
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1204
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1205
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1206
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1207
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1208
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1209
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"Conectar":"Desconectar";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("Escritorio remoto","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("Escritorio remoto","The device indicated that this type of connection of not supported."):5E4==
1210
+b.disconnectCode?messagebox("Escritorio remoto","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1211
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b=", Soft-KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"Configuraci\u00f3n de escritorio remoto",3,showDesktopSettingsChanged))}
1212
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1213
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1214
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1215
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1216
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1217
+"8px"),center()))}
1218
+function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"Entrada remota de teclado",3,showDeskTypeEx,'<div>Ingrese el texto y haga clic en Aceptar para escribirlo de forma remota con un teclado de ingl\u00e9s de EE. UU. Aseg\u00farese de colocar el cursor remoto en la posici\u00f3n correcta antes de continuar.<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1219
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1220
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1221
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1222
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1223
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1224
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1225
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1226
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1227
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1228
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1229
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1230
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>Ra\u00edz</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+'">'+EscapeHtml(r.substring(0,
1231
+70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1232
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1233
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1234
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1235
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1236
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="Seleccionar todo",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||
1237
+0==d));QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"No seleccionar ninguno":"Seleccionar todo";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24PasteButton",(0<p24filetreelocation.length||
1238
+0==d)&&null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}
1239
+function p24createfolder(){setDialogMode(11,"Nueva carpeta",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}
1240
+function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"Eliminar",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1241
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"Rebautizar",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1242
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1243
+function p24uploadFile(){setDialogMode(11,"Subir archivo",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;
1244
+function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1245
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"Pegar",3,p24pasteFileEx,b)}
1246
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1247
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1248
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1249
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24filetable"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1250
+function getFileSizeStr(b){return 1==b?"1 byte":format("{0} bytes",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();
1251
+function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1252
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"Descargar archivo",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+a+" />"))}
1253
+function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1254
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1255
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"Subir archivo",10,p24uploadFileCancel,"<div id=p24dfileName>Configurando ...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1256
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1257
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1258
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1259
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1260
+function iderStart(b){if(!xxdialogMode){b="<div>Montar im\u00e1genes de disco en una computadora Intel® AMT - Experimental.</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+NoBreak("Disquete (.img)")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+NoBreak("CDROM (.iso)")+"</div></div>";setDialogMode(11,"Redireccionamiento de almacenamiento",
1261
+3,iderStart2,b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>En el pr\u00f3ximo arranque<option value=1>Agraciado<option value=2>Inmediato</select><div>Inicio de sesi\u00f3n</div></div>");b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=b.substring(1,b.length-1))}}
1262
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("Error de redireccionamiento de almacenamiento","Se debe seleccionar al menos un archivo de imagen de disco.");else if(1==Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("Error de redireccionamiento de almacenamiento","Archivo .img no v\u00e1lido");else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%2048)messagebox("Error de redireccionamiento de almacenamiento",
1263
+"Archivo .iso no v\u00e1lido");else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,Q("iderStartType").value)}}
1264
+function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1265
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1266
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"Servidor":"")+"Sesi\u00f3n IDE-R </b>, conectada,"+ider.m.bytesFromAmt+" en,"+ider.m.bytesToAmt+" fuera.")}var heatMapWidth=600,heatMapDividor={};
1267
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CDROM </b>, los bloques son {0} bytes.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b> Disquete </b>, los bloques son {0} bytes.",512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=
1268
+6*(Math.floor(a/(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1269
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"Redireccionamiento de almacenamiento",a?a:3,onIderDialogPromptOk,c.html)}
1270
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1271
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"Discapacitado",32769:"BIOS habilitado",32770:"OS habilitado",32771:"BIOS y SO habilitados"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1272
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1273
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1274
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1275
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1276
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="Discapacitado",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="Habilitado,"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("Detecci\u00f3n del entorno",addLink(c,"editEnvironmentDetection()"));
1277
+b+=TableEntry("Opciones de iniciaci\u00f3n del usuario",addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>Ninguna</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("Conexi\u00f3n iniciada por el usuario",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));c="<i>Ninguna</i>";
1278
+if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("Conexi\u00f3n iniciada por alerta",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>Ninguna</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,
1279
+"PolicyRuleName","Peri\u00f3dico");if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format(", cada {0} segundos",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("Conexi\u00f3n peri\u00f3dica",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Administre los servidores de administraci\u00f3n remota Intel® AMT.<br><br>";
1280
+if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>No se encontraron servidores remotos.</i></div><br>";else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>Administre los servidores proxy HTTP utilizados para las conexiones de administraci\u00f3n.<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,
1281
+0==c.length)b+="<div style=padding-left:15px><br><i>No hay proxies configurados.</i></div><br>";else for(d in c)b+="<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("Agregar servidor...","AddRemoteAccessServer()"),a&&(d+=AddButton("A\u00f1adir proxy ...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+
1282
+d);QH(58,b)}}var xxEditMpsPolicyType;
1283
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="Usuario iniciado");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(Ninguna)",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?" selected":"")+">"+
1284
+xxCiraServers[e].AccessInfo;c+="</select><div>Servidor primario</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Externo<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA - Interna</select><div>Tipo de MPS primario</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";
1285
+c+="<option value=-1>(Ninguna)";for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>Servidor secundario</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Externo<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA - Interna</select><div>Tipo secundario de MPS</div></div>")}e=
1286
+0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>Vida \u00fatil del t\u00fanel (segundos)</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">Periodico, intervalo de tiempo<option value=1"+
1287
+(1==a?" selected":"")+">Hora del d\u00eda, una vez al d\u00eda.",c+="</select><div>Tipo de disparador</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("{0} Conexi\u00f3n",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1288
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1289
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"Intervalo de activaci\u00f3n (segundos)":"Hora del d\u00eda (HH: MM)"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1290
+function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1291
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1292
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1293
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1294
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="Ingrese hasta 5 sufijos de dominio de intranet. Si la computadora est\u00e1 fuera de estos dominios, los puertos locales Intel® AMT se cerrar\u00e1n y las conexiones remotas del servidor estar\u00e1n activas.<br><br>");0==editEnvironmentDetectionTmp.length&&(c+="<i>Sin dominios de intranet, detecci\u00f3n de entorno deshabilitada.</i><br>");
1295
+for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Eliminar","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");
1296
+1==b?QH(69,c):setDialogMode(11,"Detecci\u00f3n de ambiente",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1297
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("Detecci\u00f3n de ambiente",format("Error al agregar servidor, estado {0}",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("Detecci\u00f3n de ambiente",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}
1298
+function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}
1299
+function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"T\u00fanel iniciado por el usuario",3,editUserInitiatedCiraDlg,b)}}
1300
+function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1301
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("Nombre de acceso",c.AccessInfo);c.Port&&(a+=addHtmlValue("Puerto",c.Port));c.CN&&(a+=addHtmlValue("Nombre com\u00fan",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,0<c.indexOf("Username")?(a+=addHtmlValue("tipo de autenticaci\u00f3n","Usuario y Pass / Server-Auth TLS"),a+=addHtmlValue("ID remota",
1302
+getInstance(xxMPSUserPass,c).RemoteID)):(a+=addHtmlValue("tipo de autenticaci\u00f3n","Certificado / Mutual-Auth TLS"),c=getInstance(xxCertificates,c),a+=addHtmlValue("Nombre del certificado",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Servidor remoto #"+(b+1),c,showServerDetailsOk,a)}
1303
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1304
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}function showServerDetailsOk2(b,c,a,d){408==d?messagebox("Remoci\u00f3n remota del servidor","No se puede eliminar el servidor, acceso denegado."):PullRemoteAccess()}function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1305
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("Nombre de acceso",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("DNS suffex",c.NetworkDnsSuffix),a=a+addHtmlValue("Tipo de proxy",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"HTTP Proxy #"+(b+1),c,showProxyDetailsOk,a,b)}
1306
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("Eliminaci\u00f3n de proxy HTTP","No se puede eliminar el proxy HTTP, acceso denegado."):PullRemoteAccess()}
1307
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>Nombre de host FQDN<option value=3>Direcci\u00f3n IPv4<option value=4>Direcci\u00f3n IPv6</select><div>Tipo de conecci\u00f3n</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>Puerto</div></div>';b+=
1308
+"<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>Sufijo DNS</div></div>";setDialogMode(11,"Agregar proxy HTTP",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1309
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN / nombre de host","Direcci\u00f3n IPv4","Direcci\u00f3n IPv6"][Q("d2type").value])}
1310
+function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("Agregar servidor proxy","Error al agregar proxy, estado"+d):0!=a.Body.ReturnValue?messagebox("Agregar servidor proxy",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1311
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>Nombre de host FQDN<option value=3>Direcci\u00f3n IPv4</select><div>Tipo de conecci\u00f3n</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";
1312
+a+='<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>Puerto de servicio</div></div>';a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Nombre com\u00fan del servidor</div></div>";a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";
1313
+0<b.length&&(a+="<option value=1>Certificado");a+="<option value=2>Usuario Contrase\u00f1a</select><div>Tipo de autenticaci\u00f3n</div></div>";a+="<span id=d2utype>";a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Nombre de usuario</div></div>";a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Contrase\u00f1a segura</div></div>";a+="</span>";a+="<span id=d2ctype>";
1314
+a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>Certificado</div></div></span>";setDialogMode(11,"Agregar servidor remoto",3,AddRemoteAccessServerOk,a);AddRemoteAccessServerUpdate()}
1315
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+Q("d2cert").value+
1316
+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1317
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("Agregar servidor de Internet",format("Error al agregar servidor, estado {0}",d)):0!=a.Body.ReturnValue?messagebox("Agregar servidor de Internet",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1318
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"Nombre de host":"Direcci\u00f3n IPv4");QV("d2utype",2==Q("d2auth").value);
1319
+QV("d2ucn",3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1320
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>Nombre y dominio</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+(b?"selected":"")+'>Compartido, igual que el sistema operativo<option value="false" '+
1321
+(b?"":"selected")+">Dedicado, diferente del sistema operativo</select><div>Nombre compartido</div></div>");setDialogMode(11,"Nombre de la computadora",3,editNameDlgOk,c)}}
1322
+function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}
1323
+function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"Cliente DNS din\u00e1mico",3,showEditDnsDlgOk)}}
1324
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1325
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"Funciones Intel® AMT",3,featuresDlgOk))}
1326
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("Error","RedirectionService, RequestStateChange Error"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,0,function(a,c,d,e){200!=e?messagebox("Error","KVMRedirectionSAP, RequestStateChange Error"+
1327
+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("Error","RedirectionService PUT Error"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}
1328
+function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"Consentimiento del usuario",3,consentDlgOk)}}
1329
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="Direcci\u00f3n local del enlace;Direcci\u00f3n local de red;Direcci\u00f3n global;Usuario configurado;No permitido;DAD en progreso;v\u00e1lido;obsoleto;preferido / en desuso;Caducado;colisi\u00f3n;No permitido".split(";");
1330
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+","+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"Direcciones IPv6 para interfaz cableada":"Direcciones IPv6 para interfaz inal\u00e1mbrica",1,null,a+TableEnd())}}
1331
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 deshabilitado");QH("d21l1","IPv6 habilitado, autom\u00e1tico");QH("d21l2","IPv6 habilitado, autom\u00e1tico + direcci\u00f3n manual");d21o0.checked=!c;d21o1.checked=
1332
+c&&!ipv6manual;d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"Soporte IPv6 para interfaz cableada":"Compatibilidad con IPv6 para interfaz inal\u00e1mbrica",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1333
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1334
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1335
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1336
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1337
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Soporte IPv6",format("No se puede establecer el estado de IPv6, error {0}",d))}
1338
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"Respuesta Intel® AMT Ping",3,showPingActionDlgOk)}}
1339
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1340
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","Configuraci\u00f3n autom\u00e1tica con servidor DHCP");QH("d21l2","Configuraci\u00f3n est\u00e1tica usando la configuraci\u00f3n de IPv4 a continuaci\u00f3n");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=
1341
+!d21o1.checked;c30.value=isIpAddress(b.IPAddress,"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"Configuraciones IPv4",3,showIPSetupDlgOk)}}
1342
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6 habilitado, autom\u00e1tico + direcci\u00f3n manual"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1343
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1344
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Configuraciones IPv4",format("No se pueden establecer los par\u00e1metros de red, error {0}",d))}amtPowerBootCapabilities=null;function showPowerActionDlg(){xxdialogMode||(statusbox("Acciones de poder","Comprobando capacidades ..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1345
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","Encender",2);b&1&&(addOption("d5actionSelect","Reiniciar",10),addOption("d5actionSelect","Ciclo de poder",5),addOption("d5actionSelect","Corriente cortada",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect","Encendido al diagn\u00f3stico",
1346
+300),b&1&&addOption("d5actionSelect","Restablecer a diagn\u00f3stico",301));9<amtversion&&b&1&&(addOption("d5actionSelect","OS Wake desde Standby",500),addOption("d5actionSelect","Ahorro de energ\u00eda del sistema operativo",501),addOption("d5actionSelect","Soft-off",12),addOption("d5actionSelect","Reinicio suave",14),addOption("d5actionSelect","Dormir",4),addOption("d5actionSelect","Hibernar",7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&addOption("d5actionSelect","Encienda el BIOS",100),b&1&&
1347
+addOption("d5actionSelect","Restablecer a BIOS",101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","Encender para borrar de forma segura",104),b&1&&addOption("d5actionSelect","Restablecer a borrado seguro",105));b&1&&addOption("d5actionSelect","Restablecer al disquete IDE-R",200);b&2&&addOption("d5actionSelect","Encienda el disquete IDE-R",201);b&1&&addOption("d5actionSelect","Restablecer a IDE-R CDROM",202);b&2&&addOption("d5actionSelect","Encienda el CDROM IDE-R",203);
1348
+b&1&&addOption("d5actionSelect","Restablecer a PXE",400);b&2&&addOption("d5actionSelect","Encender a PXE",401);addOption("d5actionSelect","Acci\u00f3n personalizada ...",999);5<amtversion&&addOption("d5actionSelect","Consentimiento del usuario ...",998);setDialogMode(5,"Acciones de poder",3,powerActionDlgCheck)}else messagebox("Acci\u00f3n de poder",format("No se pueden obtener las capacidades del sistema, error {0}",d))}
1349
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Acci\u00f3n de poder completada."):QH(66,format("Error de acci\u00f3n de energ\u00eda # {0}.",e));setDialogMode(1,"Acci\u00f3n de poder",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="\u00bfConfirmar la ejecuci\u00f3n de Intel® Remote Secure Erase?<br>Ingrese la contrase\u00f1a de borrado seguro si es necesario.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>Contrase\u00f1a</div></div><br><div style=color:red><b> ADVERTENCIA: </b> Esto borrar\u00e1 los datos del sistema remoto.</div>",
1350
+rsepass=1,setDialogMode(11,"Acciones de poder",3,powerActionDlg,b)):powerActionDlg()}
1351
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("Acci\u00f3n de poder","Comprobando estado ...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&(c=!1);c?amtstack.Get("IPS_OptInService",
1352
+powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1353
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1354
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1355
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"Acci\u00f3n de poder personalizada",
1356
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1357
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Acci\u00f3n de poder completada."):QH(66,format("Error de acci\u00f3n de energ\u00eda # {0}.",e));setDialogMode(1,"Acci\u00f3n de poder",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=
1358
+Q("d24BiosSecureBoot").checked,AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=
1359
+Q("d24LockSleepButton").checked,AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),statusbox("Acci\u00f3n de poder","Comprobando estado ..."),
1360
+amtstack.Get("IPS_OptInService",powerActionResponse0,0,1))}
1361
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("Acci\u00f3n de poder",format("Error # {0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"Consentimiento del usuario",11,powerActionSendConsent),checkConsentDisplay(),consentChanged()):(statusbox("Acci\u00f3n de poder","Iniciando opt-in ..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,0,1)):
1362
+connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Consentimiento del usuario","El consentimiento del usuario no es necesario."):(statusbox("Acci\u00f3n de poder","Obteniendo la configuraci\u00f3n de arranque ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1363
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Acci\u00f3n de poder",format("Error #",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Error de consentimiento del usuario",a.Body.ReturnValueStr.replace(/_/g," ")):(d6ConsentText.value="",setDialogMode(6,"Consentimiento del usuario",11,powerActionSendConsent),checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",
1364
+function(a,b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1365
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("Acci\u00f3n de poder","Enviando consentimiento del usuario ..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1366
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("Acci\u00f3n de poder",format("Error # {0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Consentimiento del usuario","Consentimiento del usuario exitoso."):(statusbox("Acci\u00f3n de poder","Comprobando estado ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1367
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("Acci\u00f3n de poder",format("Error # {0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=AvdPowerDlg.IDERBootDevice,e.LockKeyboard=
1368
+AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&(e.RSEPassword=
1369
+AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,!0===e.SecureErase&&
1370
+0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("Acci\u00f3n de arranque: "+b);console.log("Configuraci\u00f3n de arranque: "+ObjectToString2(e));statusbox("Acci\u00f3n de poder","Establecer la configuraci\u00f3n de arranque ...");
1371
+amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,function(a,b,c,d){200!=d?messagebox("Acci\u00f3n de poder",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1372
+function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("Acci\u00f3n de poder",format("PONER AMT_BootSettingData, Error # {0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("Acci\u00f3n de poder","Configurando el pr\u00f3ximo arranque ..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1373
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1374
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1375
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("Acci\u00f3n de poder","Realizando acci\u00f3n de poder ...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);targetPowerAction=
1376
+b;11==b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("Acci\u00f3n de poder","Siguiente conjunto de acciones de arranque.")}}function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"Acci\u00f3n de poder completada."),setDialogMode(1,"Acci\u00f3n de poder",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}
1377
+function powerActionResponse5(b,c,a,d){}function consentChanged(){QE("c49",6==d6ConsentText.value.length)}function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1378
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1379
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1380
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1381
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Administre el almacenamiento Intel® AMT para esta computadora.<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+
1382
+" / "+r):e+"Ra\u00edz";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("Descargar","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" bytes</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==
1383
+n&&(wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>No se encontraron archivos.</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+
1384
+(q?AddButton("Subir...","UploadToStorage()"):""));QH(61,a)}else QH(61,"No se pueden cargar los datos de almacenamiento ...<br/>"+AddButton("Actualizar","PullStorage()"))}
1385
+function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("Vendedor",b));""!=c&&(e+=addHtmlValue("Solicitud",c));e+=addHtmlValue("Nombre",a);e+=addHtmlValue("Talla",q.size+" bytes");q.link&&(e+=addHtmlValue("Enlace",q.link));setDialogMode(11,"Art\u00edculo de almacenamiento",5,showStorageDetailsEx,e,d)}}function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}
1386
+function storageDeleteResponse(b,c){200!=c?messagebox("Almacenamiento",format("No se puede eliminar el archivo (ERR {0}), verifique que la computadora est\u00e9 encendida.",c)):PullStorage()}function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}
1387
+function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}
1388
+function PushToStorageResponse(b,c,a){200!=c?messagebox("Almacenamiento",format("No se puede enviar el archivo (ERR {0}), verifique que la computadora est\u00e9 encendida.",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1389
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>Seleccione un archivo peque\u00f1o para cargar al almacenamiento e ingrese un proveedor, una aplicaci\u00f3n y un nombre de archivo.<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>Subir archivo</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+
1390
+'<br><div style=height:16px><input id=mstoragevendor placeholder="Vendedor" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>Nombre del vendedor</div></div>';a+='<br><div style=height:16px><input id=mstorageapplication placeholder="App" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>Nombre de la aplicaci\u00f3n</div></div>';a+='<br><div style=height:16px><input id=mstoragefilename placeholder="Nombre del archivo" maxlength=11 style=float:right;width:240px><div>Nombre del archivo</div></div>';
1391
+a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>Tipo de Mimica</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="Si est\u00e1 configurado, crea un enlace a este contenido desde la p\u00e1gina web principal">Enlace</div></div><br>';a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';
1392
+a+="</datalist>";a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"Carga de almacenamiento",3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}
1393
+function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1394
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1395
+b}
1396
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1397
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1398
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," dias").replace("H"," horas").replace("M"," minutos");b=b.replace(" 1 d\u00eda"," 1 d\u00eda").replace(" 1 hora"," 1 hora").replace(" 1 minuto"," 1 minuto");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1399
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gestionar alarmas de despertador.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, despertar en "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," a"),void 0!=d[c].Interval&&(a+=" y cada"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&(a+=", eliminar cuando haya terminado"),
1400
+b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("Editar...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>No hay alarmas de despertador registradas.</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("Eliminar todas las alarmas","RemoveAllAlarms()")+
1401
+AddButton("A\u00f1adir","showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1402
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1403
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"Eliminar todas las alarmas de activaci\u00f3n",3,RemoveAllAlarmsEx,"\u00bfConfirmar la eliminaci\u00f3n de todas las alarmas de activaci\u00f3n?")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1404
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1405
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1406
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"Agregar nueva alarma",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1407
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1408
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("Agregar alarma",format("No se pudo agregar la alarma. Estado: {0}. <br/> Verifique que la alarma sea para un tiempo futuro.",d)):0!=c.Body.ReturnValue?messagebox("Agregar alarma",format("No se pudo agregar la alarma {0}. <br/> Verifique que la alarma sea para un tiempo futuro.",
1409
+c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("Editar alarma",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1410
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("Nombre",c.ElementName)+addHtmlValue("Hora de despertarse",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("Interno",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("Despues de despertar",1==c.DeleteOnCompletion?"Eliminar alarma":"Mantener alarma")+"</div>";messagebox(format("Alarma {0}",c.ElementName),a);setDialogMode(11,
1411
+"Alarma"+c.ElementName,5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"Ejecutar gui\u00f3n",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1412
+function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1413
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1414
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("Ejecutar gui\u00f3n",
1415
+"Archivo de script no v\u00e1lido")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1416
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1417
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1418
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1419
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1420
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("Editar {0}",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1421
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1422
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1423
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1424
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1425
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1426
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1427
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1428
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1429
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1430
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1431
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1432
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1433
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1434
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1435
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1436
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1437
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1438
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"Archivo binario,"+script_BlockScript[c].vars[d].value.length+" bytes":"No establecido");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+="<tr><td style=height:3px></table>"}b+=
1439
+"</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">Comience su secuencia de comandos arrastrando y soltando bloques desde el lado izquierdo en este cuadro de secuencias de comandos.<div>');QH("scriptblocks",b+"<div style=height:80px></div>");for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1440
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1441
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}
1442
+function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"Nuevo gui\u00f3n",3,script_newScriptDlgOk,"<br>Restablecer y borrar el editor de script?")}function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1443
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("Error de compilaci\u00f3n de script",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","Detenido");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,_mode:"Firmware"}),editscriptstate.wsstack=wsstack,
1444
+editscriptstate.amtstack=amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}
1445
+function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["Detenido","Corriendo","Pausado"];
1446
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="Detenido, sin gui\u00f3n";b&&null!=b&&(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,b.ip)));50<c.length&&(c=c.substring(0,
1447
+50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1448
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"Bloque de guiones",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1449
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1450
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1451
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1452
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1453
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1454
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1455
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}var httpErrorTable={200:"Okay",401:"Error de autenticaci\u00f3n",408:"Error de tiempo de espera",601:"Error de an\u00e1lisis de WSMAN",602:"No se puede analizar el encabezado de respuesta HTTP",603:"Respuesta inesperada de enumeraci\u00f3n HTTP",604:"Respuesta de extracci\u00f3n HTTP inesperada",997:"Reino de resumen inv\u00e1lido"};
1456
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("Error # {0}",b)),401==b&&QH(5,'Error de autenticaci\u00f3n<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1457
+function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1458
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1459
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1460
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("Error de llamada",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}
1461
+function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}
1462
+function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="Actualizar" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}
1463
+function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}
1464
+function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}
1465
+function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1466
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1467
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1468
+</script>
\ No newline at end of file
public/commander-fr.htm
new
+1474
@@ -0,0 +1,1474 @@
1
+<!DOCTYPE html><html lang="fr" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAEZ0FNQQAAsY58+1GTAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAMISURBVHjadJPPb9t0GMY//rbJaEKSxoPFQQ1WxhQ7RaGoIDEpTBMqgk7iBvwNKJdJXDnssEMl7pMGfwOH9YBYh0AglYiBBNKa0cSGNpiRxs7aJE2aH7aTmkPXqTvwXt7L8z56pef5SEEQcHYMwyjWarX3rLr1tu3YOQAlpZhqVv1J1/VvNU0rn9VLpwbtdlspb5ZLNdNcuZBKF1NKmuS8DECn28axm7ScZlnP5b4vXinelmXZfmrQbreVjbsbN3r9YSmTLbA/Ps92K8FgFAbAdYcsLXRRk10af/9BPBa5vXpt9aYsy7YAKG+WS73+sJS+eJmKneZe5QWEiHHreoJb1xNEInHu/Bzw3cM45zNv0usPS+XNcglAGIZRrJnmSiZbYOtRhF93ZvHcHoPRlN3GkL4Ho5HHeOxRqbv8sHVM+uVFaqa5YhhGUVpfXw+6hwP86DJ3fgkzK44hOGZuLkH7KIQIxuw9dkk812Hqu0wmPh9djZIKG8wnogirbpFS0jy0YOqPcMcurjvh3Vc7fPHpHF9//iLLyja75p/sNWxazj73t9qklDRW3ULYjk1yXmb3Xw/P9fA9n35/AMD0yAIgGQ8zOtxnMhFM/ClG/YjkvIzt2Mye5un5Lr4HY9el5RwA2tOsY9FzCCFBICCYOdlPRigphU63jZKEwWDAweMDJt7kmXINBhOkIEAQQiLMpczzJzcpBaFmVRy7iZ4RdA/7TKcBknTymOd5APT6PiAhghlmpHO8ocdw7CZqVkXour7Ycppriwsuy7koEgKQANDy+dPCIokQkhTiciFG4aJPy2mu6bq+OKtpWlXPmZWGtc2H77yOhOD+gxE7//T45sdHzEjQ7Y0IgmPeKszxwdUwTuM39Fyuomla9bTKyY27Gx/3+sMvlYU8lXqI36sef+1UkCS4pMZZyuu89oqL09gmHot8snpt9StZljtnYUqWN8vv10yzcCGV/ux/YFrTc7lK8UrxnizLnWdoPINzvlarLVl1K2879ktPcN5Ts2pV1/UHmqZVz+r/GwBWYYCoNUz0KwAAAABJRU5ErkJggg==");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=Relier onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>Débranché</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>État du système</a><p id=go14 class=nav1 onclick=go(14)><a>Bureau à distance</a><p id=go24 class=nav1 onclick=go(24)> <a>Des dossiers</a><p id=go13 class=nav1 onclick=go(13)><a>Série sur LAN</a><p id=go2 class=nav1 onclick=go(2)><a>Informations matériel</a><p id=go6 class=nav1 onclick=go(6)><a>Journal des événements</a><p id=go15 class=nav1 onclick=go(15)><a>Journal d'audit</a><p id=go21 class=nav1 onclick=go(21)><a>Espace de rangement</a><p id=go8 class=nav1 onclick=go(8)><a>Paramètres réseau</a><p id=go17 class=nav1 onclick=go(17)><a>Paramètres Internet</a><p id=go16 class=nav1 onclick=go(16)><a>Paramètres de sécurité</a><p id=go19 class=nav1 onclick=go(19)><a>Présence d'agent</a><p id=go18 class=nav1 onclick=go(18)><a>Défense du système</a><p id=go11 class=nav1 onclick=go(11)><a>Comptes utilisateur</a><p id=go22 class=nav1 onclick=go(22)><a>Abonnements</a><p id=go23 class=nav1 onclick=go(23)><a>Alarmes de réveil</a><p id=go20 class=nav1 onclick=go(20)><a>Éditeur de script</a><p id=go12 class=nav1 onclick=go(12)><a>Navigateur WSMAN</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value="Carte du disque" onclick=iderToggleDiskMap()><input type=button value="Arrêter la session IDE-R" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>Disquette, les blocs font 512 octets.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CD-ROM, les blocs font 2048 octets.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="Arrêter le script" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>Script en cours d'exécution</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>Le firmware de cet ordinateur doit être mis à jour, <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>veuillez vérifier ici</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>Chargement...</h1></div><div id=p1 style=display:none><h1>État du système</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>Informations matériel</h1><span id=18></span></div><div id=p6 style=display:none><h1>Journal des événements</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>Paramètres réseau</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>Comptes utilisateur</h1><span id=23></span></div><div id=p12 style=display:none><h1>Navigateur WSMAN</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=Requete style=margin:4px onclick=wsmanQuery()><input type=button value=Clair style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=Filtre style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Terminal série sur LAN</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Le port de redirection Intel® AMT ou la fonction série sur LAN est désactivé<span id=28>, cliquez ici pour l'activer.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>L'ordinateur distant n'est pas sous tension, cliquez ici pour lancer une commande d'alimentation.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Actions de puissance ..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="Démarrer l'opération de montage de disque à distance" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Commencer la capture" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=Relier onclick=connectTerminal(event) disabled="disabled"> <span id=31>Débranché.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR + LF" title="Inverser ce que la touche retour enverra" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="Basculer la taille du terminal" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Intel (F10 = ESC + [OM)" title="Basculer le type d'émulation des touches F1 à F10" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Ascii étendu" title="Basculer le type d'émulation de terminal" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value="Retour arrière" onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=Pâte disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>Bureau à distance</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Le port de redirection Intel® AMT ou la fonctionnalité KVM est désactivé<span id=43>, cliquez ici pour l'activer.</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>L'ordinateur distant n'est pas sous tension, cliquez ici pour lancer une commande d'alimentation.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="Tourne à gauche" onclick=drotate(-1)>↺</div><div class=rb title="Tourner à droite" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="Basculer en mode plein écran" onkeypress="return false" onkeydown="return false" value=Plein onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="Enregistrer une capture d'écran du bureau distant" onkeypress="return false" onkeydown="return false" value=Sauver... onclick=deskSaveImage() style=margin-right:3px><input type=button value=Réglages... title="Modifier les paramètres du bureau distant" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="Démarrer l'opération de montage de disque à distance" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="Modifier l'état d'alimentation de la machine distante" onkeypress="return false" onkeydown="return false" value="Actions de puissance ..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=Relier onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>Débranché.</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>Gagner<option value=1>Win + Down<option value=2>Gagnez +<option value=3>Win + L<option value=4>Win + M<option value=20>Win + R<option value=23>Gagner + Gauche<option value=24>Win + Right<option value=5>Maj + Win + M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=Envoyer onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Suppr onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=Type onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>Écran blanc </span><span id=53><input id=54 type=checkbox>Voir seulement </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>Journal d'audit</h1><span id=56></span></div><div id=p16 style=display:none><h1>Paramètres de sécurité</h1><span id=57></span></div><div id=p17 style=display:none><h1>Paramètres Internet</h1><span id=58></span></div><div id=p18 style=display:none><h1>Défense du système</h1><span id=59></span></div><div id=p19 style=display:none><h1>Présence d'agent</h1><span id=60></span></div><div id=p20 style=display:none><h1>Éditeur de script</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>Arrêté</div><div><input type=button value="Editeur de vues" title="Passer à la vue de l'éditeur de ligne de script" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="Générateur de vues" title="Passer à la vue de l'éditeur de blocs" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=Nouveau... title="Effacer l'éditeur de script" onclick=script_newScriptDlg()><input type=button value=Charge... title="Charger un script à partir d'un fichier" onclick=script_runScriptDlg()><input type=button value=Sauver... title="Enregistrer un script dans un fichier" onclick=script_saveScript(event)><input type=button value=Redémarrer title="Compilez le script et préparez-vous à l'exécuter dès le début" onclick=resetScriptButton()><input type=button value=Continuer title="Exécutez le script à partir du point d'exécution actuel" onclick=runScriptButton()><input type=button value=Pause title="Suspendre l'exécution du script" onclick=breakScriptButton()><input type=button value=Étape title="Exécutez une étape du script" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>Générateur de scripts</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="Blocs filtrants ..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>Scénario</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>Script compilé</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>Variables</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>Console</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>Espace de rangement</h1><span id=61></span></div><div id=p22 style=display:none><h1>Abonnements aux événements</h1><span id=62></span></div><div id=p23 style=display:none><h1>Alarmes de réveil</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>Des dossiers</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value="En haut"> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="Tout sélectionner" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=Renommer onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=Supprimer onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="Nouveau dossier" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=Télécharger onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=Couper onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=Copie onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=Pâte onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=Rafraîchir onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">Trier par nom<option value=2>Trier par taille<option value=3>Trier par date<option value=4>Descendre par nom<option value=5>Descendre par taille<option value=6>Descendre par date</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>Nom d'utilisateur</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Mot de passe*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Confirmez le mot de passe</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>Local<option value=1>Réseau<option value=2>Tout</select><div>Autorisation</div></div><div>Autorisations accordées</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>* 8 caractères minimum avec majuscules, minuscules, 0-9 et l'un des! @ # $% ^ & * () + -</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>Action de puissance</div></div><div><span style=color:red>Attention:</span>Certaines actions d'alimentation peuvent entraîner une perte de données et déconnecter les sessions de redirection du bureau, du terminal ou du disque.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>Code de consentement</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>Affichage principal<option value=1>Affichage secondaire<option id=d6ThirdDisplay value=2 style=display:none>Troisième affichage</select><div>Affichage du consentement</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, couleur<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>Encodage d'image</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>Afficher le curseur de la souris locale</label><br><label><input type=checkbox id=d7showcad>Afficher Ctrl-Alt-Suppr</label><br><label><input type=checkbox id=d7limitFrameRate>Taux de trame limite</label><br><label><input type=checkbox id=d7noMouseRotate>Ne faites pas tourner la souris</label><br></div><div>Autres réglages</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">Logiciel KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>dix%<option value=5>5%<option value=1>1%</select><div style=height:20px>Qualité</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87,5%<option value=768>75%<option value=640>62,5%<option value=512>50%<option value=384>37,5%<option value=256>25%<option value=128>12,5%</select><div style=height:20px>Mise à l'échelle</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=administrateur style=float:right;width:220px><div style=height:20px>Nom d'utilisateur</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>Mot de passe</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>Port de redirection</label><label id=c15 style=display:block><input type=checkbox id=c16>Bureau à distance KVM</label><label style=display:block><input type=checkbox id=c17>IDE-Redirection<br></label><label style=display:block><input type=checkbox id=c18>Série sur LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>Non requis<br></label><label><input type=radio name=d10 id=c20 value=1>Requis pour KVM uniquement<br></label><label><input type=radio name=d10 id=c21 value=4294967295>Toujours requis<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="32 caractères maximum"><div title="32 caractères maximum">Nom de profil</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="32 caractères maximum"><div title="32 caractères maximum">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>Priorité</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>Authentification</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>Aucun</select><div>Chiffrement</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Longueur entre 8 et 63 caractères"><div title="Longueur entre 8 et 63 caractères">Mot de passe*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Longueur entre 8 et 63 caractères"><div title="Longueur entre 8 et 63 caractères">Confirmez le mot de passe</div></div></div><div id=dialog19 style=margin:auto;margin:3px>Cela enregistrera l'intégralité de l'état d'Intel® AMT pour cette machine dans un fichier. Les mots de passe ne seront pas enregistrés, mais certaines données sensibles peuvent être incluses.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>désactivé<br><input type=radio name=d20 id=d20b value=1>Réponse ICMP<br><input type=radio name=d20 id=d20c value=2>Réponse RMCP<br><input type=radio name=d20 id=d20d value=3>Réponse ICMP et RMCP<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>Synchronisation de l'adresse IP du système d'exploitation</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>adresse IP</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Marque de sous-réseau</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>passerelle</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>DNS principal</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>DNS alternatif</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>désactivé<option value=1>Désactivé, mise à jour DHCP<option value=2>Activée</select><div>Client DNS dynamique</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>Intervalle de mise à jour (minutes)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (secondes)</div></div><div style=font-size:10px><br>L'intervalle par défaut est de 1440 minutes, le TTL par défaut est de 900 secondes.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>Power up<option value=10>Réinitialiser<option value=5>Cycle de puissance<option value=8>Éteindre<option id=d24p500 value=500>Réveil du système d'exploitation en veille<option id=d24p501 value=501>Économie d'énergie du système d'exploitation<option value=999>Définir les options de démarrage</select><div>Commande à distance</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>Pause du BIOS</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>Appliquer le démarrage sécurisé</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>Configuration du BIOS</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>Forcer les événements de progression</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>Verrouiller le bouton d'alimentation</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>Verrouiller le bouton de réinitialisation</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>Verrouiller le bouton de veille</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>Verrouiller le clavier</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>Contournement du mot de passe du BIOS</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>Reflasher le BIOS</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>Mode sans échec</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>Utiliser IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Série sur LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>Effacement sécurisé à distance Intel®</label><br></div></div><div>Paramètres de démarrage</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Aucun<option id=ForceDVDBootOption value=1>Forcer le démarrage du CD / DVD<option id=ForcePXEBootOption value=2>Forcer le démarrage PXE<option id=ForceHDBootOption value=3>Forcer l'amorçage du disque dur<option id=ForceDiagBootOption value=4>Forcer le démarrage du diagnostic</select><div>Source de démarrage</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Aucun<option value=1>Index 1<option value=2>Index 2<option value=3>Index 3<option value=3>Index 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Boot to floppy<option value=1>Démarrage sur CD-ROM</select><div>Périphérique de démarrage IDER</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Défaut du système<option id=c45 value=1>Silencieux<option id=c46 value=2>Verbeux<option id=c47 value=3>Écran blanc</select><div>Verbocity</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>Mot de passe RSE</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>Nom de l'alarme</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Date de réveil (année-mois-jour)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>Heure de réveil (heure: min: sec)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Intervalle (jours-heures-min)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>Gardez l'alarme<option value=1>Supprimer à la fin</select></div><div style=padding-top:4px>Après le réveil</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=Annuler style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value="D'accord" style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=Supprimer style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"Donn\u00e9es invalides":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",
92
+v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"Agent de surveillance"+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... chang\u00e9 en"+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"Intrusion de cas";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"Une session Serial Over LAN distante a \u00e9t\u00e9 \u00e9tablie.";if(1==c[2])return"La session Serial Over LAN \u00e0 distance est termin\u00e9e. Le contr\u00f4le utilisateur a \u00e9t\u00e9 restaur\u00e9.";
93
+if(2==c[2])return"Une session IDE-Redirection distante a \u00e9t\u00e9 \u00e9tablie.";if(3==c[2])return"Session IDE-Redirection distante termin\u00e9e. Le contr\u00f4le utilisateur a \u00e9t\u00e9 restaur\u00e9."}if(36==a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="c\u00e2bl\u00e9"),4294967293==a?"Tous les filtres de paquets re\u00e7us ont \u00e9t\u00e9 mis en correspondance sur"+b+" interface.":4294967292==a?"Tous les filtres de paquets sortants ont \u00e9t\u00e9 mis en correspondance sur"+
94
+b+" interface.":4294967290==a?"Le filtre de paquets usurp\u00e9 a \u00e9t\u00e9 mis en correspondance sur"+b+" interface.":"Filtre"+a+" a \u00e9t\u00e9 appari\u00e9 sur"+b+" interface.";if(192==a)return 0==c[2]?"Politique de s\u00e9curit\u00e9 invoqu\u00e9e. Une partie ou la totalit\u00e9 du trafic r\u00e9seau (TX) a \u00e9t\u00e9 arr\u00eat\u00e9e.":2==c[2]?"Politique de s\u00e9curit\u00e9 invoqu\u00e9e. Une partie ou la totalit\u00e9 du trafic r\u00e9seau (RX) a \u00e9t\u00e9 arr\u00eat\u00e9e.":
95
+"Politique de s\u00e9curit\u00e9 invoqu\u00e9e.";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"Demande de connexion \u00e0 distance par l'utilisateur.";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"Erreur EAC: essayez d'obtenir la posture alors que NAC dans Intel\ufffd AMT est d\u00e9sactiv\u00e9.";if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"Erreur HWA: erreur g\u00e9n\u00e9rale"}return 6==a?"Authentification \u00e9chou\u00e9e"+(c[1]+(c[2]<<8))+" fois. Le syst\u00e8me peut \u00eatre attaqu\u00e9.":
96
+30==a?"Pas de support de d\u00e9marrage":32==a?"Blocage du syst\u00e8me d'exploitation ou interruption d'alimentation":35==a?"\u00c9chec de d\u00e9marrage du syst\u00e8me":37==a?"Le microprogramme du syst\u00e8me a d\u00e9marr\u00e9 (au moins un processeur s\u2019ex\u00e9cute correctement).":"Type de capteur inconnu #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=
97
+null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+g)),g=10+g);2==b.InitiatorType&&
98
+(b.Initiator="<i>Local</i>",g=5);3==b.InitiatorType&&(b.Initiator="<i>Port par d\u00e9faut KVM</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],e]);else r[0](l,e,d)}}var l=
99
+{};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/","http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),
100
+b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},
101
+0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?
102
+(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=
103
+function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
104
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
105
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
106
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
107
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
108
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
109
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
110
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
111
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
112
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
113
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
114
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
115
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
116
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
117
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
118
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
119
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
120
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
121
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
122
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
123
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
124
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
125
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
126
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
127
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
128
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
129
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
130
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
131
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
132
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
133
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
134
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
135
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
136
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
137
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
138
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
139
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
140
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
141
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
142
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
143
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
144
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
145
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
146
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
147
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
148
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
149
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
150
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
151
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
152
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
153
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
154
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="Non sp\u00e9cifi\u00e9. ; Aucune m\u00e9moire syst\u00e8me n'est physiquement install\u00e9e dans le syst\u00e8me. ; Aucune m\u00e9moire syst\u00e8me utilisable, toute la m\u00e9moire install\u00e9e a rencontr\u00e9 une d\u00e9faillance irr\u00e9cup\u00e9rable. ; D\u00e9faillance irr\u00e9cup\u00e9rable du disque dur / ATAPI / IDE. ; D\u00e9faillance irr\u00e9cup\u00e9rable de la carte syst\u00e8me. ; Disquette irr\u00e9cup\u00e9rable \u00e9chec du sous-syst\u00e8me. ; \u00c9chec du contr\u00f4leur de disque dur irr\u00e9cup\u00e9rable. ; \u00c9chec du clavier PS / 2 ou USB irr\u00e9cup\u00e9rable. ; Support de d\u00e9marrage amovible introuvable. ; \u00c9chec du contr\u00f4leur vid\u00e9o irr\u00e9cup\u00e9rable. ; Aucun p\u00e9riph\u00e9rique vid\u00e9o d\u00e9tect\u00e9. ; Corruption de la ROM du micrologiciel (BIOS) d\u00e9tect\u00e9e. ; Inad\u00e9quation de la tension du processeur (les processeurs qui partagent la m\u00eame alimentation ont des exigences de tension non adapt\u00e9es) ; \u00c9chec de correspondance de la vitesse du processeur".split(";"),
155
+h="Non sp\u00e9cifi\u00e9. ; Initialisation de la m\u00e9moire. ; D\u00e9marrage de l'initialisation et du test du disque dur ; Initialisation du ou des processeurs secondaires ; Authentification de l'utilisateur ; Configuration du syst\u00e8me lanc\u00e9e par l'utilisateur ; Configuration des ressources USB ; Configuration des ressources PCI ; Initialisation de la ROM optionnelle ; Initialisation de la vid\u00e9o ; Initialisation du cache ; SM Initialisation du bus ; Initialisation du contr\u00f4leur de clavier ; Initialisation du contr\u00f4leur de gestion / contr\u00f4leur int\u00e9gr\u00e9 ; Fixation de la station d'accueil ; Activation de la station d'accueil ; \u00c9jection de la station d'accueil ; D\u00e9sactivation de la station d'accueil ; Appel du vecteur de r\u00e9veil du syst\u00e8me d'exploitation ; D\u00e9marrage du processus de d\u00e9marrage du syst\u00e8me d'exploitation ; Initialisation de la carte m\u00e8re ou de la carte m\u00e8re ; r\u00e9serv\u00e9 ; Initialisation de la disquette ; Test du clavier ; Test du dispositif de pointage ; Initialisation du processeur principal".split(";"),
156
+g="Non sp\u00e9cifi\u00e9 ; Autre ; Inconnu ; Processeur ; Disque ; P\u00e9riph\u00e9rique ; Module de gestion du syst\u00e8me ; Carte syst\u00e8me ; Module de m\u00e9moire ; Module processeur ; Alimentation \u00e9lectrique ; Ajouter dans la carte ; Carte du panneau avant ; Carte du panneau arri\u00e8re ; Carte du syst\u00e8me d'alimentation ; Fond de panier du lecteur ; Expansion interne du syst\u00e8me carte ; Autre carte syst\u00e8me ; Carte processeur ; Unit\u00e9 d'alimentation ; Module d'alimentation ; Carte de gestion de l'alimentation ; Carte du panneau arri\u00e8re du ch\u00e2ssis ; Ch\u00e2ssis syst\u00e8me ; Ch\u00e2ssis secondaire ; Autre carte de ch\u00e2ssis ; Baie d'unit\u00e9 de disque ; Baie p\u00e9riph\u00e9rique ; Baie de p\u00e9riph\u00e9rique ; Refroidissement par ventilateur ; Unit\u00e9 de refroidissement ; Interconnexion par c\u00e2ble ; P\u00e9riph\u00e9rique m\u00e9moire ; Logiciel de gestion du syst\u00e8me ; BIOS ; Intel (r) ME ; Bus syst\u00e8me ; Groupe ; Intel (r) ME ; Environnement externe ; Batterie ; Lame de traitement ; Commutateur de connectivit\u00e9 ; Processeur / module de m\u00e9moire ; Module d'E / S ; Module d'E / S du processeur ; Micrologiciel du contr\u00f4leur de gestion ; Canal IPMI ; Bus PCI ; Bus PCI express ; Bus SCSI ; Bus SATA / SAS ; Bus frontal du processeur".split(";");
157
+l.RealmNames=";; Redirection ;; Asset Hardware ; Remote Control ; Storage ; Event Manager ; Storage Admin ; Agent Presence Local ; Agent Presence Remote ; Disjoncteur ; Time Network ; Information g\u00e9n\u00e9rale ; Firmware Update ; EIT ; LocalUN ; Endpoint Access Control ; Endpoint Access Control Admin ; Lecteur de journal des \u00e9v\u00e9nements ; Journal d'audit ; Domaine ACL ;;; Syst\u00e8me local".split(";");l.WatchdogCurrentStates={1:"Pas commenc\u00e9",2:"Arr\u00eat\u00e9",4:"Fonctionnement",
158
+8:"Expir\u00e9",16:"Suspendu"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),D={1:"",2:"HTTPS",4:"Local PBA",
159
+8:"WinRE"},y={16:"Administrateur de la s\u00e9curit\u00e9",17:"RCO",18:"Gestionnaire de redirection",19:"Gestionnaire de mise \u00e0 jour du micrologiciel",20:"Journal d'audit de s\u00e9curit\u00e9",21:"Heure du r\u00e9seau",22:"L'administration du r\u00e9seau",23:"Administration du stockage",24:"Responsable de l'\u00e9v\u00e9nement",25:"Gestionnaire de disjoncteurs",26:"Gestionnaire de pr\u00e9sence d'agent",27:"Configuration sans fil",28:"EAC",29:"KVM",30:"\u00c9v\u00e9nements de participation des utilisateurs",
160
+32:"Masquage d'\u00e9cran",33:"\u00c9v\u00e9nements de surveillance",1600:"Provisioning Started",1601:"Approvisionnement termin\u00e9",1602:"Entr\u00e9e ACL ajout\u00e9e",1603:"Entr\u00e9e ACL modifi\u00e9e",1604:"Entr\u00e9e ACL supprim\u00e9e",1605:"Acc\u00e8s ACL avec des informations d'identification non valides",1606:"\u00c9tat d'entr\u00e9e ACL",1607:"\u00c9tat TLS modifi\u00e9",1608:"Jeu de certificats du serveur TLS",1609:"Certificat de serveur TLS Supprimer",1610:"Certificat racine s\u00e9curis\u00e9 TLS ajout\u00e9",
161
+1611:"Suppression du certificat racine de confiance TLS",1612:"Jeu de cl\u00e9s pr\u00e9partag\u00e9es TLS",1613:"Param\u00e8tres Kerberos modifi\u00e9s",1614:"Cl\u00e9 principale Kerberos modifi\u00e9e",1615:"R\u00e9initialisation des compteurs d'usure du flash",1616:"Groupe d'alimentation modifi\u00e9",1617:"D\u00e9finir le mode d'authentification du domaine",1618:"Mettre \u00e0 niveau le client en mode de contr\u00f4le administrateur",1619:"D\u00e9provisionnement d\u00e9marr\u00e9",1700:"Mise sous tension effectu\u00e9e",
162
+1701:"Mise hors tension effectu\u00e9e",1702:"Cycle d'alimentation ex\u00e9cut\u00e9",1703:"R\u00e9initialisation effectu\u00e9e",1704:"D\u00e9finir les options de d\u00e9marrage",1800:"Ouverture de la session IDER",1801:"Session IDER ferm\u00e9e",1802:"IDER activ\u00e9",1803:"IDER d\u00e9sactiv\u00e9",1804:"Ouverture de la session SoL",1805:"Session SoL ferm\u00e9e",1806:"SoL activ\u00e9",1807:"SoL d\u00e9sactiv\u00e9",1808:"Session KVM d\u00e9marr\u00e9e",1809:"Session KVM termin\u00e9e",1810:"KVM activ\u00e9",
163
+1811:"KVM d\u00e9sactiv\u00e9",1812:"Le mot de passe VNC a \u00e9chou\u00e9 3 fois",1900:"Mise \u00e0 jour du firmware",1901:"\u00c9chec de la mise \u00e0 jour du firmware",2E3:"Journal d'audit de s\u00e9curit\u00e9 effac\u00e9",2001:"Politique d'audit de s\u00e9curit\u00e9 modifi\u00e9e",2002:"Journal d'audit de s\u00e9curit\u00e9 d\u00e9sactiv\u00e9",2003:"Journal d'audit de s\u00e9curit\u00e9 activ\u00e9",2004:"Journal d'audit de s\u00e9curit\u00e9 export\u00e9",2005:"Journal d'audit de s\u00e9curit\u00e9 r\u00e9cup\u00e9r\u00e9",
164
+2100:"Intel® ME Time Set",2200:"Ensemble de param\u00e8tres TCPIP",2201:"Ensemble de noms d'h\u00f4te",2202:"Ensemble de noms de domaine",2203:"Ensemble de param\u00e8tres VLAN",2204:"Ensemble de r\u00e8gles de liaison",2205:"Ensemble de param\u00e8tres IPv6",2300:"Ensemble d'attributs de stockage global",2301:"Stockage EACL modifi\u00e9",2302:"Stockage FPACL modifi\u00e9",2303:"Op\u00e9ration d'\u00e9criture de stockage",2400:"Alerte abonn\u00e9e",2401:"Alerte d\u00e9sinscription",2402:"Journal des \u00e9v\u00e9nements effac\u00e9",
165
+2403:"Journal des \u00e9v\u00e9nements gel\u00e9",2500:"Filtre CB ajout\u00e9",2501:"Filtre CB retir\u00e9",2502:"Politique CB ajout\u00e9e",2503:"Politique CB supprim\u00e9e",2504:"Ensemble de r\u00e8gles par d\u00e9faut CB",2505:"Jeu d'options heuristiques CB",2506:"\u00c9tat heuristique CB effac\u00e9",2600:"Agent de surveillance ajout\u00e9",2601:"Agent de surveillance supprim\u00e9",2602:"Ensemble d'actions Agent Watchdog",2700:"Profil sans fil ajout\u00e9",2701:"Profil sans fil supprim\u00e9",
166
+2702:"Profil sans fil mis \u00e0 jour",2800:"EAC Posture Signer SET",2801:"EAC activ\u00e9",2802:"EAC d\u00e9sactiv\u00e9",2803:"\u00c9tat de posture de l'EAC",2804:"Options de configuration EAC",2900:"Activation KVM activ\u00e9e",2901:"Activation KVM d\u00e9sactiv\u00e9e",2902:"Mot de passe KVM modifi\u00e9",2903:"Consentement KVM r\u00e9ussi",2904:"\u00c9chec du consentement KVM",3E3:"Modification de la politique d'adh\u00e9sion",3001:"Envoyer un \u00e9v\u00e9nement de code de consentement",3002:"D\u00e9marrer l'\u00e9v\u00e9nement bloqu\u00e9 par opt-in"};
167
+l.GetAuditLogExtendedDataStr=function(a,b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,2+b.charCodeAt(1));if(1603==a)return 0==b.charCodeAt(1)?b.substring(3):null;if(1605==a)return["Acc\u00e8s ME invalide","Acc\u00e8s MEBx non valide"][b.charCodeAt(0)];if(1606==a){var c=["d\u00e9sactiv\u00e9","Activ\u00e9e"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+=","+b.substring(3));return c}return 1607==a?"\u00c9loign\u00e9"+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(0)]+", Local"+["NoAuth",
168
+"ServerAuth","MutualAuth"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+","+["NoAuth","Auth","d\u00e9sactiv\u00e9"][b.charCodeAt(4)]:1619==a?["BIOS","MEBx","MEI local","WSMAN local","WSAMN distant"][b.charCodeAt(0)]:1900==a?"De"+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" \u00e0"+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==
169
+a?"De"+["Aucun","KVM","Tout"][b.charCodeAt(0)]+" \u00e0"+["Aucun","KVM","Tout"][b.charCodeAt(1)]:3001==a?["Succ\u00e8s","\u00c9chec 3 fois"][b.charCodeAt(0)]:null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}
170
+function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
171
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
172
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
173
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
174
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
175
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
176
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
177
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
178
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
179
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
180
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
181
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
182
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
183
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
184
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
185
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
186
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
187
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
188
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
189
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
190
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
191
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
192
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
193
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
194
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
195
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
196
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
197
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
198
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
199
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
200
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
201
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
202
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
203
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
204
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
205
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
206
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
207
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
208
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
209
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
210
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
211
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
212
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
213
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
214
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
215
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
216
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
217
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
218
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
219
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
220
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
221
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
222
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
223
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
224
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
225
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
226
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
227
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
228
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
229
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
230
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
231
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
232
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
233
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
234
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
235
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
236
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
237
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
238
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
239
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
240
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
241
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
242
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
243
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
244
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
245
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
246
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
247
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
248
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
249
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
250
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
251
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
252
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
253
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
254
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
255
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
256
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
257
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
258
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
259
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
260
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
261
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
262
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
263
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
264
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
265
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
266
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
267
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
268
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
269
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
270
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
271
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
272
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
273
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
274
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
275
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
276
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
277
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
278
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
279
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
280
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
281
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
282
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
283
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
284
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
285
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
286
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
287
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
288
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
289
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
290
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
291
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
292
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
293
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
294
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
295
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
296
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
297
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
298
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
299
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
300
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
301
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
302
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
303
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
304
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
305
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
306
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
307
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
308
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
309
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
310
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
311
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
312
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
313
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
314
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
315
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
316
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
317
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
318
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
319
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
320
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
321
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
322
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
323
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
324
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
325
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
326
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
327
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
328
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
329
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
330
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
331
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
332
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
333
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
334
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
335
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
336
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
337
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
338
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
339
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
340
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
341
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
342
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
343
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
344
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
345
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
346
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
347
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
348
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
349
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
350
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
351
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
352
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
353
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
354
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
355
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
356
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
357
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
358
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
359
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
360
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
361
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
362
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
363
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
364
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
365
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
366
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
367
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
368
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
369
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
370
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
371
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
372
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
373
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
374
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
375
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
376
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
377
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
378
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
379
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
380
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
381
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
382
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
383
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
384
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
385
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
386
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
387
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
388
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
389
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
390
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
391
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
392
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
393
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
394
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
395
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
396
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
397
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
398
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
399
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
400
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
401
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
402
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
403
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
404
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
405
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
406
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
407
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
408
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
409
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
410
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
411
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
412
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
413
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
414
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
415
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
416
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
417
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
418
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
419
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
420
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
421
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
422
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
423
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
424
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
425
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
426
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
427
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
428
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
429
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
430
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
431
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
432
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
433
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
434
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
435
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
436
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
437
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
438
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
439
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
440
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
441
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
442
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
443
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
444
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
445
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
446
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
447
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
448
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
449
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
450
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
451
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
452
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
453
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
454
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
455
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
456
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
457
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
458
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
459
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
460
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
461
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
462
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
463
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
464
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
465
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
466
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
467
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
468
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
469
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
470
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
471
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
472
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
473
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
474
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
475
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
476
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
477
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
478
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
479
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
480
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
481
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
482
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
483
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
484
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
485
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
486
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
487
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
488
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
489
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
490
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
491
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
492
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
493
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
494
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
495
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
496
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
497
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
498
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
499
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
500
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
501
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
502
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
503
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
504
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
505
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
506
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
507
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
508
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
509
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
510
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
511
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
512
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
513
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
514
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
515
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
516
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
517
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
518
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
519
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
520
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
521
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
522
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
523
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
524
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
525
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
526
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
527
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
528
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
529
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
530
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
531
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
532
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
533
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
534
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
535
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
536
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
537
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
538
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
539
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
540
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
541
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
542
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
543
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
544
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
545
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
546
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
547
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
548
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
549
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
550
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
551
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
552
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
553
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
554
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
555
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
556
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
557
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
558
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
559
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
560
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
561
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
562
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
563
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
564
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
565
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
566
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
567
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
568
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
569
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
570
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
571
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
572
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
573
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
574
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
575
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
576
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
577
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
578
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
579
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
580
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
581
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
582
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
583
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
584
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
585
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
586
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
587
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
588
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
589
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
590
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
591
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
592
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
593
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
594
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
595
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
596
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
597
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
598
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
599
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
600
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
601
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
602
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
603
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
604
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
605
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
606
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
607
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
608
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
609
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
610
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
611
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
612
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
613
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
614
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
615
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
616
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
617
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
618
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
619
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
620
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
621
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
622
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
623
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
624
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
625
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
626
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
627
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
628
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
629
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
630
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
631
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
632
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
633
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
634
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
635
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
636
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
637
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
638
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
639
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
640
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
641
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
642
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
643
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
644
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
645
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
646
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
647
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
648
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
649
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
650
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
651
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
652
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
653
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
654
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
655
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
656
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
657
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
658
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
659
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
660
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
661
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
662
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
663
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
664
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
665
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
666
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
667
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
668
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
669
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
670
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
671
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
672
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
673
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
674
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
675
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
676
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
677
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
678
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
679
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
680
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
681
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
682
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
683
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
684
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
685
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
686
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
687
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
688
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
689
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
690
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
691
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
692
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
693
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
694
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
695
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
696
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
697
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
698
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
699
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
700
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
701
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
702
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
703
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
704
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
705
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
706
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
707
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
708
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
709
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
710
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
711
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
712
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
713
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
714
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
715
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
716
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
717
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
718
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
719
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
720
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
721
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
722
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
723
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
724
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
725
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
726
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
727
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
728
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
729
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
730
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
731
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
732
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
733
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
734
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
735
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
736
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
737
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
738
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
739
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
740
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
741
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
742
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
743
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
744
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
745
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
746
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
747
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
748
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
749
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
750
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
751
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
752
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
753
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
754
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
755
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
756
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
757
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
758
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
759
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
760
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
761
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
762
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
763
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
764
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
765
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
766
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
767
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
768
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
769
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
770
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
771
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
772
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
773
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
774
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
775
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
776
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
777
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
778
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
779
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
780
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
781
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
782
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
783
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
784
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
785
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
786
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
787
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
788
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
789
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
790
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
791
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
792
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
793
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
794
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
795
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
796
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
797
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
798
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
799
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
800
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
801
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
802
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
803
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
804
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
805
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
806
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
807
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
808
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
809
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
810
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
811
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
812
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
813
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
814
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
815
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
816
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
817
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
818
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
819
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
820
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
821
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
822
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
823
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
824
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
825
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
826
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
827
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
828
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
829
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
830
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
831
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
832
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
833
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
834
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
835
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
836
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
837
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
838
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
839
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
840
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
841
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
842
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
843
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
844
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
845
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
846
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
847
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
848
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
849
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
850
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
851
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
852
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
853
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
854
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
855
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
856
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
857
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
858
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
859
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
860
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
861
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
862
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
863
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
864
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
865
+k.Init();return k},ZLIB=ZLIB||{};
866
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
867
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
868
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
869
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
870
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
871
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
872
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
873
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
874
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
875
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
876
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
877
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
878
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
879
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
880
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
881
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
882
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
883
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
884
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
885
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
886
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
887
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
888
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
889
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
890
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
891
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
892
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
893
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
894
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
895
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
896
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
897
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
898
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
899
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
900
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
901
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
902
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
903
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
904
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
905
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
906
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
907
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
908
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
909
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
910
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
911
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
912
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
913
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
914
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
915
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
916
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
917
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
918
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
919
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
920
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
921
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
922
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
923
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
924
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
925
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
926
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
927
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
928
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
929
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
930
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
931
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
932
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
933
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
934
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
935
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
936
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
937
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
938
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
939
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
940
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
941
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
942
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
943
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
944
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
945
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>Chargement...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
946
+StatusStrs=["D\u00e9branch\u00e9","De liaison...","Installer...","Li\u00e9"],scriptstate,t,t2,rsepass=null;
947
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
948
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR + LF":"LF";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
949
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
950
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
951
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
952
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
953
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="D\u00e9connecter"}function getCurrentMeshNode(){return currentMeshNode}
954
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="Commencer la capture";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
955
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
956
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
957
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
958
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
959
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
960
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
961
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
962
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="Relier";QH(5,"D\u00e9branch\u00e9");go(100)}
963
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
964
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
965
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
966
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
967
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
968
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
969
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
970
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
971
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
972
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
973
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"Synchroniser l'horloge",3,syncClockEx,"Synchroniser l'horloge Intel AMT avec cet ordinateur?")}
974
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","Impossible de r\u00e9gler l'heure, \u00e9tat ="+d):0!=a.Body.ReturnValue?messagebox("","Impossible de r\u00e9gler l'heure, erreur: "+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}
975
+var DMTFPowerStates=";;Allumer;Sommeil l\u00e9ger;Sommeil profond;Cycle d'alimentation (Soft off);Arr\u00eat - Difficile;Hibernation (Off soft);Arr\u00eat progressif;Cycle d'alimentation (hors tension);R\u00e9initialisation du bus principal;Interruption de diagnostic (NMI);N'est pas applicable;Off - doux gracieux;Off - Gracieux dur;R\u00e9initialisation du bus ma\u00eetre gracieuse;Cycle d'alimentation (Off - Soft graceful);Cycle d'alimentation (Off - Hard graceful);Interruption de diagnostic (INIT)".split(";");
976
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>Inconnue</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"Allumer"==a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&
977
+3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=[", Branch\u00e9",", Sur la batterie"][q.PowerSource]);d+=TableEntry("Puissance",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>Aucun</i>":EscapeHtml(c);d+=TableEntry("Nom et domaine",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?
978
+d+=TableEntry("ID syst\u00e8me",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("ID syst\u00e8me",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" activ\u00e9 en mode de contr\u00f4le administrateur (ACM)",4==k.ProvisioningMode&&(p=" activ\u00e9 en mode de contr\u00f4le client (CCM)",
979
+b=9));d+=TableEntry("Intel® ME","v"+getItem(amtlogicalelements,"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=
980
+amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||
981
+6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);r&&(e+=", Port de redirection");n&&(e+=", S\u00e9rie sur LAN");p&&(e+=", IDE-Redirect");w&&(e+=", KVM");""==e&&(e=" Aucun");d+=TableEntry("Fonctionnalit\u00e9s actives",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="Affichage principal",7<amtversion&&void 0!==
982
+p.DefaultScreen&&255>p.DefaultScreen&&(e=["Affichage principal","Affichage secondaire","3e affichage"][p.DefaultScreen]),e='<span title="'+format("L'affichage \u00e0 distance par d\u00e9faut est {0}",e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+=", Port 5900 activ\u00e9"),1==p.OptInPolicy&&(e+=","+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"opt-in secondes":"deuxi\u00e8me opt-in")),e+=","+p.SessionTimeout+" minute"+(0<p.SessionTimeout?"s":"")+" expiration de la session",9<amtversion&&
983
+null!=amtsysstate.IPS_ScreenConfigurationService?((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&1))&&(e+=", Masquage autoris\u00e9"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("Bureau \u00e0 distance",addLinkConditional(e,"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&
984
+null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="\u00c9tat inconnu",r=amtsysstate.IPS_OptInService.response.OptInRequired,0==r&&(e="Non requis"),1==r&&(e="Requis pour KVM uniquement"),4294967295==r&&(e="Toujours requis"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("Consentement de l'utilisateur",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,
985
+l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(r=e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==r&&(d+=TableEntry("Politique d'alimentation",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&
986
+(d+=TableEntry("Date et heure",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";e+=AddButton("Actions de puissance ...","showPowerActionDlg()")+" ";e+=AddButton("Enregistrer l'\u00e9tat ...","saveEntireAmtState()")+" ";e+=AddButton("Script de lancement...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");
987
+QH(17,d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+" La modification des param\u00e8tres r\u00e9seau peut rendre cette page indisponible.");d=d+"<br><h2>r\u00e9glages g\u00e9n\u00e9raux</h2>"+TableStart();e="";"<i>Aucun</i>"!=c&&(1==q.SharedFQDN&&(e=", partag\u00e9 avec OS"),0==q.SharedFQDN&&(e=", diff\u00e9rent du syst\u00e8me d'exploitation"));d+=TableEntry("Nom et domaine",
988
+addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));c="d\u00e9sactiv\u00e9";1==q.DDNSUpdateEnabled?c="Activ\u00e9 chacun"+q.DDNSPeriodicUpdateInterval+" minutes, TTL est"+q.DDNSTTL+" minutes":1==q.DDNSUpdateByDHCPServerEnabled&&(c="Mise \u00e0 jour par serveur DHCP");d+=TableEntry("DNS dynamique",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||
989
+1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"Interface sans fil":"Interface filaire")+"</h2>";d+=TableStart();d+=TableEntry("\u00c9tat du lien",1==c.LinkIsUp?"Le lien est en place":"Le lien est en panne");if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 / AC"),14==c.LinkPolicy[l]&&e.push("Sx / AC"),16==c.LinkPolicy[l]&&e.push("S0 / DC"),224==c.LinkPolicy[l]&&
990
+e.push("Sx / DC");0==e.length&&e.push("");d+=TableEntry("Politique de lien",addLinkConditional(0==e.length?"Indisponible":"Disponible en: "+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("Adresse Mac",c.MACAddress));amtwirelessif==a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("Etat",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,
991
+d+=TableEntry("\u00c9tat de la radio",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+", SSID: "+(s?s:"<i>Aucun</i>")));amtwirelessif!=a&&(d+=TableEntry("R\u00e9pondre au ping",addLinkConditional(["d\u00e9sactiv\u00e9","R\u00e9ponse ICMP","R\u00e9ponse RMCP","R\u00e9ponse ICMP et RMCP"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"Automatique \u00e0 l'aide du serveur DHCP":"Adresse IP statique",1==c.IpSyncEnabled&&
992
+(e+=", IP sync with OS"),d+=TableEntry("\u00c9tat IPv4",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("Adresse IPv4",isIpAddress(c.IPAddress,"Aucun"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("Passerelle / masque IPv4",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"Aucun")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("Serveur de nom de domaine IPv4",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=
993
+amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r="d\u00e9sactiv\u00e9",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?"Adresses activ\u00e9es, automatiques et manuelles":"Activ\u00e9, adresses automatiques");d+=
994
+TableEntry("\u00c9tat IPv6",addLinkConditional(r,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=","),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("Adresse IPv6",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("Adresse IPv6","Aucun");
995
+isIpAddress(c.CurrentDefaultRouter)&&(d+=TableEntry("Routeur par d\u00e9faut IPv6",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("Serveur de nom de domaine IPv6",e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<
996
+amtversion||11==amtversion&&5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
997
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
998
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"Politique de lien",3,showLinkPolicyDlgEx,a,b)}}
999
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
1000
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Politique de lien",format("Impossible de d\u00e9finir une nouvelle strat\u00e9gie de lien, erreur {0}",d))}
1001
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>Aucun</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
1002
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>De confiance</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+" octets,<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+
1003
+c+")>T\u00e9l\u00e9charger</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" octets,<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>T\u00e9l\u00e9charger</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
1004
+function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
1005
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"Enregistrer l'int\u00e9gralit\u00e9 de l'\u00e9tat Intel® AMT",3,saveEntireAmtStateOk)}}
1006
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"Enregistrer l'int\u00e9gralit\u00e9 de l'\u00e9tat Intel® AMT",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1007
+function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1008
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>Affichage principal</option><option value=1>Affichage secondaire</option>";9<amtversion&&(c+="<option value=2>3e affichage</option>");c+='</select><div style=padding-top:4px>Affichage par d\u00e9faut</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>D\u00e9lai d\'expiration de la session (minutes)</div></div>';
1009
+1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>D\u00e9lai d\'expiration (secondes)</div></div>');c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>D\u00e9sactiv\u00e9, recommand\u00e9</option><option value=1>Visionneuses KVM h\u00e9rit\u00e9es activ\u00e9es</option></select><div style=padding-top:4px>Port 5900</div></div>";
1010
+c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>Mot de passe 5900 (8 caract\u00e8res)</div></div>";9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+="<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>d\u00e9sactiv\u00e9</option><option value=1>Activ\u00e9e</option></select><div style=padding-top:4px title=\"Cette fonctionnalit\u00e9 n'est pas souvent prise en charge\">Masquage d'\u00e9cran</div></div>");
1011
+c+="</div>";setDialogMode(11,"Param\u00e8tres du bureau \u00e0 distance",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}
1012
+function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1013
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1014
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("Param\u00e8tres du bureau \u00e0 distance",format("Erreur {0}, impossible de d\u00e9finir des valeurs.",d))}
1015
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("Erreur",format("La suppression de l'\u00e9cran n'a pas pu \u00eatre d\u00e9finie, la suppression peut ne pas \u00eatre prise en charge sur ce syst\u00e8me ({0}).",d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}
1016
+function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1017
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("Annuler le gel du journal","FreezeLog(0)"):AddButton("Figer le journal","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="Filtre" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1018
+AddRefreshButton("PullEventLog(1)")+AddButton("Effacer le journal","ClearLog()")+AddButton("Sauver...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1019
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>La source</b><td class=r1><b>La description</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1020
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1021
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"Effacer le journal des \u00e9v\u00e9nements?"),setDialogMode(1,"Journal des \u00e9v\u00e9nements",3,ClearLogEx))}function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("Journal des \u00e9v\u00e9nements","Impossible d'effacer, erreur: "+d):PullEventLog()})}
1022
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("Temps",c.Time.toLocaleString());a+=addHtmlValue("La source",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("La description",c.Desc);a+=MoreStart();a+=addHtmlValue("Adresse de l'appareil",c.DeviceAddress);a+=addHtmlValue("Entit\u00e9",c.Entity);a+=addHtmlValue("Instance d'entit\u00e9",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];a+=addHtmlValue("Les donn\u00e9es",
1023
+d);a+=addHtmlValue("D\u00e9calage",c.EventOffset);a+=addHtmlValue("Type de capteur",c.EventSensorType);a+=addHtmlValue("Gravit\u00e9",c.EventSeverity);a+=addHtmlValue("Type de Source",c.EventSourceType);a+=addHtmlValue("Type",c.EventType);a+=addHtmlValue("Num\u00e9ro de capteur",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("D\u00e9tails de l'\u00e9v\u00e9nement # {0}",b+1),a)}}
1024
+function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1025
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1026
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>G\u00e9rez les abonn\u00e9s aux \u00e9v\u00e9nements.<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],
1027
+b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>Aucun abonnement trouv\u00e9.</i></div><br>");e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("Nouvel abonnement","newSubscriptionButton()"));b+="<br><td class=r1>"+
1028
+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"Pousser",3:"Poussez avec ACK",4:"\u00c9v\u00e9nements",5:"Tirer"};
1029
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("Destination",a.Destination);d+=addHtmlValue("Filtre",c);d+=addHtmlValue("Mode de livraison",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"Abonnement"+(b+1),xxAccountAdminName?
1030
+5:1,deleteSubscriptionButton,d+"</div>",b)}}
1031
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
1032
+Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1033
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>Pousser</option><option value=PushWithAck>Poussez avec ACK</option></select><div style=padding-top:4px>Type</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+='<option value="'+subscriptionsFilters[c].InstanceID+'">'+subscriptionsFilters[c].CollectionName.substring(13)+
1034
+"</option>";b+="</select><div style=padding-top:4px>Filtre</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>URL</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>Aucun</option><option value=1>Dig\u00e9rer</option></select><div style=padding-top:4px>Authentification</div></div>";
1035
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Nom d'utilisateur</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Mot de passe</div></div>";b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>Arguments</div></div>";
1036
+setDialogMode(11,"Ajouter un abonnement \u00e0 un \u00e9v\u00e9nement",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1037
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1038
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="Inconnue;Autre;Activ\u00e9e;d\u00e9sactiv\u00e9;\u00c9teindre;N'est pas applicable;Activ\u00e9 mais hors ligne;En test;Diff\u00e9r\u00e9;Au repos;D\u00e9part".split(";");
1039
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"d\u00e9sactiv\u00e9":"Activ\u00e9e",c&2&&(b+=", Ferm\u00e9 \u00e0 cl\u00e9"),c&4&&(b+=", Presque plein"),c&8&&(b+=", Plein"),c&16&&(b+=", NoKey"),c="<h1>Param\u00e8tres du journal d'audit</h1>"+TableStart(),c+=TableEntry("Etat",b),c+=TableEntry("Espace de rangement",a[0].CurrentNumberOfRecords+" enregistrement (s),"+a[0].PercentageFree+"% gratuit"),c+=TableEntry("\u00c9craser la politique",2==a[0].OverwritePolicy?"S'enveloppe lorsqu'il est plein":
1040
+"N'\u00e9crase jamais"),c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1041
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="Filtre" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("Sauver...","SaveAuditLog()")+AddButton("Effacer le journal","ClearAuditLog()"))+"<br>");if(0==c.length)d="Aucun \u00e9v\u00e9nement de journal d'audit trouv\u00e9.";else{var e=0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>Temps</b><td class=r1 style=width:260px><b>Initiateur</b><td class=r1><b>Action</b>";
1042
+for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+=","+q.Event);null!=q.ExStr&&(p+=","+q.ExStr);""!=k&&""!=r&&(k+=",");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",
1043
+minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","Journal d'audit Intel AMT",auditLog)}
1044
+function ClearAuditLog(b){QH(66,"Effacer le journal d'audit?");setDialogMode(1,"Journal d'audit",3,ClearAuditLogEx)}function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}
1045
+function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("Journal d'audit","Erreur: "+d)}
1046
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("Temps",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("Initiateur",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("Adresse",a.NetAddress));d+=addHtmlValue("Application",a.AuditApp);d+=addHtmlValue("un \u00e9v\u00e9nement",a.Event);if(null!=a.ExStr)d+=addHtmlValue("Donn\u00e9es \u00e9tendues",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<e.length&&(e+=","),e+=
1047
+a.Ex.charCodeAt(c);""!=e&&(d+=addHtmlValue("Valeurs de donn\u00e9es",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("Cha\u00eene de donn\u00e9es",a.Ex.substring(2)))}messagebox("\u00c9v\u00e9nement d'audit #"+(b+1)+" D\u00e9tails",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;
1048
+function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1049
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1050
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1051
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1052
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"d\u00e9sactiv\u00e9";var c=(1==xxTlsSettings[b].MutualAuthentication?"TLS d'authentification mutuelle":"TLS d'authentification de serveur")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" et non TLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1053
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("S\u00e9curit\u00e9 TLS \u00e0 distance",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("S\u00e9curit\u00e9 TLS locale",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>G\u00e9rez les certificats Intel® AMT pour cet ordinateur.<br><br>");
1054
+if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>Aucun certificat trouv\u00e9.</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b=", Racine de confiance"),xxCertificates[d].XPrivateKey&&(b=", Cl\u00e9 priv\u00e9e"),d==xxTlsCurrentCert&&(b+=", TLS cert"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+b+"</i></div></div>";
1055
+for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>Paire de cl\u00e9s priv\u00e9es non affect\u00e9es #"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("Ajouter un certificat ...","addCertButton()")+AddButton("D\u00e9livrer un certificat ...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1056
+function showKeyPairDetails(b){setDialogMode(11,"Paire de cl\u00e9s #"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"Il s'agit d'une paire de cl\u00e9s de certificat public / priv\u00e9 qui n'appartient \u00e0 aucun certificat. Cette entr\u00e9e doit \u00eatre temporaire.")}
1057
+var xxCertSubjectNames={CN:"Nom commun",O:"Organisation",OU:"Unit\u00e9 organisationnelle",S:"\u00c9tat / Province",ST:"\u00c9tat / Province",L:"Localit\u00e9",C:"Pays",SN:"Nom de famille",GN:"Pr\u00e9nom"};
1058
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("Certificat",c.X509Certificate.length+" octets,<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>T\u00e9l\u00e9charger</a>");a+=addHtmlValue("Racine de confiance",c.TrustedRootCertficate?"Oui":"Non");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("Cl\u00e9 priv\u00e9e","Pr\u00e9sent"));a+='<br><div style="border-bottom:1px solid gray"><i>Objet du certificat</i></div><br>';for(var d in c.XSubject)c.XSubject[d]&&
1059
+(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>Certificat d\'\u00e9metteur</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"Certificat -"+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},
1060
+function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}var xxDragDropCertFiles=null;
1061
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>Fichier de certificat</div></div>")+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>Certificat racine de confiance</option><option value=0>Certificat de cha\u00eene</option></select><div style=padding-top:4px>Type de certificat</div></div>",
1062
+setDialogMode(11,"Ajouter un certificat",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1063
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1064
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>Mot de passe du certificat</div></div>",
1065
+b+='<br><div style="border-bottom:1px solid gray"><i>Certificat Intel® AMT</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>Nom commun</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>Organisation</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>\u00c9tat / Province</div></div>",
1066
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>Pays</div></div>",b+='<div>Utilisations du certificat</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',b+="<li><label><input type=checkbox id=d11_cu4 checked>Serveur TLS (HTTPS)</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>Client TLS (HTTPS)</label></li>",
1067
+b+="<li><label><input type=checkbox id=d11_cu6>Protection des e-mails</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>Signature du code</label></li>",b+="<li><label><input type=checkbox id=d11_cu8>Horodatage</label></li>",b+="</ul>",setDialogMode(11,"D\u00e9livrer un certificat",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1068
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1069
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("D\u00e9livrer un certificat","Impossible de d\u00e9crypter / d\u00e9coder le certificat.")}
1070
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1071
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("D\u00e9livrer un certificat","Impossible de g\u00e9n\u00e9rer la paire de cl\u00e9s. Statut: "+d):0!=a.Body.ReturnValue?messagebox("D\u00e9livrer un certificat","Impossible de g\u00e9n\u00e9rer la paire de cl\u00e9s,"+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1072
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("D\u00e9livrer un certificat","Impossible de g\u00e9n\u00e9rer la paire de cl\u00e9s. Statut: "+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"Certificat racine non approuv\u00e9"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=
1073
+xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("D\u00e9livrer un certificat","Impossible de signer le certificat."):(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,
1074
+q.length-25),GenerateKeyPairResponse4))}}function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("D\u00e9livrer un certificat","Impossible de g\u00e9n\u00e9rer la paire de cl\u00e9s. Statut: "+d):PullCertificates()}function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("Ajouter un certificat","Impossible d'ajouter le certificat, erreur"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}
1075
+function certificateRemoved(b,c,a,d){200!=d?messagebox("Supprimer le certificat","Impossible de supprimer le certificat, erreur"+d):PullCertificates()}function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1076
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>Aucun certificat, TLS d\u00e9sactiv\u00e9</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>Certificat</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
1077
+b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="Liste s\u00e9par\u00e9e par des virgules des noms communs de certificats qui seront autoris\u00e9s \u00e0 se connecter \u00e0 distance."><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="nom1, nom2"><div style=padding-top:4px>CN distants</div></div>';
1078
+setDialogMode(11,"Param\u00e8tres TLS",3,showSetTlsSecurityDlgOk,b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);getSelectElement("tlsremote").value=(1==
1079
+xxTlsSettings[c].MutualAuthentication?2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}
1080
+var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1081
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1082
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1083
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1084
+b,c,d){200!=d?messagebox("","Impossible de r\u00e9gler l'heure, \u00e9tat ="+d):0!=c.Body.ReturnValue?messagebox("","Impossible de r\u00e9gler l'heure, erreur: "+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,
1085
+0,1,a[1]);statusbox("Param\u00e8tres TLS","Application de nouveaux param\u00e8tres de s\u00e9curit\u00e9 ...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1086
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","Impossible de d\u00e9finir la s\u00e9curit\u00e9 TLS, \u00e9tat ="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1087
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","Impossible de d\u00e9finir la s\u00e9curit\u00e9 TLS, \u00e9tat ="+d):0!=a.Body.ReturnValue?messagebox("","Impossible de d\u00e9finir la s\u00e9curit\u00e9 TLS, erreur: "+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1088
+function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1089
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1090
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1091
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1092
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}var watchdogEnabledStates="Inconnue;Autre;Activ\u00e9e;d\u00e9sactiv\u00e9;\u00c9teindre;N'est pas applicable;Activ\u00e9 mais hors ligne;En test;Diff\u00e9r\u00e9;Au repos;D\u00e9part".split(";"),watchdogMonitoredEntity="Inconnue;Autre;Syst\u00e8me op\u00e9rateur;Processus de d\u00e9marrage du syst\u00e8me d'exploitation;Processus d'arr\u00eat du syst\u00e8me d'exploitation;Processus de d\u00e9marrage du micrologiciel;Processus de d\u00e9marrage du BIOS;Application;Processeur de service".split(";");
1093
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("Nombre maximum",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" chiens de garde");b+=TableEntry("Nombre total maximum d'actions",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" Actions");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>G\u00e9rez les chiens de garde de pr\u00e9sence d'agent Intel® AMT.<br><br>";if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||
1094
+0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>Aucun chien de garde de pr\u00e9sence d'agent n'a \u00e9t\u00e9 trouv\u00e9.</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));b+="<div class=itemBar onclick=showWatchdogDetails("+
1095
+c+')><input type=button style=float:right value="Ajouter une action ..." onclick=addWatchdogAction(event,'+c+")>";a.transitions&&(b+='<input type=button style=float:right value="Supprimer des actions ..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+" → "+getWatchdogTransitionStr(q.NewState);
1096
+q.actions&&1==q.actions[0].EventOnTransition&&(d+=": \u00c9v\u00e9nement \u00e0 consigner")}""!=d&&(b+="<div style=padding:12px>"+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("Ajouter un chien de garde ...","AddWatchdog()"));b+="<br>";QH(60,b)}}
1097
+function getWatchdogTransitionStr(b){if(31==b)return"N'importe quel \u00c9tat";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1098
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("La description",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("Entit\u00e9 surveill\u00e9e",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("\u00c9tat actuel",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("\u00c9tat activ\u00e9",watchdogEnabledStates[b.EnabledState]);c+=addHtmlValue("Intervalle de d\u00e9marrage",
1099
+b.StartupInterval+" seconde (s)");c+=addHtmlValue("Intervalle de temporisation",b.TimeoutInterval+" seconde (s)");setDialogMode(11,format("Chien de garde {0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1100
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Nom</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="G\u00e9n\u00e9rer un DeviceID al\u00e9atoire">'+addLink("Reference de l'appareil","GenerateWatchdogGuid()")+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>D\u00e9marrage (secondes)</div></div>";
1101
+b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>D\u00e9lai d'expiration (secondes)</div></div>";setDialogMode(11,"Ajouter un chien de garde",3,AddWatchdogOk,b);AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}
1102
+function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1103
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1104
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("Chien de garde","Impossible d'ajouter le chien de garde, erreur #"+d):PullWatchdog()}
1105
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>De<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>\u00c0<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"Ajouter une action de surveillance",
1106
+3,addWatchdogActionOk,d+"</table><br>Faire une action<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>\u00c9crire dans le journal des \u00e9v\u00e9nements<br />",a);addWatchdogActionUpdate();haltEvent(b)}function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1107
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Watchdog Action","Impossible d'ajouter une action de surveillance, erreur #"+d):PullWatchdog()}
1108
+function deleteWatchdogActions(b,c){setDialogMode(11,"Supprimer les actions du chien de garde",3,deleteWatchdogActionsOk,"Supprimer toutes les actions de ce chien de garde?",xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1109
+function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Watchdog Action","Impossible de supprimer les actions du chien de garde, erreur #"+d):PullWatchdog()}
1110
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"Tous les paquets IP",2054:"Tous les paquets ARP"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"Autoriser, compter",1:"Drop, Count",2:"Limite de taux",3:"Autoriser",4:"Laissez tomber"},xxSystemDefenceFilters={HdrProtocolID:1,HdrDestAddress:2,HdrDestMask:2,
1111
+HdrSrcAddress:2,HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,TCPFlagsOn:3,TCPFlagsOff:3};function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}
1112
+function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1113
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1114
+a}b+=TableStart();c="<i>Aucun</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("Strat\u00e9gie c\u00e2bl\u00e9e par d\u00e9faut",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d=1==d?d+" paquet":d+" paquets",b+=TableEntry((0==c?"Filaire":"Sans fil")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>G\u00e9rez les politiques de d\u00e9fense du syst\u00e8me Intel® AMT.<br><br>";
1115
+if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+="<div style=padding-left:15px><i>Aucune politique de d\u00e9fense du syst\u00e8me trouv\u00e9e.</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+
1116
+c+")><div style=padding-top:3px><b>"+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>G\u00e9rez les filtres de d\u00e9fense du syst\u00e8me Intel® AMT.<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>Aucun filtre de d\u00e9fense du syst\u00e8me n'a \u00e9t\u00e9 trouv\u00e9.</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=
1117
+xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||(d="Protocole Ethernet"+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" \u00e0"+a.FilterProfileData+" paquet / s"),1==a.ActionEventOnMatch&&(d+=", \u00c9v\u00e9nement sur match"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+
1118
+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=xxSystemDefense.AMT_IPHeadersFilter.responses[c];(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="Protocole Ethernet"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==a.FilterProfile&&(d+=" \u00e0"+a.FilterProfileData+" paquet / s");1==a.ActionEventOnMatch&&(d+=", \u00c9v\u00e9nement sur match");var q=0;for(e in xxSystemDefenceFilters)a[e]&&q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+
1119
+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("Ajouter un filtre ...","AddDefenseFilter()")+AddButton("Ajouter une strat\u00e9gie ...","AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,
1120
+5E3)))}}function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1121
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1122
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1123
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1124
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>Aucun";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1125
+"Politique de d\u00e9fense du syst\u00e8me par d\u00e9faut",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>Politique par d\u00e9faut</div></div>",b)}}
1126
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
1127
+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1128
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">Port Ethernet Intel (r) AMT '+
1129
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1130
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("Politique de d\u00e9fense du syst\u00e8me par d\u00e9faut","Impossible de d\u00e9finir la strat\u00e9gie, erreur"+d):PullSystemDefense()}
1131
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Nom</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Filtre de paquets IP Ethernet<option value=1>Filtre de paquets Ethernet ARP<option value=2>Filtre de paquets IPv4<option value=3>Filtre de paquets IPv6</select><div style=padding-top:4px>Type</div></div>";b+=
1132
+'<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="R\u00e8gles facultatives" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>R\u00e8gles de correspondance</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Sortant / Transmettre<option value=1>Entrant / Recevoir</select><div style=padding-top:4px>Direction</div></div>";
1133
+b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Autoriser, compter<option value=1>Drop, Count<option value=2>Limite de taux<option value=3>Autoriser<option value=4>Laissez tomber</select><div style=padding-top:4px>action</div></div>";b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Paquets / seconde</div></div>";
1134
+b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>Ne fais rien<option value=1>\u00c9v\u00e9nement sur match</select><div style=padding-top:4px>Journal des \u00e9v\u00e9nements</div></div>";setDialogMode(11,"Ajouter un filtre de d\u00e9fense du syst\u00e8me",3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1135
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1136
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="Hdr"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1137
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1138
+function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("Ajouter un filtre de d\u00e9fense du syst\u00e8me","Impossible d'ajouter le filtre, erreur #"+d):PullSystemDefense()}
1139
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="Trafic Ethernet",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="Protocole Ethernet"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="Trafic IP",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="Tous les protocoles IP"+d.HdrIPVersion));var p;p=""+addHtmlValue("Nom",EscapeHtml(d.Name));p+=addHtmlValue("Type",e);p+=addHtmlValue("Trafic correspondant",
1140
+a);p+=addHtmlValue("Direction",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("Filtre"+a,e));p+=addHtmlValue("\u00c9v\u00e9nement sur match",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,"Filtre Ethernet #"+d.InstanceID,
1141
+5,showFilterDetailsOk,p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("Supprimer le filtre","Impossible de supprimer le filtre, assurez-vous qu'il n'est pas utilis\u00e9."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1142
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>Nom</div></div><div style=height:26px;margin-top:4px><select id=policytx title="Action par d\u00e9faut \u00e0 entreprendre pour le trafic sortant" style=float:right;width:133px><option value=0>Allow<option value=1>Laissez tomber<option value=2>Autoriser, compter<option value=3>Drop, Count<option value=4>Autoriser, compter, \u00e9v\u00e9nement<option value=5>Drop, Count, Event</select><select id=policyrx style=float:right;width:133px title="Action par d\u00e9faut \u00e0 entreprendre pour le trafic entrant"><option value=0>Autoriser<option value=1>Laissez tomber<option value=2>Autoriser, compter<option value=3>Drop, Count<option value=4>Autoriser, compter, \u00e9v\u00e9nement<option value=5>Drop, Count, Event</select><div style=padding-top:4px>TX / RX par d\u00e9faut</div></div>';b+=
1143
+"<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1144
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>Ajouter un filtre</div></div>"}setDialogMode(11,"Ajouter une strat\u00e9gie de d\u00e9fense du syst\u00e8me",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}
1145
+function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1146
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>Cette politique ne contient aucun filtre.</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Retirer","removeFilterButton("+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+GetFilterById(xxAddDefensePolicyFilters[c]).Name+
1147
+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1148
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1149
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("Ajouter une strat\u00e9gie de d\u00e9fense du syst\u00e8me","Impossible d'ajouter la strat\u00e9gie, erreur #"+d):PullSystemDefense()}
1150
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("Nom",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("Priorit\u00e9",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"Laissez tomber":"Autoriser";1==c.TxDefaultCount&&(d+=", Compter");1==c.TxDefaultMatchEvent&&(d+=", Un \u00e9v\u00e9nement");a+=addHtmlValue("Action TX par d\u00e9faut",d);d=1==c.RxDefaultDrop?"Drop":"Allow";1==c.RxDefaultCount&&(d+=", Count");
1151
+1==c.RxDefaultMatchEvent&&(d+=", Event");a+=addHtmlValue("Action RX par d\u00e9faut",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=addHtmlValue("Filtre #"+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("Politique #",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}
1152
+function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("Supprimer la politique","Impossible de supprimer la strat\u00e9gie, assurez-vous qu'elle n'est pas utilis\u00e9e."):PullSystemDefense()}var xxWireless;function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}function wifiRefresh(){xxdialogMode||PullWireless()}
1153
+var xxWifiState={3:"d\u00e9sactiv\u00e9",32768:"Activ\u00e9 dans S0",32769:"Activ\u00e9 dans S0, Sx / AC"},xxRadioState={2:"Allum\u00e9, connect\u00e9",3:"De",6:"Activ\u00e9, d\u00e9connect\u00e9"},xxWifiAuthenticationMethod={1:"Autre",2:"Ouvert",3:"Cl\u00e9 partag\u00e9e",4:"WPA PSK",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"Autre",2:"WEP",3:"TKIP-RC4",4:"CCMP-AES",5:"Aucun"};
1154
+function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1155
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>Profils sans fil</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>Profils sans fil qu'Intel® AMT utilisera pour la connectivit\u00e9 r\u00e9seau.<br><br>";for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+
1156
+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("Retirer",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>Aucun profil sans fil pr\u00e9sent</i><br>");e+="<br><td class=r2>";e=xxAccountAdminName?e+TableEnd(AddButton("Nouveau profile","showWifiNewProfile()")):e+TableEnd("");
1157
+QH(22,e+"<br>")}}}function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"\u00c9tat sans fil",3,wifiStateDlg,b)}}
1158
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1159
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("Nom de profil",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("Authentification",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("Chiffrement",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("Priorit\u00e9",b.Priority);messagebox("Profil sans fil",c+"</div>")}}
1160
+function wifiRemoveButton(b){xxdialogMode||(QH(66,format('Supprimer le profil sans fil "{0}"?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"Profil sans fil",3,function(){removeWifiButtonEx(b)}))}function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}
1161
+function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1162
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"Ajouter un profil sans fil",3,function(){addWifiProfile()});updateWifiDialog()}}
1163
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1164
+PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1165
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1166
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1167
+var DMTFCPUStatus="Inconnue;Activ\u00e9e;D\u00e9sactiv\u00e9 par l'utilisateur;D\u00e9sactiv\u00e9 par le BIOS (erreur POST);Tourner au ralenti;Autre".split(";"),DMTFMemType="Inconnue;Autre;DRACHME;DRAM synchrone;Cache DRAM;EDO;EDRAM;VRAM;SRAM;RAM;ROM;\u00c9clat;EEPROM;FEPROM;EPROM;CDRAM;3DRAM;SDRAM;SGRAM;RDRAM;DDR;DDR-2;BRAM;FB-DIMM;DDR3;FBD2;DDR4;LPDDR;LPDDR2;LPDDR3;LPDDR4".split(";"),DMTFMemFormFactor=";Autre;Inconnue;SIMM;siroter;Puce;TREMPER;ZIP;Carte propri\u00e9taire;DIMM;TSOP;Rang\u00e9e de jetons;RIMM;SODIMM;SRIMM;FB-DIM".split(";"),
1168
+DMTFProcFamilly={191:"Processeur Intel® Core ™ 2 Duo",192:"Processeur Intel® Core ™ 2 Solo",193:"Processeur Intel® Core ™ 2 Extreme",194:"Processeur Intel® Core ™ 2 Quad",195:"Processeur mobile Intel® Core ™ 2 Extreme",196:"Processeur mobile Intel® Core ™ 2 Duo",197:"Processeur mobile Intel® Core ™ 2 Solo",198:"Processeur Intel® Core ™ i7",199:"Processeur Intel® Celeron® double c\u0153ur"},HardwareInventory;
1169
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("Sauver...","SaveHardwareLog()")+" Les informations sur le mat\u00e9riel sont collect\u00e9es au d\u00e9marrage du syst\u00e8me.");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>Plate-forme</h2>"+
1170
+FullTable({"Mod\u00e8le informatique":c.Model,Fabricant:c.Manufacturer,Version:c.Version,"Num\u00e9ro de s\u00e9rie":c.SerialNumber,"ID syst\u00e8me":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>Plinthe</h2>";b+=FullTable({Fabricant:d.Manufacturer,"Nom du produit":d.Model,Version:d.Version,"Num\u00e9ro de s\u00e9rie":d.SerialNumber,"\u00c9tiquette d'inventaire":d.Tag,"Rempla\u00e7able?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({Vendeur:a.CIM_BIOSElement.response.Manufacturer,
1171
+Version:q,"Date de sortie":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>Processeur "+(parseInt(e)+1)+"</h2>",b+=FullTable({Fabricant:trademarks(d.Manufacturer),Famille:DMTFProcFamilly[c.Family],Version:trademarks(d.Version),"Vitesse de prise maximale":c.MaxClockSpeed+" MHz",Statut:DMTFCPUStatus[c.CPUStatus]},"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=
1172
+a.CIM_PhysicalMemory.responses[e],b+="<h2>Module de m\u00e9moire "+(+e+1)+"</h2>",b+=FullTable({"\u00c9tiquette de banque":c.BankLabel,Fabricant:c.Manufacturer,"Num\u00e9ro de s\u00e9rie":c.SerialNumber,Taille:parseInt(c.Capacity/1048576)+" MB","Facteur de forme":DMTFMemFormFactor[c.FormFactor],Type:DMTFMemType[c.MemoryType],"\u00c9tiquette d'inventaire":c.Tag,"Num\u00e9ro d'article":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+
1173
+1],b+="<h2>Supports de stockage "+(parseInt(e)+1)+"</h2>",b+=FullTable({"Mod\u00e8le":d.Model,"Num\u00e9ro de s\u00e9rie":""==d.SerialNumber?"Unknown":d.SerialNumber,Taille:parseInt(Math.round(1E3*c.MaxMediaSize/1048576))+" MB"},"");b+="<br>";QH(18,b);updateSystemStatus()}}function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","Informations sur le mat\u00e9riel Intel AMT",HardwareInventory)}var AmtSystemPowerSchemes=null;
1174
+function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}
1175
+function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"Politique d'alimentation Intel® AMT",3,showPowerPolicyDlgOk,c)}}
1176
+function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1177
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1178
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1179
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1180
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>G\u00e9rez les comptes d'utilisateurs Intel® AMT pour cet ordinateur.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=
1181
+a.AccessPermission){2==q&&(p+="D\u00e9sactiv\u00e9,");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a.Royaumes[c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="Auditeur,");p=0<=a.Realms.indexOf(3)?p+"Administrateur":1==k?p+"1 royaume":p+(k+" royaumes")}else p+="Administrateur",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&
1182
+(b+=" "+AddButton2("\u00c9diter...","changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="Basculer les comptes cach\u00e9s" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");
1183
+xxAccountAdminName&&(c+=AddButton("Nouveau compte","newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1184
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"Modifier le compte",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1185
+function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"Nouveau compte",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1186
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("Erreur de compte","Param\u00e8tres invalides");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,
1187
+k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1188
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">Administrateur</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1189
+function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["Local seulement","R\u00e9seau uniquement","Tout (local et r\u00e9seau)"];
1190
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("Nom",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("Etat",1==xxAccountEnabledInfo[b].Enabled?"Activ\u00e9e":"d\u00e9sactiv\u00e9"));if(e==xxAccountAdminName)a+=addHtmlValue("Autorisation","Administrateur");else{var a=a+addHtmlValue("Autorisation",xxUserPermissions[c.AccessPermission]),q="";if(0<=c.Realms.indexOf(3))q=
1191
+"Administrateur",0<=c.Realms.indexOf(20)&&(q+=", Auditeur");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+=","),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="Aucun");a+=addHtmlValue("Royaumes","")+"<b>"+q+"</b>"}messagebox("Compte"+e,a+"</div>")}}
1192
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("Navigateur",c,browserResponse,null,!0))}
1193
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>(Vide)":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>Erreur #"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1194
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1195
+function onTerminalStateChange(b,c){c4.value=0==c?"Relier":"D\u00e9connecter";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1196
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["Terminal UTF8","ASCII \u00e9tendu","Intel ASCII"];
1197
+function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["Intel (F10 = ESC + [OM)","Alternatif (F10 = ESC + 0)","VT100 + (F10 = ESC + [OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1198
+function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR + LF",terminal.m.lineFeed="\r\n")}
1199
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="Arr\u00eater la capture";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),
1200
+b+".txt")}delete terminal.m.capture;c3.value="Commencer la capture"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"P\u00e2te",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1201
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1202
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1203
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1204
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1205
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("DataChannel",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1206
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1207
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1208
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1209
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1210
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1211
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1212
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1213
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"Relier":"D\u00e9connecter";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("Bureau \u00e0 distance","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("Bureau \u00e0 distance","The device indicated that this type of connection of not supported."):
1214
+5E4==b.disconnectCode?messagebox("Bureau \u00e0 distance","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1215
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b=", Soft-KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"Param\u00e8tres du bureau \u00e0 distance",3,showDesktopSettingsChanged))}
1216
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1217
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1218
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1219
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1220
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1221
+"8px"),center()))}
1222
+function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"Entr\u00e9e clavier \u00e0 distance",3,showDeskTypeEx,"<div>Saisissez le texte et cliquez sur OK pour le taper \u00e0 distance \u00e0 l'aide d'un clavier anglais am\u00e9ricain. Assurez-vous de placer le curseur distant \u00e0 la bonne position avant de continuer.<div><textarea id=d2typeText style=\"margin-top:5px;width:100%;height:184px;resize:none\" maxlength=2000></textarea>"),Q("d2typeText").focus())}
1223
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1224
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1225
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1226
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1227
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1228
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1229
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1230
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1231
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1232
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1233
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1234
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>Racine</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+'">'+EscapeHtml(r.substring(0,
1235
+70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1236
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1237
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1238
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1239
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1240
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="Tout s\u00e9lectionner",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||
1241
+0==d));QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"Ne rien s\u00e9lectionner":"Tout s\u00e9lectionner";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24PasteButton",(0<p24filetreelocation.length||
1242
+0==d)&&null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}
1243
+function p24createfolder(){setDialogMode(11,"Nouveau dossier",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}
1244
+function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"Supprimer",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1245
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"Renommer",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1246
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1247
+function p24uploadFile(){setDialogMode(11,"T\u00e9l\u00e9verser un fichier",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;
1248
+function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1249
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"P\u00e2te",3,p24pasteFileEx,b)}
1250
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1251
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1252
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1253
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24filetable"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1254
+function getFileSizeStr(b){return 1==b?"1 octet":format("{0} octets",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();
1255
+function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1256
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"T\u00e9l\u00e9charger un fichier",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+a+" />"))}
1257
+function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1258
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1259
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"T\u00e9l\u00e9verser un fichier",10,p24uploadFileCancel,"<div id=p24dfileName>Mise en place ...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1260
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1261
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1262
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1263
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1264
+function iderStart(b){if(!xxdialogMode){b="<div>Montez des images de disque sur un ordinateur Intel® AMT - Exp\u00e9rimental.</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+NoBreak("Disquette (.img)")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+NoBreak("CD-ROM (.iso)")+"</div></div>";setDialogMode(11,"Redirection de stockage",3,iderStart2,
1265
+b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>Au prochain d\u00e9marrage<option value=1>Gracieux<option value=2>Imm\u00e9diat</select><div>D\u00e9but de session</div></div>");b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=b.substring(1,b.length-1))}}
1266
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("Erreur de redirection de stockage","Au moins un fichier d'image disque doit \u00eatre s\u00e9lectionn\u00e9.");else if(1==Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("Erreur de redirection de stockage","Fichier .img non valide.");else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%2048)messagebox("Erreur de redirection de stockage",
1267
+"Fichier .iso non valide.");else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,Q("iderStartType").value)}}
1268
+function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1269
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1270
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"Serveur":"")+"Session IDE-R </b>, Connect\u00e9,"+ider.m.bytesFromAmt+" dans,"+ider.m.bytesToAmt+" en dehors.")}var heatMapWidth=600,heatMapDividor={};
1271
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CDROM </b>, les blocs font {0} octets.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b> Disquette </b>, les blocs font {0} octets.",512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=
1272
+6*(Math.floor(a/(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1273
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"Redirection de stockage",a?a:3,onIderDialogPromptOk,c.html)}
1274
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1275
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"d\u00e9sactiv\u00e9",32769:"BIOS activ\u00e9",32770:"Activation du syst\u00e8me d'exploitation",32771:"BIOS et OS activ\u00e9s"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1276
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1277
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1278
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1279
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1280
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="d\u00e9sactiv\u00e9",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="Activ\u00e9e,"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("D\u00e9tection d'environnement",addLink(c,"editEnvironmentDetection()"));
1281
+b+=TableEntry("Options d'initiation de l'utilisateur",addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>Aucun</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("Connexion initi\u00e9e par l'utilisateur",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));c="<i>Aucun</i>";
1282
+if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("Connexion lanc\u00e9e par l'alerte",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>Aucun</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,
1283
+"PolicyRuleName","P\u00e9riodique");if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format(", chaque {0} seconde",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("Connexion p\u00e9riodique",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>G\u00e9rez les serveurs de gestion \u00e0 distance Intel® AMT.<br><br>";
1284
+if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>Aucun serveur distant trouv\u00e9.</i></div><br>";else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>G\u00e9rez les proxys HTTP utilis\u00e9s pour les connexions de gestion.<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,
1285
+0==c.length)b+="<div style=padding-left:15px><br><i>Aucun proxy configur\u00e9.</i></div><br>";else for(d in c)b+="<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("Ajouter un serveur ...","AddRemoteAccessServer()"),a&&(d+=AddButton("Ajouter un proxy ...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+
1286
+d);QH(58,b)}}var xxEditMpsPolicyType;
1287
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="Initi\u00e9 par l'utilisateur");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(Aucun)",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?" selected":
1288
+"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>Serveur principal</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>ACEI - Externe<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA - Interne</select><div>Type MPS principal</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";
1289
+c+="<option value=-1>(Aucun)";for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>Serveur secondaire</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>ACEI - Externe<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA - Interne</select><div>Type MPS secondaire</div></div>")}e=
1290
+0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>Dur\u00e9e de vie du tunnel (secondes)</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">P\u00e9riodique, intervalle de temps<option value=1"+
1291
+(1==a?" selected":"")+">Moment de la journ\u00e9e, une fois par jour",c+="</select><div>Type de d\u00e9clencheur</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("{0} Connexion",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1292
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1293
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"Intervalle de d\u00e9clenchement (secondes)":"Heure de la journ\u00e9e (HH: MM)"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1294
+function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1295
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1296
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1297
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1298
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="Entrez jusqu'\u00e0 5 suffixes de domaine intranet. Si l'ordinateur se trouve en dehors de ces domaines, les ports locaux Intel® AMT seront ferm\u00e9s et les connexions au serveur distant seront actives.<br><br>");0==editEnvironmentDetectionTmp.length&&(c+="<i>Aucun domaine intranet, d\u00e9tection de l'environnement d\u00e9sactiv\u00e9e.</i><br>");
1299
+for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Retirer","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");
1300
+1==b?QH(69,c):setDialogMode(11,"D\u00e9tection d'environnement",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1301
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("D\u00e9tection d'environnement",format("\u00c9chec de l'ajout du serveur, \u00e9tat {0}",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("D\u00e9tection d'environnement",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}
1302
+function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}
1303
+function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"Tunnel initi\u00e9 par l'utilisateur",3,editUserInitiatedCiraDlg,b)}}
1304
+function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1305
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("Nom d'acc\u00e8s",c.AccessInfo);c.Port&&(a+=addHtmlValue("Port",c.Port));c.CN&&(a+=addHtmlValue("Nom commun",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,0<c.indexOf("Username")?(a+=addHtmlValue("type d'identification","TLS utilisateur et passe / serveur"),a+=addHtmlValue("ID distant",getInstance(xxMPSUserPass,
1306
+c).RemoteID)):(a+=addHtmlValue("type d'identification","Certificat / TLS d'authentification mutuelle"),c=getInstance(xxCertificates,c),a+=addHtmlValue("Nom du certificat",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Serveur distant #"+(b+1),c,showServerDetailsOk,a)}
1307
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1308
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}function showServerDetailsOk2(b,c,a,d){408==d?messagebox("Suppression du serveur distant","Impossible de supprimer le serveur, acc\u00e8s refus\u00e9."):PullRemoteAccess()}function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1309
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("Nom d'acc\u00e8s",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("Suffex DNS",c.NetworkDnsSuffix),a=a+addHtmlValue("Type de proxy",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Http proxy #"+(b+1),c,showProxyDetailsOk,a,b)}
1310
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("Suppression du proxy HTTP","Impossible de supprimer le proxy HTTP, acc\u00e8s refus\u00e9."):PullRemoteAccess()}
1311
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>Nom d\'h\u00f4te FQDN<option value=3>Adresse IPv4<option value=4>Adresse IPv6</select><div>Type de connexion</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>Port</div></div>';b+=
1312
+"<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>Suffixe DNS</div></div>";setDialogMode(11,"Ajouter un proxy HTTP",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1313
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN / nom d'h\u00f4te","Adresse IPv4","Adresse IPv6"][Q("d2type").value])}function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}
1314
+function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("Ajouter un serveur proxy","\u00c9chec de l'ajout du proxy, \u00e9tat"+d):0!=a.Body.ReturnValue?messagebox("Ajouter un serveur proxy",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1315
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>Nom d'h\u00f4te FQDN<option value=3>Adresse IPv4</select><div>Type de connexion</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";a+='<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>Port de serveur</div></div>';
1316
+a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Nom commun du serveur</div></div>";a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";0<b.length&&(a+="<option value=1>Certificat");a+="<option value=2>Identifiant Mot de passe</select><div>Type d'identification</div></div>";a+="<span id=d2utype>";a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Nom d'utilisateur</div></div>";
1317
+a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Mot de passe fort</div></div>";a+="</span>";a+="<span id=d2ctype>";a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>Certificat</div></div></span>";setDialogMode(11,"Ajouter un serveur distant",3,AddRemoteAccessServerOk,
1318
+a);AddRemoteAccessServerUpdate()}
1319
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+Q("d2cert").value+
1320
+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1321
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("Ajouter un serveur Internet",format("\u00c9chec de l'ajout du serveur, \u00e9tat {0}",d)):0!=a.Body.ReturnValue?messagebox("Ajouter un serveur Internet",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1322
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"Nom d'h\u00f4te":"Adresse IPv4");QV("d2utype",2==Q("d2auth").value);QV("d2ucn",
1323
+3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1324
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>Nom et domaine</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+(b?"selected":"")+'>Partag\u00e9, comme OS<option value="false" '+
1325
+(b?"":"selected")+">D\u00e9di\u00e9, diff\u00e9rent de l'OS</select><div>Partage de noms</div></div>");setDialogMode(11,"Nom de l'ordinateur",3,editNameDlgOk,c)}}
1326
+function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}
1327
+function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"Client DNS dynamique",3,showEditDnsDlgOk)}}
1328
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1329
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"Caract\u00e9ristiques Intel® AMT",3,featuresDlgOk))}
1330
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("Erreur","RedirectionService, erreur RequestStateChange"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,0,function(a,c,d,e){200!=e?messagebox("Erreur","KVMRedirectionSAP, erreur RequestStateChange"+
1331
+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("Erreur","Erreur PUT de RedirectionService"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}
1332
+function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"Consentement de l'utilisateur",3,consentDlgOk)}}
1333
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="Lier l'adresse locale;Adresse locale du r\u00e9seau;Adresse globale;Configur\u00e9 par l'utilisateur;Interdit;DAD en cours;valide;obsol\u00e8te;pr\u00e9f\u00e9r\u00e9 / d\u00e9conseill\u00e9;expir\u00e9;collision;interdit".split(";");
1334
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+","+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"Adresses IPv6 pour l'interface filaire":"Adresses IPv6 pour l'interface sans fil",1,null,a+TableEnd())}}
1335
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 d\u00e9sactiv\u00e9");QH("d21l1","IPv6 activ\u00e9, automatique");QH("d21l2","IPv6 activ\u00e9, adresse automatique + manuelle");d21o0.checked=!c;d21o1.checked=
1336
+c&&!ipv6manual;d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"Prise en charge IPv6 pour l'interface filaire":"Prise en charge IPv6 pour l'interface sans fil",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1337
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1338
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1339
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1340
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1341
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Prise en charge IPv6",format("Impossible de d\u00e9finir l'\u00e9tat IPv6, erreur {0}",d))}
1342
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"R\u00e9ponse Intel® AMT Ping",3,showPingActionDlgOk)}}
1343
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1344
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","Configuration automatique \u00e0 l'aide du serveur DHCP");QH("d21l2","Configuration statique \u00e0 l'aide des param\u00e8tres IPv4 ci-dessous");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=!d21o1.checked;
1345
+c30.value=isIpAddress(b.IPAddress,"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"Param\u00e8tres IPv4",3,showIPSetupDlgOk)}}
1346
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6 activ\u00e9, adresse automatique + manuelle"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1347
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1348
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Param\u00e8tres IPv4",format("Impossible de d\u00e9finir les param\u00e8tres r\u00e9seau, erreur {0}",d))}amtPowerBootCapabilities=null;
1349
+function showPowerActionDlg(){xxdialogMode||(statusbox("Actions de puissance","V\u00e9rification des capacit\u00e9s ..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1350
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","Power up",2);b&1&&(addOption("d5actionSelect","R\u00e9initialiser",10),addOption("d5actionSelect","Cycle de puissance",5),addOption("d5actionSelect","\u00c9teindre",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect","Mise sous tension du diagnostic",
1351
+300),b&1&&addOption("d5actionSelect","R\u00e9initialiser au diagnostic",301));9<amtversion&&b&1&&(addOption("d5actionSelect","R\u00e9veil du syst\u00e8me d'exploitation en veille",500),addOption("d5actionSelect","\u00c9conomie d'\u00e9nergie du syst\u00e8me d'exploitation",501),addOption("d5actionSelect","Soft-off",12),addOption("d5actionSelect","Red\u00e9marrage en douceur",14),addOption("d5actionSelect","Dormir",4),addOption("d5actionSelect","Hiberner",7));1==amtPowerBootCapabilities.BIOSSetup&&
1352
+(b&2&&addOption("d5actionSelect","Mettez le BIOS sous tension",100),b&1&&addOption("d5actionSelect","R\u00e9initialiser au BIOS",101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","Mise sous tension pour effacement s\u00e9curis\u00e9",104),b&1&&addOption("d5actionSelect","R\u00e9initialiser pour effacer s\u00e9curis\u00e9",105));b&1&&addOption("d5actionSelect","R\u00e9initialiser sur la disquette IDE-R",200);b&2&&addOption("d5actionSelect","Mettez sous tension la disquette IDE-R",
1353
+201);b&1&&addOption("d5actionSelect","R\u00e9initialiser sur CD-ROM IDE-R",202);b&2&&addOption("d5actionSelect","Allumer le CD-ROM IDE-R",203);b&1&&addOption("d5actionSelect","R\u00e9initialiser \u00e0 PXE",400);b&2&&addOption("d5actionSelect","Allumez PXE",401);addOption("d5actionSelect","Action personnalis\u00e9e ...",999);5<amtversion&&addOption("d5actionSelect","Consentement de l'utilisateur ...",998);setDialogMode(5,"Actions de puissance",3,powerActionDlgCheck)}else messagebox("Action de puissance",
1354
+format("Impossible d'obtenir les capacit\u00e9s du syst\u00e8me, erreur {0}",d))}
1355
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Action de puissance termin\u00e9e."):QH(66,format("Erreur d'action d'alimentation # {0}.",e));setDialogMode(1,"Action de puissance",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="Confirmer l'ex\u00e9cution d'Intel® Remote Secure Erase?<br>Saisissez le mot de passe d'effacement s\u00e9curis\u00e9 si n\u00e9cessaire.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>Mot de passe</div></div><br><div style=color:red><b> AVERTISSEMENT: </b> Cela effacera les donn\u00e9es sur le syst\u00e8me distant.</div>",rsepass=
1356
+1,setDialogMode(11,"Actions de puissance",3,powerActionDlg,b)):powerActionDlg()}
1357
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("Action de puissance","V\u00e9rification de l'\u00e9tat ...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&(c=!1);
1358
+c?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1359
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1360
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1361
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"Action de puissance personnalis\u00e9e",
1362
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1363
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Action de puissance termin\u00e9e."):QH(66,format("Erreur d'action d'alimentation # {0}.",e));setDialogMode(1,"Action de puissance",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=
1364
+Q("d24BiosSecureBoot").checked,AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=
1365
+Q("d24LockSleepButton").checked,AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),statusbox("Action de puissance","V\u00e9rification de l'\u00e9tat ..."),
1366
+amtstack.Get("IPS_OptInService",powerActionResponse0,0,1))}
1367
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("Action de puissance",format("Erreur # {0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"Consentement de l'utilisateur",11,powerActionSendConsent),checkConsentDisplay(),consentChanged()):(statusbox("Action de puissance","D\u00e9marrage de l'opt-in ..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,
1368
+0,1)):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Consentement de l'utilisateur","Le consentement de l'utilisateur n'est pas n\u00e9cessaire."):(statusbox("Action de puissance","Obtention des param\u00e8tres de d\u00e9marrage ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1369
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Action de puissance",format("Erreur #",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Erreur de consentement de l'utilisateur",a.Body.ReturnValueStr.replace(/_/g," ")):(d6ConsentText.value="",setDialogMode(6,"Consentement de l'utilisateur",11,powerActionSendConsent),checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",
1370
+function(a,b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1371
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("Action de puissance","Envoi du consentement de l'utilisateur ..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1372
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("Action de puissance",format("Erreur # {0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Consentement de l'utilisateur","Le consentement de l'utilisateur a r\u00e9ussi."):(statusbox("Action de puissance","V\u00e9rification de l'\u00e9tat ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1373
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("Action de puissance",format("Erreur # {0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=AvdPowerDlg.IDERBootDevice,e.LockKeyboard=
1374
+AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&(e.RSEPassword=
1375
+AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,!0===e.SecureErase&&
1376
+0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("Action de d\u00e9marrage: "+b);console.log("D\u00e9finition des param\u00e8tres de d\u00e9marrage: "+ObjectToString2(e));statusbox("Action de puissance",
1377
+"D\u00e9finition des param\u00e8tres de d\u00e9marrage ...");amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,function(a,b,c,d){200!=d?messagebox("Action de puissance",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1378
+function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("Action de puissance",format("PUT AMT_BootSettingData, erreur # {0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("Action de puissance","Configuration du prochain d\u00e9marrage ..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1379
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1380
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1381
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("Action de puissance","Ex\u00e9cution d'une action de puissance ...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);
1382
+targetPowerAction=b;11==b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("Action de puissance","Jeu d'actions de d\u00e9marrage suivant.")}}function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"Action de puissance termin\u00e9e."),setDialogMode(1,"Action de puissance",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}
1383
+function powerActionResponse5(b,c,a,d){}function consentChanged(){QE("c49",6==d6ConsentText.value.length)}function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1384
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1385
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1386
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1387
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>G\u00e9rez le stockage Intel® AMT pour cet ordinateur.<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+
1388
+" / "+r):e+"Racine";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("T\u00e9l\u00e9charger","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" octets</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==
1389
+n&&(wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>Aucun fichier trouv\u00e9.</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+
1390
+(q?AddButton("T\u00e9l\u00e9charger...","UploadToStorage()"):""));QH(61,a)}else QH(61,"Impossible de charger les donn\u00e9es de stockage ...<br/>"+AddButton("Rafra\u00eechir","PullStorage()"))}
1391
+function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("Vendeur",b));""!=c&&(e+=addHtmlValue("Application",c));e+=addHtmlValue("Nom",a);e+=addHtmlValue("Taille",q.size+" bytes");q.link&&(e+=addHtmlValue("Lien",q.link));setDialogMode(11,"Article de stockage",5,showStorageDetailsEx,e,d)}}function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}
1392
+function storageDeleteResponse(b,c){200!=c?messagebox("Espace de rangement",format("Impossible de supprimer le fichier (ERR {0}), v\u00e9rifiez que l'ordinateur est sous tension.",c)):PullStorage()}function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}
1393
+function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}
1394
+function PushToStorageResponse(b,c,a){200!=c?messagebox("Espace de rangement",format("Impossible de pousser le fichier (ERR {0}), v\u00e9rifiez que l'ordinateur est sous tension.",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1395
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>S\u00e9lectionnez un petit fichier \u00e0 t\u00e9l\u00e9charger vers le stockage et entrez un fournisseur, une application et un nom de fichier.<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>T\u00e9l\u00e9verser un fichier</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+
1396
+'<br><div style=height:16px><input id=mstoragevendor placeholder="Vendeur" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>Nom du vendeur</div></div>';a+='<br><div style=height:16px><input id=mstorageapplication placeholder="App" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>Nom de l\'application</div></div>';a+='<br><div style=height:16px><input id=mstoragefilename placeholder="Nom de fichier" maxlength=11 style=float:right;width:240px><div>Nom de fichier</div></div>';
1397
+a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>Type MIME</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="S\'il est d\u00e9fini, cr\u00e9e un lien vers ce contenu \u00e0 partir de la page Web principale">Lien</div></div><br>';a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';
1398
+a+="</datalist>";a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"T\u00e9l\u00e9chargement de stockage",3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}
1399
+function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1400
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1401
+b}
1402
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1403
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1404
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," journ\u00e9es").replace("H"," heures").replace("M"," minutes");b=b.replace(" 1 jour"," Un jour").replace(" 1 heure"," 1 heure").replace(" 1 minutes"," 1 minute");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1405
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>G\u00e9rez les alarmes de r\u00e9veil.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, r\u00e9veiller sur "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," \u00e0"),void 0!=d[c].Interval&&(a+=" et chacun"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&
1406
+(a+=", supprimer une fois termin\u00e9"),b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("\u00c9diter...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>Aucune alarme de r\u00e9veil enregistr\u00e9e.</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("Supprimer toutes les alarmes",
1407
+"RemoveAllAlarms()")+AddButton("Ajouter","showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1408
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1409
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"Supprimer toutes les alarmes de r\u00e9veil",3,RemoveAllAlarmsEx,"Confirmer la suppression de toutes les alarmes de r\u00e9veil?")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1410
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1411
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1412
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"Ajouter une nouvelle alarme",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1413
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1414
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("Ajouter une alarme",format("Impossible d'ajouter l'alarme. Statut: {0}. <br/> V\u00e9rifiez que l'alarme est pour une heure future.",d)):0!=c.Body.ReturnValue?messagebox("Ajouter une alarme",format("\u00c9chec de l'ajout de l'alarme {0}. <br/> V\u00e9rifiez que l'alarme est pour une heure future.",
1415
+c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("Modifier l'alarme",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1416
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("Nom",c.ElementName)+addHtmlValue("Heure de r\u00e9veil",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("Interne",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("Apr\u00e8s le r\u00e9veil",1==c.DeleteOnCompletion?"Supprimer l'alarme":"Garder l'alarme")+"</div>";messagebox(format("Alarme {0}",c.ElementName),a);setDialogMode(11,
1417
+"Alarme"+c.ElementName,5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"Script de lancement",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1418
+function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1419
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1420
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("Script de lancement",
1421
+"Fichier de script non valide.")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1422
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1423
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1424
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1425
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1426
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("Modifier {0}",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1427
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1428
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1429
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1430
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1431
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1432
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1433
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1434
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1435
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1436
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1437
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1438
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1439
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1440
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1441
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1442
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1443
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1444
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"Fichier binaire,"+script_BlockScript[c].vars[d].value.length+" octets":"Pas encore d\u00e9fini");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+="<tr><td style=height:3px></table>"}b+=
1445
+"</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">D\u00e9marrez votre script en glissant-d\u00e9posant des blocs du c\u00f4t\u00e9 gauche dans cette zone de script.<div>');QH("scriptblocks",b+"<div style=height:80px></div>");for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1446
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1447
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}
1448
+function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"Nouveau script",3,script_newScriptDlgOk,"<br>R\u00e9initialiser et effacer l'\u00e9diteur de script?")}function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1449
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("Erreur de compilation de script",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","Arr\u00eat\u00e9");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,_mode:"Firmware"}),editscriptstate.wsstack=
1450
+wsstack,editscriptstate.amtstack=amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}
1451
+function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["Arr\u00eat\u00e9","Fonctionnement","En pause"];
1452
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="Arr\u00eat\u00e9, aucun script";b&&null!=b&&(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,b.ip)));50<c.length&&
1453
+(c=c.substring(0,50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1454
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"Bloc de script",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1455
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1456
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1457
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1458
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1459
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1460
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1461
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}var httpErrorTable={200:"D'accord",401:"Erreur d'authentification",408:"Erreur de temporisation",601:"Erreur d'analyse WSMAN",602:"Impossible d'analyser l'en-t\u00eate de r\u00e9ponse HTTP",603:"R\u00e9ponse d'\u00e9num\u00e9ration HTTP inattendue",604:"R\u00e9ponse de pull HTTP inattendue",997:"Domaine de r\u00e9sum\u00e9 non valide"};
1462
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("Erreur # {0}",b)),401==b&&QH(5,'Erreur d\'authentification<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1463
+function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1464
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1465
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1466
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("Erreur d'appel",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}
1467
+function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}
1468
+function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="Rafra\u00eechir" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}
1469
+function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}
1470
+function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}
1471
+function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1472
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1473
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1474
+</script>
\ No newline at end of file
public/commander-it.htm
new
+1464
@@ -0,0 +1,1464 @@
1
+<!DOCTYPE html><html lang="it" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=Collegare onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>Disconnected</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>Stato del sistema</a><p id=go14 class=nav1 onclick=go(14)><a>Desktop remoto</a><p id=go24 class=nav1 onclick=go(24)> <a>File</a><p id=go13 class=nav1 onclick=go(13)><a>Serial-over-LAN</a><p id=go2 class=nav1 onclick=go(2)><a>Informazioni hardware</a><p id=go6 class=nav1 onclick=go(6)><a>Registro eventi</a><p id=go15 class=nav1 onclick=go(15)><a>Registro di audizione</a><p id=go21 class=nav1 onclick=go(21)><a>Conservazione</a><p id=go8 class=nav1 onclick=go(8)><a>Impostazioni di rete</a><p id=go17 class=nav1 onclick=go(17)><a>Impostazioni Internet</a><p id=go16 class=nav1 onclick=go(16)><a>Impostazioni sicurezza</a><p id=go19 class=nav1 onclick=go(19)><a>Presenza agente</a><p id=go18 class=nav1 onclick=go(18)><a>Difesa del sistema</a><p id=go11 class=nav1 onclick=go(11)><a>Profili utente</a><p id=go22 class=nav1 onclick=go(22)><a>Sottoscrizioni</a><p id=go23 class=nav1 onclick=go(23)><a>Wake Alarms</a><p id=go20 class=nav1 onclick=go(20)><a>Editor di script</a><p id=go12 class=nav1 onclick=go(12)><a>Browser WSMAN</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value="Mappa del disco" onclick=iderToggleDiskMap()><input type=button value="Interrompi sessione IDE-R" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>Floppy, i blocchi sono 512 byte.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CD-ROM, i blocchi sono 2048 byte.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="Stop Script" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>Esecuzione di script</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>Il firmware di questo computer dovrebbe essere aggiornato, <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>per favore controlla qui</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>Caricamento in corso...</h1></div><div id=p1 style=display:none><h1>Stato del sistema</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>Informazioni hardware</h1><span id=18></span></div><div id=p6 style=display:none><h1>Registro eventi</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>Impostazioni di rete</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>Profili utente</h1><span id=23></span></div><div id=p12 style=display:none><h1>Browser WSMAN</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=domanda style=margin:4px onclick=wsmanQuery()><input type=button value=Chiaro style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=Filtro style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Terminale seriale su LAN</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>La porta di reindirizzamento Intel® AMT o la funzionalità Serial-over-LAN è disabilitata<span id=28>, fai clic qui per abilitarlo.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Il computer remoto non è acceso, fare clic qui per emettere un comando di accensione.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Azioni di potere ..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="Inizia l'operazione di montaggio del disco remoto" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Avvia acquisizione" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=Collegare onclick=connectTerminal(event) disabled="disabled"> <span id=31>Disconnected.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR + LF" title="Cambia ciò che invierà il tasto invio" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="Attiva / disattiva le dimensioni del terminale" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Intel (F10 = ESC + [OM)" title="Cambia il tipo di emulazione dei tasti da F1 a F10" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Ascii esteso" title="Attiva / disattiva il tipo di emulazione terminale" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Backspace onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=Incolla disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>Desktop remoto</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>La porta di reindirizzamento Intel® AMT o la funzionalità KVM è disabilitata<span id=43>, fai clic qui per abilitarlo.</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Il computer remoto non è acceso, fare clic qui per emettere un comando di accensione.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="Gira a sinistra" onclick=drotate(-1)>↺</div><div class=rb title="Ruota a destra" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="Attiva / disattiva la modalità a schermo intero" onkeypress="return false" onkeydown="return false" value=Pieno onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="Salva uno screenshot del desktop remoto" onkeypress="return false" onkeydown="return false" value=Salva... onclick=deskSaveImage() style=margin-right:3px><input type=button value=Impostazioni... title="Modifica le impostazioni del desktop remoto" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="Inizia l'operazione di montaggio del disco remoto" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="Cambia lo stato di alimentazione della macchina remota" onkeypress="return false" onkeydown="return false" value="Azioni di potere ..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=Collegare onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>Disconnected.</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>Vincere<option value=1>Win + Giù<option value=2>Win + Up<option value=3>Win + L<option value=4>Win + M<option value=20>Win + R<option value=23>Win + Sinistra<option value=24>Win + Destra<option value=5>Maiusc + Win + M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=Spedire onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=genere onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>Schermo nero </span><span id=53><input id=54 type=checkbox>Visualizzare solamente </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>Registro di audizione</h1><span id=56></span></div><div id=p16 style=display:none><h1>Impostazioni sicurezza</h1><span id=57></span></div><div id=p17 style=display:none><h1>Impostazioni Internet</h1><span id=58></span></div><div id=p18 style=display:none><h1>Difesa del sistema</h1><span id=59></span></div><div id=p19 style=display:none><h1>Presenza agente</h1><span id=60></span></div><div id=p20 style=display:none><h1>Editor di script</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>Fermato</div><div><input type=button value="Visualizza editor" title="Passa alla vista dell'editor della riga di script" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="Visualizza Builder" title="Passa alla vista dell'editor di blocco" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=Nuovo... title="Cancella l'editor di script" onclick=script_newScriptDlg()><input type=button value=Caricare... title="Carica uno script dal file" onclick=script_runScriptDlg()><input type=button value=Salva... title="Salva uno script in un file" onclick=script_saveScript(event)><input type=button value=Ricomincia title="Compilare lo script e prepararsi a eseguirlo dall'inizio" onclick=resetScriptButton()><input type=button value=Continua title="Esegui lo script dal punto di esecuzione corrente" onclick=runScriptButton()><input type=button value=Rompere title="Metti in pausa l'esecuzione dello script" onclick=breakScriptButton()><input type=button value=Passo title="Esegui un passaggio dello script" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>Script Builder</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="Blocchi filtro ..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>copione</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>Script compilato</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>variabili</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>consolle</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>Conservazione</h1><span id=61></span></div><div id=p22 style=display:none><h1>Abbonamenti ad eventi</h1><span id=62></span></div><div id=p23 style=display:none><h1>Wake Alarms</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>File</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=Su> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="Seleziona tutto" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=Rinominare onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=Elimina onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="Nuova cartella" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=Caricare onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=Taglio onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=copia onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=Incolla onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=ricaricare onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">Ordina per nome<option value=2>Ordina per dimensione<option value=3>Ordinare per data<option value=4>Scendi per nome<option value=5>Scendi per dimensione<option value=6>Scendi per data</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>Nome utente</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Parola d'ordine*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>conferma password</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>Locale<option value=1>Rete<option value=2>Qualunque</select><div>Autorizzazione</div></div><div>Autorizzazioni concesse</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>* Minimo 8 caratteri con maiuscolo, minuscolo, 0-9 e uno di! @ # $% ^ & * () + -</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>Azione di potere</div></div><div><span style=color:red>Avvertimento:</span>Alcune azioni energetiche possono causare la perdita di dati e la disconnessione delle sessioni di reindirizzamento del desktop, del terminale o del disco.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>Codice di consenso</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>Display principale<option value=1>Display secondario<option id=d6ThirdDisplay value=2 style=display:none>Terzo display</select><div>Visualizzazione del consenso</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, Colore<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>Codifica immagine</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>Mostra cursore del mouse locale</label><br><label><input type=checkbox id=d7showcad>Mostra Ctrl-Alt-Canc</label><br><label><input type=checkbox id=d7limitFrameRate>Frame rate limite</label><br><label><input type=checkbox id=d7noMouseRotate>Non ruotare il mouse</label><br></div><div>Altre impostazioni</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">Software KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>Qualità</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87,5%<option value=768>75%<option value=640>62,5%<option value=512>50%<option value=384>37,5%<option value=256>25%<option value=128>12,5%</select><div style=height:20px>scalata</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=Admin style=float:right;width:220px><div style=height:20px>Nome utente</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>Parola d'ordine</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>Porta di reindirizzamento</label><label id=c15 style=display:block><input type=checkbox id=c16>Desktop remoto KVM</label><label style=display:block><input type=checkbox id=c17>IDE-reindirizzamento<br></label><label style=display:block><input type=checkbox id=c18>Serial-over-LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>Non richiesto<br></label><label><input type=radio name=d10 id=c20 value=1>Richiesto solo per KVM<br></label><label><input type=radio name=d10 id=c21 value=4294967295>Sempre richiesto<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Massimo 32 caratteri"><div title="Massimo 32 caratteri">Nome del profilo</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Massimo 32 caratteri"><div title="Massimo 32 caratteri">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>Priorità</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>Autenticazione</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>Nessuna</select><div>crittografia</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Lunghezza tra 8 e 63 caratteri"><div title="Lunghezza tra 8 e 63 caratteri">Parola d'ordine*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Lunghezza tra 8 e 63 caratteri"><div title="Lunghezza tra 8 e 63 caratteri">conferma password</div></div></div><div id=dialog19 style=margin:auto;margin:3px>Ciò salverà l'intero stato di Intel® AMT per questa macchina in un file. Le password non verranno salvate, ma potrebbero essere inclusi alcuni dati sensibili.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>Disabilitato<br><input type=radio name=d20 id=d20b value=1>Risposta ICMP<br><input type=radio name=d20 id=d20c value=2>Risposta RMCP<br><input type=radio name=d20 id=d20d value=3>Risposta ICMP e RMCP<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>Sincronizzazione dell'indirizzo IP del sistema operativo</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>indirizzo IP</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Contrassegno di sottorete</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>porta</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>DNS primario</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>DNS alternativo</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>Disabilitato<option value=1>Disabilitato, aggiornamento DHCP<option value=2>Abilitato</select><div>Client DNS dinamico</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>Intervallo di aggiornamento (minuti)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (secondi)</div></div><div style=font-size:10px><br>L'intervallo di defaut è di 1440 minuti, il TTL predefinito è di 900 secondi.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>Accendere<option value=10>Ripristina<option value=5>Ciclo di alimentazione<option value=8>Spegnere<option id=d24p500 value=500>OS Wake from Standby<option id=d24p501 value=501>Risparmio energetico del sistema operativo<option value=999>Imposta le opzioni di avvio</select><div>Comando remoto</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>Pausa BIOS</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>Applica avvio sicuro</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>Impostazioni del BIOS</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>Forza eventi di avanzamento</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>Blocca il pulsante di accensione</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>Pulsante di reset del blocco</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>Pulsante di blocco del sonno</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>Blocca tastiera</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>Bypass password BIOS</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>BIOS Reflash</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>Modalità sicura</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>Usa IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Serial-over-LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>Intel® Remote Secure Erase</label><br></div></div><div>Impostazioni di avvio</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Nessuna<option id=ForceDVDBootOption value=1>Forza avvio CD / DVD<option id=ForcePXEBootOption value=2>Forza avvio PXE<option id=ForceHDBootOption value=3>Forza l'avvio del disco rigido<option id=ForceDiagBootOption value=4>Forza avvio diagnostico</select><div>Boot Source</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Nessuna<option value=1>Indice 1<option value=2>Indice 2<option value=3>Indice 3<option value=3>Indice 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Avvio da floppy<option value=1>Avvia su CD-ROM</select><div>Dispositivo di avvio IDER</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Default del sistema<option id=c45 value=1>Silenzioso<option id=c46 value=2>verboso<option id=c47 value=3>Schermo nero</select><div>Verbocity</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>Password RSE</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>Nome dell'allarme</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Data di sveglia (anno-mese-giorno)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>Tempo di sveglia (ora: min: sec)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Intervallo (giorni-ore-min)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>Mantieni l'allarme<option value=1>Elimina al completamento</select></div><div style=padding-top:4px>Dopo la veglia</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=Annulla style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=ok style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=Elimina style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"Dati non validi":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",
92
+v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"Cane da guardia dell'agente"+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... cambiato in"+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"Caso di intrusione";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"\u00c8 stata stabilita una sessione seriale su LAN remota.";if(1==c[2])return"Sessione remota su seriale via LAN terminata. Il controllo utente \u00e8 stato ripristinato.";
93
+if(2==c[2])return"\u00c8 stata stabilita una sessione di reindirizzamento IDE remoto.";if(3==c[2])return"Sessione di reindirizzamento IDE remoto terminata. Il controllo utente \u00e8 stato ripristinato."}if(36==a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="cablata"),4294967293==a?"Tutti i filtri di pacchetti ricevuti sono stati abbinati"+b+" interfaccia.":4294967292==a?"Tutto il filtro pacchetti in uscita \u00e8 stato associato"+b+" interfaccia.":4294967290==a?"Il filtro pacchetti contraffatto \u00e8 stato abbinato"+
94
+b+" interfaccia.":"Filtro"+a+" \u00e8 stato abbinato"+b+" interfaccia.";if(192==a)return 0==c[2]?"Politica di sicurezza invocata. Parte o tutto il traffico di rete (TX) \u00e8 stato arrestato.":2==c[2]?"Politica di sicurezza invocata. Parte o tutto il traffico di rete (RX) \u00e8 stato arrestato.":"Politica di sicurezza invocata.";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"Richiesta dell'utente per la connessione remota.";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"Errore EAC: tenta di ottenere la postura mentre NAC in Intel AMT \u00e8 disabilitato.";
95
+if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"Errore HWA: errore generale"}return 6==a?"Autenticazione fallita"+(c[1]+(c[2]<<8))+" volte. Il sistema potrebbe essere sotto attacco.":30==a?"Nessun supporto di avvio":32==a?"Blocco del sistema operativo o interruzione dell'alimentazione":35==a?"Errore di avvio del sistema":37==a?"Firmware di sistema avviato (almeno una CPU si sta eseguendo correttamente).":"Tipo di sensore sconosciuto #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);else{var g,h,e=
96
+r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);1==b.InitiatorType&&
97
+(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>Locale</i>",g=5);3==b.InitiatorType&&(b.Initiator="<i>Porta predefinita KVM</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,
98
+b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/","http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+
99
+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,
100
+g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),
101
+function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};l.CompleteName=function(a){if(0==
102
+a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
103
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
104
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
105
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
106
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
107
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
108
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
109
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
110
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
111
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
112
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
113
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
114
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
115
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
116
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
117
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
118
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
119
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
120
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
121
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
122
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
123
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
124
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
125
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
126
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
127
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
128
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
129
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
130
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
131
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
132
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
133
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
134
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
135
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
136
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
137
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
138
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
139
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
140
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
141
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
142
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
143
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
144
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
145
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
146
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
147
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
148
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
149
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
150
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
151
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
152
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
153
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="Non specificato. ; Nessuna memoria di sistema fisicamente installata nel sistema. ; Nessuna memoria di sistema utilizzabile, tutta la memoria installata ha riscontrato un errore irreversibile. ; Errore irreversibile del disco fisso / ATAPI / IDE. ; Errore irreversibile della scheda di sistema. ; Dischetto irreversibile errore del sottosistema. ; Errore irreversibile del controller del disco fisso. ; Errore irreversibile della tastiera PS / 2 o USB. ; Supporto di avvio rimovibile non trovato. ; Errore irreversibile del controller video. ; Nessun dispositivo video rilevato. ; Corruzione del firmware (BIOS) ROM rilevata. ; Mancata corrispondenza della tensione della CPU (i processori che condividono la stessa alimentazione hanno requisiti di tensione non corrispondenti) ; Errore di corrispondenza della velocit\u00e0 della CPU".split(";"),
154
+h="Non specificato. ; Inizializzazione della memoria. ; Avvio inizializzazione e test del disco rigido ; Inizializzazione processore (i) secondario ; Autenticazione utente ; Impostazione del sistema avviato dall'utente ; Configurazione risorsa USB ; Configurazione risorsa PCI ; Inizializzazione ROM opzionale ; Inizializzazione video ; Inizializzazione cache ; SM Inizializzazione bus ; Inizializzazione controller tastiera ; Inizializzazione controller integrato / controller di gestione ; Collegamento docking station ; Abilitazione docking station ; Espulsione stazione docking ; Disabilitazione docking station ; Chiamata vettoriale di riattivazione sistema operativo ; Avvio processo di avvio sistema operativo ; Inizializzazione scheda madre o scheda madre ; Riservato ; Inizializzazione floppy ; Test tastiera ; Test dispositivo di puntamento ; Inizializzazione processore primario".split(";"),
155
+g="Non specificato ; Altro ; Sconosciuto ; Processore ; Disco ; Periferiche ; Modulo di gestione del sistema ; Scheda di sistema ; Modulo di memoria ; Modulo del processore ; Alimentazione ; Scheda aggiuntiva ; Scheda del pannello anteriore ; Scheda del pannello posteriore ; Scheda del sistema di alimentazione ; Backplane dell'unit\u00e0 ; Espansione interna del sistema scheda ; Altre schede di sistema ; Scheda del processore ; Unit\u00e0 di potenza ; Modulo di potenza ; Scheda di gestione dell'alimentazione ; Scheda del pannello posteriore del telaio ; Telaio del sistema ; Sottotelaio ; Altre schede del telaio ; Alloggiamento unit\u00e0 disco ; Alloggiamento periferiche ; Alloggiamento dispositivo ; Ventola di raffreddamento ; Unit\u00e0 di raffreddamento ; Cavo di interconnessione ; Dispositivo di memoria ; Software di gestione del sistema ; BIOS ; Intel (r) ME ; Bus di sistema ; Gruppo ; Intel (r) ME ; Ambiente esterno ; Batteria ; Lama di elaborazione ; Interruttore di connettivit\u00e0 ; Modulo processore / memoria ; Modulo I / O ; Modulo I / O del processore ; Firmware del controller di gestione ; Canale IPMI ; Bus PCI ; Bus PCI express ; Bus SCSI ; Bus SATA / SAS ; Bus lato anteriore del processore".split(";");
156
+l.RealmNames=";; Reindirizzamento ;; Risorse hardware ; Telecomando ; Archiviazione ; Gestione eventi ; Amministratore archiviazione ; Presenza agente locale ; Presenza agente remoto ; Interruttore automatico ; Tempo di rete ; Informazioni generali ; Aggiornamento firmware ; EIT ; LocalUN ; Controllo accesso endpoint ; Controllo accesso endpoint Amministratore ; Lettore registro eventi ; Registro controllo ; Regno ACL ;;; Sistema locale".split(";");l.WatchdogCurrentStates={1:"Non iniziato",2:"Fermato",
157
+4:"In esecuzione",8:"Scaduto",16:"Sospeso"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),D={1:"",
158
+2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"Security Admin",17:"RCO",18:"Manager di reindirizzamento",19:"Firmware Update Manager",20:"Registro di controllo della sicurezza",21:"Tempo di rete",22:"Amministrazione di rete",23:"Amministrazione archiviazione",24:"Manager di eventi",25:"Responsabile dell'interruttore",26:"Manager di presenza agente",27:"Configurazione senza fili",28:"EAC",29:"KVM",30:"Eventi di attivazione dell'utente",32:"Oscuramento dello schermo",33:"Eventi del cane da guardia",1600:"Provisioning avviato",
159
+1601:"Provisioning completato",1602:"Voce ACL aggiunta",1603:"Voce ACL modificata",1604:"Voce ACL rimossa",1605:"Accesso ACL con credenziali non valide",1606:"Stato di ingresso ACL",1607:"Stato TLS modificato",1608:"Set di certificati server TLS",1609:"Rimuovi certificato server TLS",1610:"Aggiunto certificato radice attendibile TLS",1611:"Certificato radice radice TLS rimosso",1612:"Set chiavi precondivise TLS",1613:"Impostazioni Kerberos modificate",1614:"Chiave principale Kerberos modificata",
160
+1615:"Ripristino contatori flash usurati",1616:"Pacchetto di alimentazione modificato",1617:"Imposta la modalit\u00e0 di autenticazione del realm",1618:"Aggiorna il client alla modalit\u00e0 di controllo amministratore",1619:"Annullamento del provisioning avviato",1700:"Accensione eseguita",1701:"Spegnimento eseguito",1702:"Ciclo di potenza eseguito",1703:"Ripristino eseguito",1704:"Imposta le opzioni di avvio",1800:"Sessione IDER aperta",1801:"Sessione IDER chiusa",1802:"IDER abilitato",1803:"IDER disabilitato",
161
+1804:"Sessione SoL aperta",1805:"Sessione SoL chiusa",1806:"SoL abilitato",1807:"SoL disabilitato",1808:"Sessione KVM avviata",1809:"Sessione KVM terminata",1810:"KVM abilitato",1811:"KVM disabilitato",1812:"Password VNC non riuscita 3 volte",1900:"Firmware aggiornato",1901:"Aggiornamento firmware non riuscito",2E3:"Registro controllo sicurezza cancellato",2001:"Politica di controllo della sicurezza modificata",2002:"Registro controllo sicurezza disabilitato",2003:"Registro controllo sicurezza abilitato",
162
+2004:"Registro controllo di sicurezza esportato",2005:"Registro controllo di sicurezza recuperato",2100:"Intel® ME Time Set",2200:"Parametri TCPIP impostati",2201:"Nome host impostato",2202:"Set di nomi di dominio",2203:"Parametri VLAN impostati",2204:"Insieme di criteri di collegamento",2205:"Parametri IPv6 impostati",2300:"Set di attributi di archiviazione globale",2301:"Archiviazione EACL modificata",2302:"Memoria FPACL modificata",2303:"Operazione di scrittura in memoria",2400:"Avviso iscritto",
163
+2401:"Avviso Non iscritto",2402:"Registro eventi cancellato",2403:"Registro eventi congelato",2500:"Filtro CB aggiunto",2501:"Filtro CB rimosso",2502:"Aggiunta politica CB",2503:"Politica CB rimossa",2504:"Set di criteri predefinito CB",2505:"Set di opzioni euristiche CB",2506:"Stato euristico CB cancellato",2600:"Cane da guardia dell'agente aggiunto",2601:"Agent Watchdog rimosso",2602:"Set di azioni del watchdog dell'agente",2700:"Profilo wireless aggiunto",2701:"Profilo wireless rimosso",2702:"Profilo wireless aggiornato",
164
+2800:"Set di firme postura EAC",2801:"EAC abilitato",2802:"EAC disabilitato",2803:"EAC Posture State",2804:"EAC Set Options",2900:"Opt-in KVM abilitato",2901:"Attivazione KVM disabilitata",2902:"Password KVM modificata",2903:"Consenso KVM riuscito",2904:"Consenso KVM non riuscito",3E3:"Modifica della politica di attivazione",3001:"Invia evento codice consenso",3002:"Avvia evento bloccato opt-in"};l.GetAuditLogExtendedDataStr=function(a,b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,
165
+2+b.charCodeAt(1));if(1603==a)return 0==b.charCodeAt(1)?b.substring(3):null;if(1605==a)return["Accesso ME non valido","Accesso MEBx non valido"][b.charCodeAt(0)];if(1606==a){var c=["Disabilitato","Abilitato"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+=","+b.substring(3));return c}return 1607==a?"A distanza"+["noauth","ServerAuth","MutualAuth"][b.charCodeAt(0)]+", Locale"+["noauth","ServerAuth","MutualAuth"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+","+["noauth","auth","Disabilitato"][b.charCodeAt(4)]:
166
+1619==a?["BIOS","MEBx","MEI locale","WSMAN locale","WSAMN remoto"][b.charCodeAt(0)]:1900==a?"A partire dal"+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" per"+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"A partire dal"+["Nessuna","KVM","Tutti"][b.charCodeAt(0)]+" per"+["Nessuna","KVM","Tutti"][b.charCodeAt(1)]:3001==a?["Successo",
167
+"Fallito 3 volte"][b.charCodeAt(0)]:null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
168
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
169
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
170
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
171
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
172
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
173
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
174
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
175
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
176
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
177
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
178
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
179
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
180
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
181
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
182
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
183
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
184
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
185
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
186
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
187
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
188
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
189
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
190
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
191
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
192
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
193
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
194
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
195
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
196
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
197
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
198
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
199
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
200
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
201
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
202
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
203
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
204
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
205
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
206
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
207
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
208
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
209
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
210
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
211
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
212
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
213
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
214
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
215
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
216
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
217
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
218
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
219
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
220
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
221
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
222
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
223
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
224
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
225
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
226
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
227
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
228
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
229
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
230
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
231
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
232
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
233
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
234
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
235
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
236
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
237
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
238
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
239
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
240
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
241
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
242
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
243
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
244
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
245
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
246
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
247
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
248
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
249
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
250
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
251
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
252
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
253
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
254
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
255
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
256
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
257
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
258
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
259
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
260
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
261
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
262
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
263
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
264
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
265
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
266
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
267
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
268
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
269
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
270
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
271
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
272
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
273
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
274
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
275
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
276
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
277
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
278
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
279
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
280
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
281
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
282
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
283
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
284
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
285
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
286
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
287
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
288
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
289
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
290
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
291
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
292
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
293
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
294
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
295
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
296
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
297
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
298
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
299
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
300
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
301
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
302
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
303
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
304
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
305
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
306
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
307
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
308
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
309
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
310
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
311
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
312
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
313
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
314
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
315
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
316
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
317
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
318
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
319
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
320
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
321
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
322
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
323
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
324
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
325
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
326
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
327
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
328
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
329
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
330
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
331
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
332
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
333
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
334
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
335
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
336
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
337
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
338
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
339
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
340
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
341
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
342
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
343
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
344
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
345
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
346
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
347
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
348
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
349
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
350
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
351
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
352
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
353
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
354
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
355
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
356
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
357
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
358
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
359
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
360
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
361
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
362
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
363
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
364
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
365
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
366
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
367
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
368
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
369
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
370
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
371
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
372
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
373
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
374
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
375
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
376
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
377
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
378
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
379
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
380
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
381
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
382
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
383
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
384
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
385
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
386
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
387
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
388
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
389
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
390
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
391
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
392
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
393
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
394
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
395
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
396
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
397
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
398
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
399
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
400
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
401
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
402
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
403
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
404
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
405
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
406
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
407
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
408
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
409
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
410
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
411
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
412
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
413
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
414
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
415
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
416
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
417
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
418
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
419
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
420
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
421
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
422
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
423
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
424
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
425
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
426
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
427
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
428
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
429
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
430
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
431
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
432
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
433
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
434
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
435
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
436
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
437
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
438
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
439
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
440
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
441
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
442
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
443
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
444
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
445
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
446
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
447
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
448
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
449
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
450
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
451
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
452
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
453
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
454
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
455
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
456
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
457
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
458
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
459
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
460
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
461
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
462
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
463
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
464
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
465
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
466
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
467
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
468
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
469
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
470
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
471
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
472
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
473
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
474
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
475
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
476
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
477
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
478
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
479
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
480
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
481
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
482
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
483
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
484
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
485
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
486
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
487
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
488
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
489
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
490
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
491
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
492
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
493
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
494
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
495
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
496
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
497
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
498
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
499
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
500
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
501
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
502
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
503
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
504
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
505
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
506
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
507
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
508
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
509
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
510
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
511
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
512
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
513
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
514
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
515
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
516
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
517
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
518
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
519
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
520
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
521
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
522
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
523
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
524
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
525
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
526
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
527
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
528
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
529
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
530
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
531
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
532
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
533
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
534
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
535
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
536
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
537
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
538
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
539
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
540
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
541
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
542
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
543
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
544
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
545
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
546
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
547
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
548
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
549
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
550
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
551
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
552
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
553
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
554
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
555
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
556
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
557
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
558
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
559
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
560
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
561
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
562
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
563
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
564
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
565
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
566
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
567
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
568
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
569
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
570
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
571
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
572
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
573
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
574
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
575
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
576
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
577
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
578
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
579
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
580
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
581
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
582
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
583
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
584
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
585
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
586
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
587
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
588
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
589
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
590
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
591
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
592
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
593
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
594
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
595
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
596
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
597
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
598
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
599
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
600
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
601
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
602
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
603
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
604
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
605
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
606
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
607
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
608
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
609
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
610
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
611
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
612
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
613
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
614
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
615
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
616
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
617
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
618
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
619
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
620
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
621
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
622
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
623
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
624
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
625
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
626
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
627
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
628
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
629
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
630
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
631
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
632
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
633
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
634
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
635
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
636
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
637
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
638
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
639
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
640
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
641
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
642
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
643
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
644
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
645
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
646
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
647
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
648
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
649
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
650
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
651
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
652
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
653
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
654
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
655
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
656
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
657
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
658
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
659
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
660
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
661
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
662
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
663
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
664
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
665
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
666
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
667
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
668
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
669
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
670
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
671
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
672
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
673
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
674
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
675
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
676
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
677
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
678
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
679
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
680
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
681
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
682
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
683
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
684
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
685
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
686
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
687
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
688
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
689
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
690
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
691
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
692
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
693
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
694
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
695
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
696
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
697
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
698
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
699
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
700
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
701
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
702
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
703
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
704
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
705
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
706
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
707
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
708
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
709
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
710
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
711
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
712
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
713
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
714
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
715
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
716
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
717
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
718
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
719
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
720
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
721
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
722
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
723
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
724
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
725
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
726
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
727
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
728
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
729
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
730
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
731
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
732
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
733
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
734
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
735
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
736
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
737
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
738
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
739
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
740
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
741
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
742
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
743
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
744
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
745
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
746
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
747
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
748
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
749
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
750
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
751
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
752
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
753
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
754
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
755
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
756
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
757
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
758
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
759
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
760
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
761
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
762
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
763
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
764
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
765
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
766
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
767
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
768
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
769
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
770
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
771
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
772
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
773
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
774
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
775
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
776
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
777
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
778
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
779
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
780
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
781
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
782
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
783
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
784
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
785
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
786
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
787
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
788
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
789
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
790
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
791
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
792
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
793
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
794
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
795
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
796
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
797
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
798
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
799
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
800
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
801
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
802
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
803
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
804
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
805
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
806
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
807
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
808
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
809
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
810
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
811
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
812
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
813
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
814
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
815
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
816
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
817
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
818
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
819
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
820
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
821
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
822
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
823
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
824
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
825
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
826
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
827
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
828
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
829
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
830
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
831
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
832
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
833
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
834
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
835
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
836
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
837
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
838
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
839
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
840
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
841
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
842
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
843
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
844
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
845
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
846
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
847
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
848
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
849
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
850
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
851
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
852
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
853
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
854
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
855
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
856
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
857
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
858
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
859
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
860
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
861
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
862
+k.Init();return k},ZLIB=ZLIB||{};
863
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
864
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
865
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
866
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
867
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
868
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
869
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
870
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
871
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
872
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
873
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
874
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
875
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
876
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
877
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
878
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
879
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
880
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
881
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
882
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
883
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
884
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
885
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
886
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
887
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
888
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
889
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
890
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
891
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
892
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
893
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
894
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
895
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
896
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
897
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
898
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
899
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
900
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
901
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
902
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
903
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
904
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
905
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
906
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
907
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
908
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
909
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
910
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
911
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
912
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
913
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
914
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
915
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
916
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
917
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
918
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
919
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
920
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
921
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
922
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
923
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
924
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
925
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
926
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
927
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
928
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
929
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
930
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
931
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
932
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
933
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
934
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
935
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
936
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
937
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
938
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
939
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
940
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
941
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
942
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>Caricamento in corso...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
943
+StatusStrs=["Disconnected","Connessione in corso ...","Impostare...","Collegato"],scriptstate,t,t2,rsepass=null;
944
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
945
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR + LF":"LF";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
946
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
947
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
948
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
949
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
950
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="Disconnect"}function getCurrentMeshNode(){return currentMeshNode}
951
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="Avvia acquisizione";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
952
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
953
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
954
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
955
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
956
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
957
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
958
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
959
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="Collegare";QH(5,"Disconnected");go(100)}
960
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
961
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
962
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
963
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
964
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
965
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
966
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
967
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
968
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
969
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
970
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"Sincronizza orologio",3,syncClockEx,"Sincronizzare l'orologio Intel AMT con questo computer?")}
971
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","Impossibile impostare l'ora, status ="+d):0!=a.Body.ReturnValue?messagebox("","Impossibile impostare l'ora, errore: "+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}
972
+var DMTFPowerStates=";;Accensione;Sonno leggero;Sonno profondo;Ciclo di accensione (soft off);Off - Difficile;Ibernazione (Off soft);Soft off;Ciclo di accensione (Off-hard);Ripristino del bus principale;Diagnostic interrupt (NMI);Non applicabile;Off - Morbido grazioso;Off - Hard aggraziato;Ripristino del bus principale aggraziato;Ciclo di accensione (Off - Soft aggraziato);Ciclo di accensione (Off - Hard Graceful);Interruzione diagnostica (INIT)".split(";");
973
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>Sconosciuto</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"Accensione"==a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&
974
+3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=[", Connesso",", A batteria"][q.PowerSource]);d+=TableEntry("Energia",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>Nessuna</i>":EscapeHtml(c);d+=TableEntry("Nome e dominio",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?
975
+d+=TableEntry("ID di sistema",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("ID di sistema",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" attivato in modalit\u00e0 controllo amministratore (ACM)",4==k.ProvisioningMode&&(p=" attivato in modalit\u00e0 controllo client (CCM)",b=9));
976
+d+=TableEntry("Intel® ME","v"+getItem(amtlogicalelements,"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=
977
+amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||
978
+6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);r&&(e+=", Porta di reindirizzamento");n&&(e+=", Seriale su LAN");p&&(e+=", IDE-reindirizzamento");w&&(e+=", KVM");""==e&&(e=" Nessuna");d+=TableEntry("Funzionalit\u00e0 attive",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="Display principale",7<amtversion&&
979
+void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["Display principale","Display secondario","3 \u00b0 display"][p.DefaultScreen]),e='<span title="'+format("Il display remoto predefinito \u00e8 {0}",e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+=", Porta 5900 abilitata"),1==p.OptInPolicy&&(e+=","+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"secondi opt-in":"secondo opt-in")),e+=","+p.SessionTimeout+" minuto"+(0<p.SessionTimeout?"s":"")+" timeout della sessione",9<amtversion&&null!=
980
+amtsysstate.IPS_ScreenConfigurationService?((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&1))&&(e+=", Soppressione consentita"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("Desktop remoto",addLinkConditional(e,"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=
981
+amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="Stato sconosciuto",r=amtsysstate.IPS_OptInService.response.OptInRequired,0==r&&(e="Non richiesto"),1==r&&(e="Richiesto solo per KVM"),4294967295==r&&(e="Sempre richiesto"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("Consenso dell'utente",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,
982
+l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(r=e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==r&&(d+=TableEntry("Politica energetica",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&
983
+(d+=TableEntry("Appuntamento",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";e+=AddButton("Azioni di potere ...","showPowerActionDlg()")+" ";e+=AddButton("Salva stato ...","saveEntireAmtState()")+" ";e+=AddButton("Esegui script ...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");
984
+QH(17,d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+" La modifica delle impostazioni di rete potrebbe rendere questa pagina non disponibile.");d=d+"<br><h2>impostazioni generali</h2>"+TableStart();e="";"<i>Nessuna</i>"!=c&&(1==q.SharedFQDN&&(e=", condiviso con il sistema operativo"),0==q.SharedFQDN&&(e=", diverso dal sistema operativo"));d+=TableEntry("Nome e dominio",addLinkConditional(c+
985
+e,"showEditNameDlg(1)",xxAccountAdminName));c="Disabilitato";1==q.DDNSUpdateEnabled?c="Abilitato ciascuno"+q.DDNSPeriodicUpdateInterval+" minuti, TTL \u00e8"+q.DDNSTTL+" minuti":1==q.DDNSUpdateByDHCPServerEnabled&&(c="Aggiornamento dal server DHCP");d+=TableEntry("DNS dinamico",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||1==a)amtwirelessif=
986
+a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"Interfaccia wireless":"Interfaccia cablata")+"</h2>";d+=TableStart();d+=TableEntry("Stato di collegamento",1==c.LinkIsUp?"Il collegamento \u00e8 attivo":"Il link non \u00e8 attivo");if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 / AC"),14==c.LinkPolicy[l]&&e.push("Sx / AC"),16==c.LinkPolicy[l]&&e.push("S0 / DC"),224==c.LinkPolicy[l]&&
987
+e.push("Sx / DC");0==e.length&&e.push("");d+=TableEntry("Politica di collegamento",addLinkConditional(0==e.length?"Non disponibile":"Disponibili in: "+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("Indirizzo MAC",c.MACAddress));amtwirelessif==a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("Stato",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),
988
+s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("Stato radio",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+", SSID: "+(s?s:"<i>Nessuna</i>")));amtwirelessif!=a&&(d+=TableEntry("Rispondi al ping",addLinkConditional(["Disabilitato","Risposta ICMP","Risposta RMCP","Risposta ICMP e RMCP"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"Automatico tramite server DHCP":"Indirizzo IP statico",1==c.IpSyncEnabled&&
989
+(e+=", IP sync with OS"),d+=TableEntry("Stato IPv4",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("Indirizzo IPv4",isIpAddress(c.IPAddress,"Nessuna"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("Gateway / maschera IPv4",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"Nessuna")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("Server dei nomi di dominio IPv4",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=
990
+amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r="Disabilitato",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?"Indirizzi abilitati, automatici e manuali":"Abilitato, indirizzi automatici");d+=TableEntry("Stato IPv6",
991
+addLinkConditional(r,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=","),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("Indirizzo IPv6",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("Indirizzo IPv6","Nessuna");isIpAddress(c.CurrentDefaultRouter)&&
992
+(d+=TableEntry("Router predefinito IPv6",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("Server dei nomi di dominio IPv6",e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<amtversion||11==amtversion&&5<amtversionmin)&&
993
+PullStorage());0==currentView&&go(1,1)}}function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
994
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
995
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"Politica sui collegamenti",3,showLinkPolicyDlgEx,a,b)}}
996
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
997
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Politica sui collegamenti",format("Impossibile impostare la nuova politica di collegamento, errore {0}",d))}
998
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>Nessuna</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
999
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>di fiducia</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+" byte,<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+
1000
+c+")>Scarica</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" byte,<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>Scarica</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
1001
+function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
1002
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"Salva l'intero stato Intel® AMT",3,saveEntireAmtStateOk)}}
1003
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"Salva l'intero stato Intel® AMT",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1004
+function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1005
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>Display principale</option><option value=1>Display secondario</option>";9<amtversion&&(c+="<option value=2>3 \u00b0 display</option>");c+='</select><div style=padding-top:4px>Visualizzazione predefinita</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Timeout della sessione (minuti)</div></div>';
1006
+1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Timeout di attivazione (secondi)</div></div>');c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Disabilitato, consigliato</option><option value=1>Visualizzatori KVM legacy abilitati</option></select><div style=padding-top:4px>Porta 5900</div></div>";
1007
+c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>5900 password (8 caratteri)</div></div>";9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+='<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Disabilitato</option><option value=1>Abilitato</option></select><div style=padding-top:4px title="Questa funzione non \u00e8 spesso supportata">Oscuramento dello schermo</div></div>');
1008
+c+="</div>";setDialogMode(11,"Impostazioni desktop remoto",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}
1009
+function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1010
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1011
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("Impostazioni desktop remoto",format("Errore {0}, impossibile impostare valori.",d))}
1012
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("Errore",format("Il blanking dello schermo non pu\u00f2 essere impostato, il blanking potrebbe non essere supportato su questo sistema ({0}).",d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}
1013
+function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1014
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("Registro non congelato","FreezeLog(0)"):AddButton("Congela registro","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="Filtro" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1015
+AddRefreshButton("PullEventLog(1)")+AddButton("Pulisci il registro","ClearLog()")+AddButton("Salva...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1016
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>fonte</b><td class=r1><b>Descrizione</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1017
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1018
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"Cancella registro eventi?"),setDialogMode(1,"Registro eventi",3,ClearLogEx))}function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("Registro eventi","Impossibile cancellare, errore: "+d):PullEventLog()})}
1019
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("Tempo",c.Time.toLocaleString());a+=addHtmlValue("fonte",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("Descrizione",c.Desc);a+=MoreStart();a+=addHtmlValue("Indirizzo dispositivo",c.DeviceAddress);a+=addHtmlValue("Entit\u00e0",c.Entity);a+=addHtmlValue("Istanza dell'entit\u00e0",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];a+=addHtmlValue("Dati",
1020
+d);a+=addHtmlValue("Compensare",c.EventOffset);a+=addHtmlValue("Tipo di sensore",c.EventSensorType);a+=addHtmlValue("Gravit\u00e0",c.EventSeverity);a+=addHtmlValue("Tipo di fonte",c.EventSourceType);a+=addHtmlValue("genere",c.EventType);a+=addHtmlValue("Numero del sensore",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("Dettagli evento n. {0}",b+1),a)}}
1021
+function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1022
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1023
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gestisci gli abbonati agli eventi.<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],
1024
+b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>Nessun abbonamento trovato.</i></div><br>");e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("Nuovo abbonamento","newSubscriptionButton()"));b+="<br><td class=r1>"+
1025
+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"Spingere",3:"Spingere con ACK",4:"eventi",5:"Tirare"};
1026
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("Destinazione",a.Destination);d+=addHtmlValue("Filtro",c);d+=addHtmlValue("Modalit\u00e0 di consegna",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"Sottoscrizione"+(b+1),xxAccountAdminName?
1027
+5:1,deleteSubscriptionButton,d+"</div>",b)}}
1028
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
1029
+Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1030
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>Spingere</option><option value=PushWithAck>Spingere con ACK</option></select><div style=padding-top:4px>genere</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+='<option value="'+subscriptionsFilters[c].InstanceID+'">'+
1031
+subscriptionsFilters[c].CollectionName.substring(13)+"</option>";b+="</select><div style=padding-top:4px>Filtro</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>URL</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>Nessuna</option><option value=1>digerire</option></select><div style=padding-top:4px>Autenticazione</div></div>";
1032
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Nome utente</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Parola d'ordine</div></div>";b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>argomenti</div></div>";
1033
+setDialogMode(11,"Aggiungi abbonamento evento",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1034
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1035
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="Sconosciuto;Altro;Abilitato;Disabilitato;Chiudere;Non applicabile;Abilitato ma offline;In prova;differite;quiesce;Di partenza".split(";");
1036
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"Disabilitato":"Abilitato",c&2&&(b+=", Bloccato"),c&4&&(b+=", Quasi pieno"),c&8&&(b+=", Pieno"),c&16&&(b+=", NoKey"),c="<h1>Impostazioni registro di controllo</h1>"+TableStart(),c+=TableEntry("Stato",b),c+=TableEntry("Conservazione",a[0].CurrentNumberOfRecords+" record (s),"+a[0].PercentageFree+"% gratuito"),c+=TableEntry("Sovrascrivi politica",2==a[0].OverwritePolicy?"Si avvolge quando \u00e8 pieno":"Non sovrascrive mai"),
1037
+c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1038
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="Filtro" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("Salva...","SaveAuditLog()")+AddButton("Pulisci il registro","ClearAuditLog()"))+"<br>");if(0==c.length)d="Nessun evento del registro di controllo trovato.";else{var e=0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>Tempo</b><td class=r1 style=width:260px><b>Iniziatore</b><td class=r1><b>Action</b>";
1039
+for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+=","+q.Event);null!=q.ExStr&&(p+=","+q.ExStr);""!=k&&""!=r&&(k+=",");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",
1040
+minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","Log di controllo Intel AMT",auditLog)}
1041
+function ClearAuditLog(b){QH(66,"Cancella registro di controllo?");setDialogMode(1,"Registro di audizione",3,ClearAuditLogEx)}function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}
1042
+function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("Registro di audizione","Errore: "+d)}
1043
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("Tempo",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("Iniziatore",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("Indirizzo",a.NetAddress));d+=addHtmlValue("Applicazione",a.AuditApp);d+=addHtmlValue("Evento",a.Event);if(null!=a.ExStr)d+=addHtmlValue("Dati estesi",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<e.length&&(e+=","),e+=a.Ex.charCodeAt(c);""!=e&&(d+=
1044
+addHtmlValue("Valori dei dati",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("Stringa di dati",a.Ex.substring(2)))}messagebox("Audit Event #"+(b+1)+" Dettagli",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;
1045
+function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1046
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1047
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1048
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1049
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"Disabilitato";var c=(1==xxTlsSettings[b].MutualAuthentication?"TLS di mutua autorizzazione":"TLS di autenticazione server")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" e non TLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1050
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("Sicurezza TLS remota",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("Sicurezza TLS locale",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gestisci i certificati Intel® AMT per questo computer.<br><br>");
1051
+if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>Nessun certificato trovato.</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b=", Radice attendibile"),xxCertificates[d].XPrivateKey&&(b=", Chiave privata"),d==xxTlsCurrentCert&&(b+=", Certificato TLS"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+b+"</i></div></div>";
1052
+for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>Coppia di chiavi private non assegnate #"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("Aggiungi certificato ...","addCertButton()")+AddButton("Rilascia certificato ...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1053
+function showKeyPairDetails(b){setDialogMode(11,"Key Pair #"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"Questa \u00e8 una coppia di chiavi di certificato pubblico / privato che non appartiene ad alcun certificato. Questa voce dovrebbe essere temporanea.")}
1054
+var xxCertSubjectNames={CN:"Nome comune",O:"Organizzazione",OU:"Unit\u00e0 organizzativa",S:"Stato / Provincia",ST:"Stato / Provincia",L:"Localit\u00e0",C:"Nazione",SN:"Cognome",GN:"Nome di battesimo"};
1055
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("Certificato",c.X509Certificate.length+" byte,<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>Scarica</a>");a+=addHtmlValue("Radice attendibile",c.TrustedRootCertficate?"s\u00ec":"No");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("Chiave privata","Presente"));a+='<br><div style="border-bottom:1px solid gray"><i>Oggetto del certificato</i></div><br>';for(var d in c.XSubject)c.XSubject[d]&&
1056
+(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>Certificato dell\'Emittente</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"Certificato -"+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},
1057
+function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}var xxDragDropCertFiles=null;
1058
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>File del certificato</div></div>")+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>Certificato radice attendibile</option><option value=0>Certificato a catena</option></select><div style=padding-top:4px>Tipo di certificato</div></div>",
1059
+setDialogMode(11,"Aggiungi certificato",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1060
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1061
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>Password del certificato</div></div>",
1062
+b+='<br><div style="border-bottom:1px solid gray"><i>Certificato Intel® AMT</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>Nome comune</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>Organizzazione</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>Stato / Provincia</div></div>",
1063
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>Nazione</div></div>",b+='<div>Usi del certificato</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',b+="<li><label><input type=checkbox id=d11_cu4 checked>Server TLS (HTTPS)</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>Client TLS (HTTPS)</label></li>",
1064
+b+="<li><label><input type=checkbox id=d11_cu6>Protezione e-mail</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>Firma del codice</label></li>",b+="<li><label><input type=checkbox id=d11_cu8>Timestamp</label></li>",b+="</ul>",setDialogMode(11,"Rilascio certificato",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1065
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1066
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("Rilascio certificato","Impossibile decrittografare / decodificare il certificato.")}
1067
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1068
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("Rilascio certificato","Impossibile generare la coppia di chiavi. Stato: "+d):0!=a.Body.ReturnValue?messagebox("Rilascio certificato","Impossibile generare la coppia di chiavi,"+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1069
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("Rilascio certificato","Impossibile generare la coppia di chiavi. Stato: "+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"Certificato radice non attendibile"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=
1070
+xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("Rilascio certificato","Impossibile firmare il certificato."):(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,
1071
+q.length-25),GenerateKeyPairResponse4))}}function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("Rilascio certificato","Impossibile generare la coppia di chiavi. Stato: "+d):PullCertificates()}function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("Aggiungi certificato","Impossibile aggiungere il certificato, errore"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}
1072
+function certificateRemoved(b,c,a,d){200!=d?messagebox("Rimuovi certificato","Impossibile rimuovere il certificato, errore"+d):PullCertificates()}function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1073
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>Nessun certificato, TLS disabilitato</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>Certificato</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
1074
+b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="Elenco separato da virgole di nomi comuni di certificati che potranno connettersi in remoto."><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="nome1, nome2"><div style=padding-top:4px>CN remoti</div></div>';setDialogMode(11,"Impostazioni TLS",3,showSetTlsSecurityDlgOk,
1075
+b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);getSelectElement("tlsremote").value=(1==xxTlsSettings[c].MutualAuthentication?2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?
1076
+1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1077
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1078
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1079
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1080
+b,c,d){200!=d?messagebox("","Impossibile impostare l'ora, status ="+d):0!=c.Body.ReturnValue?messagebox("","Impossibile impostare l'ora, errore: "+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,0,1,a[1]);
1081
+statusbox("Impostazioni TLS","Applicazione di nuove impostazioni di sicurezza ...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1082
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","Impossibile impostare la sicurezza TLS, status ="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1083
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","Impossibile impostare la sicurezza TLS, status ="+d):0!=a.Body.ReturnValue?messagebox("","Impossibile impostare la sicurezza TLS, errore: "+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1084
+function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1085
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1086
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1087
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1088
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}var watchdogEnabledStates="Sconosciuto;Altro;Abilitato;Disabilitato;Chiudere;Non applicabile;Abilitato ma offline;In prova;differite;quiesce;Di partenza".split(";"),watchdogMonitoredEntity="Sconosciuto;Altro;Sistema operativo;Processo di avvio del sistema operativo;Processo di spegnimento del sistema operativo;Processo di avvio del firmware;Processo di avvio del BIOS;Applicazione;Processore di servizio".split(";");
1089
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("Numero massimo",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" cani da guardia");b+=TableEntry("Numero massimo di azioni totali",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" Azioni");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Gestisci i watchdog di presenza degli agenti Intel® AMT.<br><br>";if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||
1090
+0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>Nessun watchdog di presenza agente trovato.</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="Aggiungi azione ..." onclick=addWatchdogAction(event,'+
1091
+c+")>";a.transitions&&(b+='<input type=button style=float:right value="Elimina azioni ..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+=": Evento da registrare")}""!=d&&(b+="<div style=padding:12px>"+
1092
+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("Aggiungi watchdog ...","AddWatchdog()"));b+="<br>";QH(60,b)}}function getWatchdogTransitionStr(b){if(31==b)return"Qualsiasi stato";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1093
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("Descrizione",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("Entit\u00e0 monitorata",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("Stato attuale",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("Stato abilitato",watchdogEnabledStates[b.EnabledState]);c+=addHtmlValue("Intervallo di avvio",
1094
+b.StartupInterval+" secondo (s)");c+=addHtmlValue("Intervallo di timeout",b.TimeoutInterval+" secondo (s)");setDialogMode(11,format("Cane da guardia {0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1095
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Nome</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="Genera DeviceID casuale">'+addLink("ID del dispositivo","GenerateWatchdogGuid()")+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Avvio (secondi)</div></div>";
1096
+b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Timeout (secondi)</div></div>";setDialogMode(11,"Aggiungi cane da guardia",3,AddWatchdogOk,b);AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}
1097
+function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1098
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1099
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("Cane da guardia","Impossibile aggiungere il watchdog, errore #"+d):PullWatchdog()}
1100
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>A partire dal<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>Per<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"Aggiungi azione watchdog",
1101
+3,addWatchdogActionOk,d+"</table><br>Esegui azione<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>Scrivi nel registro eventi<br />",a);addWatchdogActionUpdate();haltEvent(b)}function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1102
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Azione del cane da guardia","Impossibile aggiungere l'azione del watchdog, errore #"+d):PullWatchdog()}
1103
+function deleteWatchdogActions(b,c){setDialogMode(11,"Elimina azioni watchdog",3,deleteWatchdogActionsOk,"Eliminare tutte le azioni per questo cane da guardia?",xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1104
+function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Azione del cane da guardia","Impossibile rimuovere le azioni del watchdog, errore #"+d):PullWatchdog()}
1105
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"Tutti i pacchetti IP",2054:"Tutti i pacchetti ARP"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"Consenti, conte",1:"Lascia cadere, conta",2:"Limite di velocit\u00e0",3:"permettere",4:"Far cadere"},xxSystemDefenceFilters={HdrProtocolID:1,HdrDestAddress:2,
1106
+HdrDestMask:2,HdrSrcAddress:2,HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,TCPFlagsOn:3,TCPFlagsOff:3};function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}
1107
+function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1108
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1109
+a}b+=TableStart();c="<i>Nessuna</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("Politica cablata predefinita",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d=1==d?d+" pacchetto":d+" pacchetti",b+=TableEntry((0==c?"Cablata":"senza fili")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>Gestisci le politiche di difesa del sistema Intel® AMT.<br><br>";
1110
+if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+="<div style=padding-left:15px><i>Nessuna politica di difesa del sistema trovata.</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+c+")><div style=padding-top:3px><b>"+
1111
+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>Gestisci i filtri di difesa del sistema Intel® AMT.<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>Nessun filtro di difesa del sistema trovato.</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||
1112
+(d="Tutto il protocollo Ethernet"+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" a"+a.FilterProfileData+" pacchetto / sec"),1==a.ActionEventOnMatch&&(d+=", Evento in partita"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=xxSystemDefense.AMT_IPHeadersFilter.responses[c];
1113
+(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="Tutto il protocollo Ethernet"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==a.FilterProfile&&(d+=" a"+a.FilterProfileData+" pacchetto / sec");1==a.ActionEventOnMatch&&(d+=", Evento in partita");var q=0;for(e in xxSystemDefenceFilters)a[e]&&q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+
1114
+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("Aggiungi filtro ...","AddDefenseFilter()")+AddButton("Aggiungi politica ...","AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}
1115
+function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1116
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1117
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1118
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1119
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>Nessuna";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1120
+"Politica di difesa del sistema predefinita",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>Politica di default</div></div>",b)}}
1121
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
1122
+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1123
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">Porta Ethernet Intel (r) AMT '+
1124
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1125
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("Politica di difesa del sistema predefinita","Impossibile impostare la politica, errore"+d):PullSystemDefense()}
1126
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Nome</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Filtro pacchetti IP Ethernet<option value=1>Filtro pacchetti Ethernet ARP<option value=2>Filtro pacchetti IPv4<option value=3>Filtro pacchetti IPv6</select><div style=padding-top:4px>genere</div></div>";b+=
1127
+'<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="Regole opzionali" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Regole di corrispondenza</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>In uscita / Trasmissione<option value=1>Inbound / Ricevi</select><div style=padding-top:4px>Direzione</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Consenti, conte<option value=1>Lascia cadere, conta<option value=2>Limite di tariffa<option value=3>permettere<option value=4>Far cadere</select><div style=padding-top:4px>Azione</div></div>";
1128
+b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Pacchetti / secondo</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>Fare niente<option value=1>Evento in partita</select><div style=padding-top:4px>Registro eventi</div></div>";setDialogMode(11,"Aggiungi filtro di difesa del sistema",
1129
+3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1130
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1131
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="Hdr"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1132
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1133
+function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("Aggiungi filtro di difesa del sistema","Impossibile aggiungere il filtro, errore #"+d):PullSystemDefense()}
1134
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="Ethernet Traffic",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="Tutto il protocollo Ethernet"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="IP Traffic",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="Tutto il protocollo IP"+d.HdrIPVersion));var p;p=""+addHtmlValue("Nome",EscapeHtml(d.Name));p+=addHtmlValue("genere",
1135
+e);p+=addHtmlValue("Traffico corrispondente",a);p+=addHtmlValue("Direzione",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("Filtro"+a,e));p+=addHtmlValue("Evento in partita",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,
1136
+"Filtro Ethernet #"+d.InstanceID,5,showFilterDetailsOk,p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("Rimuovi filtro","Impossibile rimuovere il filtro, assicurarsi che non sia in uso."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1137
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>Nome</div></div><div style=height:26px;margin-top:4px><select id=policytx title="Azione predefinita da eseguire per il traffico in uscita" style=float:right;width:133px><option value=0>Allow<option value=1>Far cadere<option value=2>Consenti, Conte<option value=3>Goccia, Conte<option value=4>Consenti, il conte, Evento<option value=5>Goccia, Conte, Evento</select><select id=policyrx style=float:right;width:133px title="Azione predefinita da eseguire per il traffico in entrata"><option value=0>permettere<option value=1>Far cadere<option value=2>Consenti, Conte<option value=3>Goccia, Conte<option value=4>Consenti, il conte, Evento<option value=5>Goccia, Conte, Evento</select><div style=padding-top:4px>TX / RX predefinito</div></div>';b+=
1138
+"<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1139
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>Aggiungi filtro</div></div>"}setDialogMode(11,"Aggiungi politica di difesa del sistema",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}
1140
+function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1141
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>Questa politica non contiene filtri.</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Rimuovere","removeFilterButton("+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+GetFilterById(xxAddDefensePolicyFilters[c]).Name+
1142
+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1143
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1144
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("Aggiungi politica di difesa del sistema","Impossibile aggiungere la politica, errore #"+d):PullSystemDefense()}
1145
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("Nome",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("Precedenza",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"Far cadere":"permettere";1==c.TxDefaultCount&&(d+=", Contare");1==c.TxDefaultMatchEvent&&(d+=", Evento");a+=addHtmlValue("Azione TX predefinita",d);d=1==c.RxDefaultDrop?"Drop":"Allow";1==c.RxDefaultCount&&(d+=", Count");1==c.RxDefaultMatchEvent&&
1146
+(d+=", Event");a+=addHtmlValue("Azione RX predefinita",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=addHtmlValue("Filtro n."+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("Politica #",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}
1147
+function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("Rimuovi politica","Impossibile rimuovere la politica, assicurarsi che non sia in uso."):PullSystemDefense()}var xxWireless;function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}function wifiRefresh(){xxdialogMode||PullWireless()}
1148
+var xxWifiState={3:"Disabilitato",32768:"Abilitato in S0",32769:"Abilitato in S0, Sx / AC"},xxRadioState={2:"Acceso, connesso",3:"via",6:"Acceso, disconnesso"},xxWifiAuthenticationMethod={1:"Altro",2:"Aperto",3:"Chiave condivisa",4:"WPA PSK",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"Altro",2:"WEP",3:"TKIP-RC4",4:"CCMP-AES",5:"Nessuna"};function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1149
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>Profili wireless</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>Profili wireless che Intel® AMT utilizzer\u00e0 per la connettivit\u00e0 di rete.<br><br>";for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+
1150
+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("Rimuovere",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>Nessun profilo wireless presente</i><br>");e+="<br><td class=r2>";e=xxAccountAdminName?e+TableEnd(AddButton("Nuovo profilo","showWifiNewProfile()")):e+TableEnd("");
1151
+QH(22,e+"<br>")}}}function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"Stato wireless",3,wifiStateDlg,b)}}
1152
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1153
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("Nome del profilo",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("Autenticazione",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("crittografia",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("Priorit\u00e0",b.Priority);messagebox("Profilo wireless",c+"</div>")}}
1154
+function wifiRemoveButton(b){xxdialogMode||(QH(66,format('Rimuovere il profilo wireless "{0}"?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"Profilo wireless",3,function(){removeWifiButtonEx(b)}))}function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}
1155
+function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1156
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"Aggiungi profilo wireless",3,function(){addWifiProfile()});updateWifiDialog()}}
1157
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1158
+PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1159
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1160
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1161
+var DMTFCPUStatus="Sconosciuto;Abilitato;Disabilitato dall'utente;Disabilitato dal BIOS (errore POST);Inattivo;Altro".split(";"),DMTFMemType="Sconosciuto;Altro;DRAM;DRAM sincrona;Cache DRAM;EDO;EDRAM;VRAM;SRAM;RAM;rom;Veloce;EEPROM;FEPROM;EPROM;CDRAM;3DRAM;SDRAM;SGRAM;RDRAM;DDR;DDR-2;BRAM;FB-DIMM;DDR3;FBD2;DDR4;LPDDR;LPDDR2;LPDDR3;LPDDR4".split(";"),DMTFMemFormFactor=";Altro;Sconosciuto;SIMM;SORSO;Patata fritta;TUFFO;ZIP;Carta proprietaria;DIMM;TSOP;Fila di patatine;RIMM;SODIMM;SRIMM;FB-DIM".split(";"),
1162
+DMTFProcFamilly={191:"Processore Intel® Core ™ 2 Duo",192:"Processore Intel® Core ™ 2 Solo",193:"Processore Intel® Core ™ 2 Extreme",194:"Processore Intel® Core ™ 2 Quad",195:"Processore mobile Intel® Core ™ 2 Extreme",196:"Processore mobile Intel® Core ™ 2 Duo",197:"Processore mobile Intel® Core ™ 2 Solo",198:"Processore Intel® Core ™ i7",199:"Processore Intel® Celeron® dual-core"},HardwareInventory;
1163
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("Salva...","SaveHardwareLog()")+" Le informazioni sull'hardware vengono raccolte all'avvio del sistema.");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>piattaforma</h2>"+FullTable({"Modello di computer":c.Model,
1164
+fabbricante:c.Manufacturer,Versione:c.Version,"Numero di serie":c.SerialNumber,"ID di sistema":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>zoccolo</h2>";b+=FullTable({fabbricante:d.Manufacturer,"Nome del prodotto":d.Model,Versione:d.Version,"Numero di serie":d.SerialNumber,"Etichetta delle risorse":d.Tag,"Sostituibile?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({venditore:a.CIM_BIOSElement.response.Manufacturer,Versione:q,"Data di rilascio":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",
1165
+{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>Processore "+(parseInt(e)+1)+"</h2>",b+=FullTable({fabbricante:trademarks(d.Manufacturer),Famiglia:DMTFProcFamilly[c.Family],Versione:trademarks(d.Version),"Velocit\u00e0 massima della presa":c.MaxClockSpeed+" MHz",Stato:DMTFCPUStatus[c.CPUStatus]},"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=a.CIM_PhysicalMemory.responses[e],b+="<h2>Modulo di memoria "+(+e+
1166
+1)+"</h2>",b+=FullTable({"Etichetta bancaria":c.BankLabel,fabbricante:c.Manufacturer,"Numero di serie":c.SerialNumber,Dimensione:parseInt(c.Capacity/1048576)+" MB","Fattore di forma":DMTFMemFormFactor[c.FormFactor],genere:DMTFMemType[c.MemoryType],"Etichetta delle risorse":c.Tag,"Numero parte":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>Supporti di memorizzazione "+(parseInt(e)+1)+"</h2>",
1167
+b+=FullTable({Modello:d.Model,"Numero di serie":""==d.SerialNumber?"Unknown":d.SerialNumber,Dimensione:parseInt(Math.round(1E3*c.MaxMediaSize/1048576))+" MB"},"");b+="<br>";QH(18,b);updateSystemStatus()}}function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","Informazioni sull'hardware Intel AMT",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}
1168
+function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"Intel® AMT Power Policy",3,showPowerPolicyDlgOk,c)}}
1169
+function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1170
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1171
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1172
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1173
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>Gestire gli account utente Intel® AMT per questo computer.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=a.AccessPermission){2==
1174
+q&&(p+="Disabilitato,");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a.Realms[c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="Sindaco,");p=0<=a.Realms.indexOf(3)?p+"Amministratore":1==k?p+"1 regno":p+(k+" regni")}else p+="Amministratore",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("Modificare...",
1175
+"changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="Attiva / disattiva account nascosti" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");xxAccountAdminName&&(c+=AddButton("Nuovo account",
1176
+"newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1177
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"Modifica account",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1178
+function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"Nuovo account",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1179
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("Errore dell'account","Parametri non validi");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,
1180
+k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1181
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">Amministratore</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1182
+function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["Solo locale","Solo rete","Tutti (locali e di rete)"];
1183
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("Nome",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("Stato",1==xxAccountEnabledInfo[b].Enabled?"Abilitato":"Disabilitato"));if(e==xxAccountAdminName)a+=addHtmlValue("Autorizzazione","Amministratore");else{var a=a+addHtmlValue("Autorizzazione",xxUserPermissions[c.AccessPermission]),q="";if(0<=c.Realms.indexOf(3))q=
1184
+"Amministratore",0<=c.Realms.indexOf(20)&&(q+=", Revisore contabile");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+=","),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="Nessuna");a+=addHtmlValue("Realms","")+"<b>"+q+"</b>"}messagebox("account"+e,a+"</div>")}}
1185
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("Browser",c,browserResponse,null,!0))}
1186
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>(Vuoto)":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>Errore n."+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1187
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1188
+function onTerminalStateChange(b,c){c4.value=0==c?"Collegare":"Disconnect";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1189
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["Terminale UTF8","ASCII esteso","Intel ASCII"];
1190
+function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["Intel (F10 = ESC + [OM)","Alternativo (F10 = ESC + 0)","VT100 + (F10 = ESC + [OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1191
+function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR + LF",terminal.m.lineFeed="\r\n")}
1192
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="Stop Capture";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),b+".txt")}delete terminal.m.capture;
1193
+c3.value="Avvia acquisizione"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"Incolla",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1194
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1195
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1196
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1197
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1198
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("DataChannel",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1199
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1200
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1201
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1202
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1203
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1204
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1205
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1206
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"Collegare":"Disconnect";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("Desktop remoto","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("Desktop remoto","The device indicated that this type of connection of not supported."):5E4==b.disconnectCode?
1207
+messagebox("Desktop remoto","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1208
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b=", Soft-KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"Impostazioni desktop remoto",3,showDesktopSettingsChanged))}
1209
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1210
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1211
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1212
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1213
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1214
+"8px"),center()))}
1215
+function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"Voce tastiera remota",3,showDeskTypeEx,'<div>Immettere il testo e fare clic su OK per digitarlo in remoto utilizzando una tastiera inglese statunitense. Assicurarsi di posizionare il cursore remoto nella posizione corretta prima di procedere.<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1216
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1217
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1218
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1219
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1220
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1221
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1222
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1223
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1224
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1225
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1226
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1227
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>Radice</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+'">'+EscapeHtml(r.substring(0,
1228
+70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1229
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1230
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1231
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1232
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1233
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="Seleziona tutto",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||0==
1234
+d));QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"Non selezionare niente":"Seleziona tutto";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24PasteButton",(0<p24filetreelocation.length||
1235
+0==d)&&null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}
1236
+function p24createfolder(){setDialogMode(11,"Nuova cartella",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}
1237
+function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"Elimina",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1238
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"Rinominare",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1239
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1240
+function p24uploadFile(){setDialogMode(11,"Caricare un file",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;
1241
+function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1242
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"Incolla",3,p24pasteFileEx,b)}
1243
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1244
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1245
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1246
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24filetable"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1247
+function getFileSizeStr(b){return 1==b?"1 byte":format("{0} byte",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();
1248
+function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1249
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"Download file",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+a+" />"))}
1250
+function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1251
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1252
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"Caricare un file",10,p24uploadFileCancel,"<div id=p24dfileName>Impostare...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1253
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1254
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1255
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1256
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1257
+function iderStart(b){if(!xxdialogMode){b="<div>Montare le immagini del disco su un computer Intel® AMT - Sperimentale.</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+NoBreak("Floppy (.img)")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+NoBreak("CDROM (.iso)")+"</div></div>";setDialogMode(11,"Reindirizzamento archiviazione",3,iderStart2,
1258
+b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>Al prossimo avvio<option value=1>Grazioso<option value=2>Immediato</select><div>Inizio sessione</div></div>");b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=b.substring(1,b.length-1))}}
1259
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("Errore di reindirizzamento della memoria","\u00c8 necessario selezionare almeno un file immagine del disco.");else if(1==Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("Errore di reindirizzamento della memoria","File .img non valido.");else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%2048)messagebox("Errore di reindirizzamento della memoria",
1260
+"File .iso non valido.");else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,Q("iderStartType").value)}}
1261
+function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1262
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1263
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"server":"")+"Sessione IDE-R </b>, connessa,"+ider.m.bytesFromAmt+" in,"+ider.m.bytesToAmt+" su.")}var heatMapWidth=600,heatMapDividor={};
1264
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CDROM </b>, i blocchi sono {0} byte.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b> Floppy </b>, i blocchi sono {0} byte.",512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=6*(Math.floor(a/
1265
+(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1266
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"Reindirizzamento archiviazione",a?a:3,onIderDialogPromptOk,c.html)}
1267
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1268
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"Disabilitato",32769:"BIOS abilitato",32770:"Abilitazione SO",32771:"BIOS e sistema operativo abilitati"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1269
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1270
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1271
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1272
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1273
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="Disabilitato",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="Abilitato,"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("Rilevazione dell'ambiente",addLink(c,"editEnvironmentDetection()"));b+=
1274
+TableEntry("Opzioni di avvio dell'utente",addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>Nessuna</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("Connessione avviata dall'utente",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));c="<i>Nessuna</i>";if(0<xxPolicies.Alert.length)for(d in c=
1275
+"",xxPolicies.Alert)0<c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("Connessione avviata da avviso",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>Nessuna</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",
1276
+"periodico");if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format(", ogni {0} secondi",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("Connessione periodica",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Gestire i server di gestione remota Intel® AMT.<br><br>";if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>Nessun server remoto trovato.</i></div><br>";
1277
+else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>Gestire i proxy HTTP utilizzati per le connessioni di gestione.<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,0==c.length)b+="<div style=padding-left:15px><br><i>Nessun proxy configurato.</i></div><br>";else for(d in c)b+=
1278
+"<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("Aggiungi server...","AddRemoteAccessServer()"),a&&(d+=AddButton("Aggiungi proxy ...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+d);QH(58,b)}}var xxEditMpsPolicyType;
1279
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="Utente avviato");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(Nessuna)",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;
1280
+c+="</select><div>Server primario</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Esterno<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA - Interno</select><div>Tipo di MPS primario</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";c+="<option value=-1>(Nessuna)";
1281
+for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>Server secondario</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Esterno<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA - Interno</select><div>Tipo di MPS secondario</div></div>")}e=
1282
+0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>Durata del tunnel (secondi)</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">Periodico, intervallo di tempo<option value=1"+
1283
+(1==a?" selected":"")+">Ora del giorno, una volta al giorno",c+="</select><div>Tipo di trigger</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("{0} Connessione",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1284
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1285
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"Intervallo di trigger (secondi)":"Ora del giorno (HH: MM)"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1286
+function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1287
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1288
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1289
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1290
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="Immettere fino a 5 suffissi di dominio Intranet. Se il computer si trova al di fuori di questi domini, le porte locali Intel® AMT verranno chiuse e le connessioni del server remoto saranno attive.<br><br>");0==editEnvironmentDetectionTmp.length&&(c+="<i>Nessun dominio intranet, Rilevamento ambiente disabilitato.</i><br>");
1291
+for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Rimuovere","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");
1292
+1==b?QH(69,c):setDialogMode(11,"Rilevamento dell'ambiente",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1293
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("Rilevamento dell'ambiente",format("Impossibile aggiungere il server, stato {0}",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("Rilevamento dell'ambiente",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}
1294
+function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}
1295
+function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"Tunnel avviato dall'utente",3,editUserInitiatedCiraDlg,b)}}
1296
+function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1297
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("Nome d'accesso",c.AccessInfo);c.Port&&(a+=addHtmlValue("Porta",c.Port));c.CN&&(a+=addHtmlValue("Nome comune",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,0<c.indexOf("Username")?(a+=addHtmlValue("Tipo di autenticazione","TLS User & Pass / Server-Auth"),a+=addHtmlValue("ID remoto",getInstance(xxMPSUserPass,
1298
+c).RemoteID)):(a+=addHtmlValue("Tipo di autenticazione","Certificato / Autenticazione reciproca TLS"),c=getInstance(xxCertificates,c),a+=addHtmlValue("Nome del certificato",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Server remoto #"+(b+1),c,showServerDetailsOk,a)}
1299
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1300
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}function showServerDetailsOk2(b,c,a,d){408==d?messagebox("Rimozione del server remoto","Impossibile rimuovere il server, accesso negato."):PullRemoteAccess()}function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1301
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("Nome d'accesso",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("Suffisso DNS",c.NetworkDnsSuffix),a=a+addHtmlValue("Tipo di proxy",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Numero proxy HTTP"+(b+1),c,showProxyDetailsOk,a,b)}
1302
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("Rimozione proxy HTTP","Impossibile rimuovere il proxy HTTP, accesso negato."):PullRemoteAccess()}
1303
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>Nome host FQDN<option value=3>Indirizzo IPv4<option value=4>Indirizzo IPv6</select><div>Tipo di connessione</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>Porta</div></div>';b+=
1304
+"<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>Suffisso DNS</div></div>";setDialogMode(11,"Aggiungi proxy HTTP",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1305
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN / nome host","Indirizzo IPv4","Indirizzo IPv6"][Q("d2type").value])}function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}
1306
+function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("Aggiungi server proxy","Impossibile aggiungere proxy, stato"+d):0!=a.Body.ReturnValue?messagebox("Aggiungi server proxy",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1307
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>Nome host FQDN<option value=3>Indirizzo IPv4</select><div>Tipo di connessione</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";a+='<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>Porta del server</div></div>';
1308
+a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Nome comune del server</div></div>";a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";0<b.length&&(a+="<option value=1>Certificato");a+="<option value=2>Nome utente / password</select><div>Tipo di autenticazione</div></div>";a+="<span id=d2utype>";a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Nome utente</div></div>";
1309
+a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Password sicura</div></div>";a+="</span>";a+="<span id=d2ctype>";a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>Certificato</div></div></span>";setDialogMode(11,"Aggiungi server remoto",3,AddRemoteAccessServerOk,
1310
+a);AddRemoteAccessServerUpdate()}
1311
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+Q("d2cert").value+
1312
+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1313
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("Aggiungi Internet Server",format("Impossibile aggiungere il server, stato {0}",d)):0!=a.Body.ReturnValue?messagebox("Aggiungi Internet Server",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1314
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"Nome host":"Indirizzo IPv4");QV("d2utype",2==Q("d2auth").value);QV("d2ucn",
1315
+3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1316
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>Nome e dominio</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+(b?"selected":"")+'>Condiviso, come il sistema operativo<option value="false" '+
1317
+(b?"":"selected")+">Dedicato, diverso dal sistema operativo</select><div>Condivisione del nome</div></div>");setDialogMode(11,"Nome del computer",3,editNameDlgOk,c)}}
1318
+function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}
1319
+function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"Client DNS dinamico",3,showEditDnsDlgOk)}}
1320
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1321
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"Funzionalit\u00e0 Intel® AMT",3,featuresDlgOk))}
1322
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("Errore","RedirectionService, RequestStateChange Error"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,0,function(a,c,d,e){200!=e?messagebox("Errore","KVMRedirectionSAP, errore RequestStateChange"+
1323
+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("Errore","Errore PUT RedirectionService"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}
1324
+function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"Consenso dell'utente",3,consentDlgOk)}}
1325
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="Link indirizzo locale;Indirizzo locale di rete;Indirizzo globale;Configurato dall'utente;Non autorizzato;DAD in corso;valido;deprecato;preferito / obsoleto;scaduto;collisione;non autorizzato".split(";");
1326
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+","+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"Indirizzi IPv6 per interfaccia cablata":"Indirizzi IPv6 per interfaccia wireless",1,null,a+TableEnd())}}
1327
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 disabilitato");QH("d21l1","IPv6 abilitato, automatico");QH("d21l2","IPv6 abilitato, automatico + indirizzo manuale");d21o0.checked=!c;d21o1.checked=c&&!ipv6manual;
1328
+d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"Supporto IPv6 per interfaccia cablata":"Supporto IPv6 per interfaccia wireless",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1329
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1330
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1331
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1332
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1333
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Supporto IPv6",format("Impossibile impostare lo stato IPv6, errore {0}",d))}
1334
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"Risposta al ping Intel® AMT",3,showPingActionDlgOk)}}
1335
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1336
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","Configurazione automatica tramite server DHCP");QH("d21l2","Configurazione statica utilizzando le impostazioni IPv4 di seguito");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=!d21o1.checked;c30.value=
1337
+isIpAddress(b.IPAddress,"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"Impostazioni IPv4",3,showIPSetupDlgOk)}}
1338
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6 abilitato, automatico + indirizzo manuale"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1339
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1340
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Impostazioni IPv4",format("Impossibile impostare i parametri di rete, errore {0}",d))}amtPowerBootCapabilities=null;function showPowerActionDlg(){xxdialogMode||(statusbox("Azioni di potere","Verifica delle funzionalit\u00e0 ..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1341
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","Accendere",2);b&1&&(addOption("d5actionSelect","Ripristina",10),addOption("d5actionSelect","Ciclo di alimentazione",5),addOption("d5actionSelect","Spegnere",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect","Accendi la diagnostica",
1342
+300),b&1&&addOption("d5actionSelect","Ripristina diagnostica",301));9<amtversion&&b&1&&(addOption("d5actionSelect","OS Wake from Standby",500),addOption("d5actionSelect","Risparmio energetico del sistema operativo",501),addOption("d5actionSelect","Soft-off",12),addOption("d5actionSelect","Soft-reset",14),addOption("d5actionSelect","Dormire",4),addOption("d5actionSelect","Hibernate",7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&addOption("d5actionSelect","Accensione al BIOS",100),b&1&&addOption("d5actionSelect",
1343
+"Ripristina al BIOS",101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","Accensione per Cancellazione sicura",104),b&1&&addOption("d5actionSelect","Ripristina per cancellare sicura",105));b&1&&addOption("d5actionSelect","Ripristina IDE-R Floppy",200);b&2&&addOption("d5actionSelect","Accendi IDE-R Floppy",201);b&1&&addOption("d5actionSelect","Ripristinare su IDE-R CDROM",202);b&2&&addOption("d5actionSelect","Accendere il CD-ROM IDE-R",203);b&1&&addOption("d5actionSelect",
1344
+"Ripristina su PXE",400);b&2&&addOption("d5actionSelect","Accendere a PXE",401);addOption("d5actionSelect","Azione personalizzata ...",999);5<amtversion&&addOption("d5actionSelect","Consenso dell'utente ...",998);setDialogMode(5,"Azioni di potere",3,powerActionDlgCheck)}else messagebox("Azione di potere",format("Impossibile ottenere le funzionalit\u00e0 di sistema, errore {0}",d))}
1345
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Azione di potenza completata."):QH(66,format("Errore azione alimentazione # {0}.",e));setDialogMode(1,"Azione di potere",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="Conferma l'esecuzione di Intel® Remote Secure Erase?<br>Immettere la password di cancellazione sicura, se necessario.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>Parola d'ordine</div></div><br><div style=color:red><b> ATTENZIONE: </b> Questo canceller\u00e0 i dati sul sistema remoto.</div>",
1346
+rsepass=1,setDialogMode(11,"Azioni di potere",3,powerActionDlg,b)):powerActionDlg()}
1347
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("Azione di potere","Verifica dello stato ...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&(c=!1);c?amtstack.Get("IPS_OptInService",
1348
+powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1349
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1350
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1351
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"Azione di potenza personalizzata",
1352
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1353
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Azione di potenza completata."):QH(66,format("Errore azione alimentazione # {0}.",e));setDialogMode(1,"Azione di potere",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=Q("d24BiosSecureBoot").checked,
1354
+AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=Q("d24LockSleepButton").checked,
1355
+AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),statusbox("Azione di potere","Verifica dello stato ..."),amtstack.Get("IPS_OptInService",
1356
+powerActionResponse0,0,1))}
1357
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("Azione di potere",format("Errore # {0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"Consenso dell'utente",11,powerActionSendConsent),checkConsentDisplay(),consentChanged()):(statusbox("Azione di potere","Avvio dell'iscrizione in corso ..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,0,1)):
1358
+connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Consenso dell'utente","Non \u00e8 necessario il consenso dell'utente."):(statusbox("Azione di potere","Ottenere le impostazioni di avvio ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1359
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Azione di potere",format("Errore n.",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Errore di consenso dell'utente",a.Body.ReturnValueStr.replace(/_/g," ")):(d6ConsentText.value="",setDialogMode(6,"Consenso dell'utente",11,powerActionSendConsent),checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",
1360
+function(a,b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1361
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("Azione di potere","Invio del consenso dell'utente ..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1362
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("Azione di potere",format("Errore # {0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Consenso dell'utente","Consenso dell'utente riuscito."):(statusbox("Azione di potere","Verifica dello stato ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1363
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("Azione di potere",format("Errore # {0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=AvdPowerDlg.IDERBootDevice,e.LockKeyboard=
1364
+AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&(e.RSEPassword=
1365
+AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,!0===e.SecureErase&&
1366
+0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("Azione di avvio: "+b);console.log("Impostazione delle impostazioni di avvio: "+ObjectToString2(e));statusbox("Azione di potere","Impostazione delle impostazioni di avvio ...");
1367
+amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,function(a,b,c,d){200!=d?messagebox("Azione di potere",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1368
+function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("Azione di potere",format("PUT AMT_BootSettingData, Errore # {0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("Azione di potere","Impostazione del prossimo avvio ..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1369
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1370
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1371
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("Azione di potere","Esecuzione dell'azione di potenza ...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);targetPowerAction=
1372
+b;11==b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("Azione di potere","Prossimo set di azioni di avvio.")}}function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"Azione di potenza completata."),setDialogMode(1,"Azione di potere",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}
1373
+function consentChanged(){QE("c49",6==d6ConsentText.value.length)}function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1374
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1375
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1376
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1377
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gestisci lo storage Intel® AMT per questo computer.<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+" / "+
1378
+r):e+"Radice";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("Scarica","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" byte</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==n&&(wsstack.comm.PerformAjax("",
1379
+function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>Nessun file trovato.</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+(q?AddButton("Caricare...","UploadToStorage()"):
1380
+""));QH(61,a)}else QH(61,"Impossibile caricare i dati di archiviazione ...<br/>"+AddButton("ricaricare","PullStorage()"))}
1381
+function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("venditore",b));""!=c&&(e+=addHtmlValue("Applicazione",c));e+=addHtmlValue("Nome",a);e+=addHtmlValue("Dimensione",q.size+" bytes");q.link&&(e+=addHtmlValue("collegamento",q.link));setDialogMode(11,"Articolo di archiviazione",5,showStorageDetailsEx,e,d)}}function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}
1382
+function storageDeleteResponse(b,c){200!=c?messagebox("Conservazione",format("Impossibile eliminare il file (ERR {0}), verificare che il computer sia acceso.",c)):PullStorage()}function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}
1383
+function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}
1384
+function PushToStorageResponse(b,c,a){200!=c?messagebox("Conservazione",format("Impossibile inviare il file (ERR {0}), verificare che il computer sia acceso.",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1385
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>Seleziona un piccolo file da caricare nella memoria e inserisci un fornitore, un'applicazione e un nome file.<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>Caricare un file</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+
1386
+'<br><div style=height:16px><input id=mstoragevendor placeholder="venditore" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>Nome del fornitore</div></div>';a+='<br><div style=height:16px><input id=mstorageapplication placeholder="App" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>Nome dell\'applicazione</div></div>';a+='<br><div style=height:16px><input id=mstoragefilename placeholder="Nome del file" maxlength=11 style=float:right;width:240px><div>Nome del file</div></div>';
1387
+a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>Tipo MIME</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="Se impostato, crea un collegamento a questo contenuto dalla pagina Web principale">collegamento</div></div><br>';a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';a+="</datalist>";
1388
+a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"Caricamento archiviazione",3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}
1389
+function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1390
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1391
+b}
1392
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1393
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1394
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," giorni").replace("H"," ore").replace("M"," minuti");b=b.replace(" 1 giorni"," 1 giorno").replace(" 1 ora"," 1 ora").replace(" 1 minuti"," 1 minuto");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1395
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gestisci sveglie.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, svegliati "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," a"),void 0!=d[c].Interval&&(a+=" e ciascuno"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&(a+=", eliminare al termine"),b+=
1396
+"<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("Modificare...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>Nessun allarme di sveglia registrato.</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("Rimuovi tutti gli allarmi","RemoveAllAlarms()")+AddButton("Inserisci",
1397
+"showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1398
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1399
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"Rimuovi tutti gli allarmi di riattivazione",3,RemoveAllAlarmsEx,"Conferma la rimozione di tutti gli allarmi di riattivazione?")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1400
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1401
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1402
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"Aggiungi nuova sveglia",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1403
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1404
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("Aggiungi allarme",format("Impossibile aggiungere l'allarme. Stato: {0}. <br/> Verifica che l'allarme sia per un momento futuro.",d)):0!=c.Body.ReturnValue?messagebox("Aggiungi allarme",format("Impossibile aggiungere la sveglia {0}. <br/> Verifica che la sveglia sia per un momento futuro.",
1405
+c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("Modifica sveglia",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1406
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("Nome",c.ElementName)+addHtmlValue("Tempo di sveglia",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("Interno",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("Dopo la veglia",1==c.DeleteOnCompletion?"Elimina allarme":"Mantieni allarme")+"</div>";messagebox(format("Allarme {0}",c.ElementName),a);setDialogMode(11,"Allarme"+
1407
+c.ElementName,5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"Esegui script",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1408
+function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1409
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1410
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("Esegui script",
1411
+"File di script non valido.")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1412
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1413
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1414
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1415
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1416
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("Modifica {0}",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1417
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1418
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1419
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1420
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1421
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1422
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1423
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1424
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1425
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1426
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1427
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1428
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1429
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1430
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1431
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1432
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1433
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1434
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"File binario,"+script_BlockScript[c].vars[d].value.length+" byte":"Non impostato");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+="<tr><td style=height:3px></table>"}b+=
1435
+"</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">Inizia lo script trascinando i blocchi dal lato sinistro in questa casella di script.<div>');QH("scriptblocks",b+"<div style=height:80px></div>");for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1436
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1437
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}
1438
+function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"Nuovo script",3,script_newScriptDlgOk,"<br>Ripristinare e cancellare l'editor di script?")}function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1439
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("Errore di compilazione dello script",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","Fermato");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,_mode:"Firmware"}),editscriptstate.wsstack=wsstack,
1440
+editscriptstate.amtstack=amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}
1441
+function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["Fermato","In esecuzione","In pausa"];
1442
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="Fermato, nessuno script";b&&null!=b&&(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,b.ip)));50<c.length&&(c=c.substring(0,
1443
+50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1444
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"Script Block",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1445
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1446
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1447
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1448
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1449
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1450
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1451
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}var httpErrorTable={200:"ok",401:"Errore di autenticazione",408:"Errore di timeout",601:"Errore di analisi WSMAN",602:"Impossibile analizzare l'intestazione della risposta HTTP",603:"Risposta enum HTTP inattesa",604:"Risposta pull HTTP inaspettata",997:"Digest Realm non valido"};
1452
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("Errore # {0}",b)),401==b&&QH(5,'Errore di autenticazione<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1453
+function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1454
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1455
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1456
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("Errore di chiamata",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}
1457
+function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}
1458
+function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="ricaricare" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}
1459
+function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}
1460
+function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}
1461
+function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1462
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1463
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1464
+</script>
\ No newline at end of file
public/commander-ja.htm
new
+1527
@@ -0,0 +1,1527 @@
1
+<!DOCTYPE html><html lang="ja" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=接続する onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>切断された</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>システムステータス</a><p id=go14 class=nav1 onclick=go(14)><a>リモートデスクトップ</a><p id=go24 class=nav1 onclick=go(24)> <a>ファイル</a><p id=go13 class=nav1 onclick=go(13)><a>Serial-over-LAN</a><p id=go2 class=nav1 onclick=go(2)><a>ハードウェア情報</a><p id=go6 class=nav1 onclick=go(6)><a>イベントログ</a><p id=go15 class=nav1 onclick=go(15)><a>監査ログ</a><p id=go21 class=nav1 onclick=go(21)><a>ストレージ</a><p id=go8 class=nav1 onclick=go(8)><a>ネットワーク設定</a><p id=go17 class=nav1 onclick=go(17)><a>インターネット設定</a><p id=go16 class=nav1 onclick=go(16)><a>セキュリティ設定</a><p id=go19 class=nav1 onclick=go(19)><a>エージェントの存在</a><p id=go18 class=nav1 onclick=go(18)><a>システム防御</a><p id=go11 class=nav1 onclick=go(11)><a>ユーザーアカウント</a><p id=go22 class=nav1 onclick=go(22)><a>定期購入</a><p id=go23 class=nav1 onclick=go(23)><a>ウェイクアラーム</a><p id=go20 class=nav1 onclick=go(20)><a>スクリプトエディター</a><p id=go12 class=nav1 onclick=go(12)><a>WSMANブラウザ</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value=ディスクマップ onclick=iderToggleDiskMap()><input type=button value=IDE-Rセッションを停止 onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>フロッピー、ブロックは512バイトです。</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CDROM、ブロックは2048バイトです。</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value=スクリプトを停止 onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>スクリプトの実行</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>このコンピューターのファームウェアを更新する必要があります。 <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>こちらをご確認ください</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>読み込んでいます...</h1></div><div id=p1 style=display:none><h1>システムステータス</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>ハードウェア情報</h1><span id=18></span></div><div id=p6 style=display:none><h1>イベントログ</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>ネットワーク設定</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>ユーザーアカウント</h1><span id=23></span></div><div id=p12 style=display:none><h1>WSMANブラウザ</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=クエリ style=margin:4px onclick=wsmanQuery()><input type=button value=晴れ style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=フィルタ style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Serial-over-LANターミナル</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>インテル®AMTリダイレクションポートまたはSerial-over-LAN機能が無効になっています<span id=28>、ここをクリックして有効にします。</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>リモートコンピュータの電源が入っていません。ここをクリックして電源コマンドを発行してください。</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=パワーアクション... onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=アイダー title="リモートディスクマウント操作を開始する" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=キャプチャを開始 title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=接続する onclick=connectTerminal(event) disabled="disabled"> <span id=31>切断されました。</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR + LF" title="リターンキーが送信するものを切り替えます" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="端子サイズを切り替え" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="インテル(F10 = ESC + [OM)" title="F1キーからF10キーへのエミュレーションタイプを切り替える" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value=拡張アスキー title="端末エミュレーションタイプを切り替え" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=バックスペース onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=ペースト disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>リモートデスクトップ</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>インテル®AMTリダイレクションポートまたはKVM機能が無効になっています<span id=43>、ここをクリックして有効にします。</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>リモートコンピュータの電源が入っていません。ここをクリックして電源コマンドを発行してください。</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="左に回転" onclick=drotate(-1)>↺</div><div class=rb title="右に回る" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="全画面モードを切り替え" onkeypress="return false" onkeydown="return false" value=いっぱい onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="リモートデスクトップのスクリーンショットを保存する" onkeypress="return false" onkeydown="return false" value=セーブ... onclick=deskSaveImage() style=margin-right:3px><input type=button value=設定... title="リモートデスクトップ設定を編集する" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=アイダー title="リモートディスクマウント操作を開始する" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="リモートマシンの電源状態を変更する" onkeypress="return false" onkeydown="return false" value=パワーアクション... onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=接続する onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>切断されました。</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>勝つ<option value=1>Win + Down<option value=2>Win + Up<option value=3>Win + L<option value=4>Win + M<option value=20>Win + R<option value=23>勝利+左<option value=24>勝利+右<option value=5>Shift + Win + M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=送る onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=タイプ onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>空白の画面 </span><span id=53><input id=54 type=checkbox>表示のみ </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>監査ログ</h1><span id=56></span></div><div id=p16 style=display:none><h1>セキュリティ設定</h1><span id=57></span></div><div id=p17 style=display:none><h1>インターネット設定</h1><span id=58></span></div><div id=p18 style=display:none><h1>システム防御</h1><span id=59></span></div><div id=p19 style=display:none><h1>エージェントの存在</h1><span id=60></span></div><div id=p20 style=display:none><h1>スクリプトエディター</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>停止</div><div><input type=button value=ビューエディター title="スクリプトラインエディタービューに切り替えます" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value=ビュービルダー title="ブロックエディタービューに切り替え" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=新着... title="スクリプトエディターをクリアする" onclick=script_newScriptDlg()><input type=button value=負荷... title="ファイルからスクリプトを読み込む" onclick=script_runScriptDlg()><input type=button value=セーブ... title="スクリプトをファイルに保存する" onclick=script_saveScript(event)><input type=button value=再起動 title="スクリプトをコンパイルし、最初から実行する準備をします" onclick=resetScriptButton()><input type=button value=継続する title="現在の実行ポイントからスクリプトを実行します" onclick=runScriptButton()><input type=button value=ブレーク title="スクリプトの実行を一時停止します" onclick=breakScriptButton()><input type=button value=ステップ title="スクリプトの1つのステップを実行する" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>スクリプトビルダー</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder=フィルターブロック... onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>脚本</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>コンパイルされたスクリプト</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>変数</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>コンソール</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>ストレージ</h1><span id=61></span></div><div id=p22 style=display:none><h1>イベントのサブスクリプション</h1><span id=62></span></div><div id=p23 style=display:none><h1>ウェイクアラーム</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>ファイル</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=アップ> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value=すべて選択 onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=リネーム onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=削除する onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value=新しいフォルダ onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=アップロードする onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=切る onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=コピーする onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=ペースト onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=リフレッシュ onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">名前順<option value=2>サイズで並べ替え<option value=3>日付けで並び替え<option value=4>名前で降順<option value=5>サイズで降順<option value=6>日付で降順</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>ユーザー名</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>パスワード*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>パスワードを認証する</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>地元<option value=1>通信網<option value=2>どれか</select><div>許可</div></div><div>付与された権限</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>*大文字、小文字、0〜9、および!@#$%^&*()+-のいずれかを含む最小8文字</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>パワーアクション</div></div><div><span style=color:red>警告:</span>電源操作によっては、データが失われたり、デスクトップ、ターミナル、またはディスクのリダイレクトセッションが切断されたりする場合があります。</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>同意コード</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>プライマリディスプレイ<option value=1>セカンダリディスプレイ<option id=d6ThirdDisplay value=2 style=display:none>3番目のディスプレイ</select><div>同意表示</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16、カラー<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>画像エンコーディング</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>ローカルマウスカーソルを表示</label><br><label><input type=checkbox id=d7showcad>Ctrl-Alt-Delを表示する</label><br><label><input type=checkbox id=d7limitFrameRate>フレームレートを制限</label><br><label><input type=checkbox id=d7noMouseRotate>マウスを回転させない</label><br></div><div>その他の設定</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">ソフトウェアKVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>品質</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87.5%<option value=768>75%<option value=640>62.5%<option value=512>50%<option value=384>37.5%<option value=256>25%<option value=128>12.5%</select><div style=height:20px>スケーリング</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=管理者 style=float:right;width:220px><div style=height:20px>ユーザー名</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>パスワード</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>リダイレクトポート</label><label id=c15 style=display:block><input type=checkbox id=c16>KVMリモートデスクトップ</label><label style=display:block><input type=checkbox id=c17>IDEリダイレクト<br></label><label style=display:block><input type=checkbox id=c18>Serial-over-LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>不要<br></label><label><input type=radio name=d10 id=c20 value=1>KVMにのみ必要<br></label><label><input type=radio name=d10 id=c21 value=4294967295>常に必要<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="最大32文字"><div title="最大32文字">プロファイル名</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="最大32文字"><div title="最大32文字">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>優先</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>認証</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>無し</select><div>暗号化</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="8〜63文字の長さ"><div title="8〜63文字の長さ">パスワード*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="8〜63文字の長さ"><div title="8〜63文字の長さ">パスワードを認証する</div></div></div><div id=dialog19 style=margin:auto;margin:3px>これにより、このマシンのインテル®AMTの状態全体がファイルに保存されます。パスワードは保存されませんが、一部の機密データが含まれる場合があります。<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>無効<br><input type=radio name=d20 id=d20b value=1>ICMP応答<br><input type=radio name=d20 id=d20c value=2>RMCP応答<br><input type=radio name=d20 id=d20d value=3>ICMPおよびRMCP応答<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>オペレーティングシステムのIPアドレスの同期</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>IPアドレス</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>サブネットマーク</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>ゲートウェイ</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>プライマリDNS</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>代替DNS</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>無効<option value=1>無効、DHCPアップデート<option value=2>有効</select><div>動的DNSクライアント</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>更新間隔(分)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL(秒)</div></div><div style=font-size:10px><br>デフォルトの間隔は1440分、デフォルトのTTLは900秒です。</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>パワーアップ<option value=10>リセット<option value=5>パワーサイクル<option value=8>パワーダウン<option id=d24p500 value=500>スタンバイからのOSウェイク<option id=d24p501 value=501>OSの省電力<option value=999>起動オプションを設定する</select><div>リモートコマンド</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>BIOS一時停止</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>セキュアブートを強制する</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>BIOS設定</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>強制進行イベント</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>ロック電源ボタン</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>ロックリセットボタン</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>ロックスリープボタン</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>キーボードをロック</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>BIOSパスワードバイパス</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>BIOSの再フラッシュ</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>セーフモード</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>IDERを使用する</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Serial-over-LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>インテル®リモートセキュア消去</label><br></div></div><div>起動設定</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>無し<option id=ForceDVDBootOption value=1>CD / DVDブートを強制する<option id=ForcePXEBootOption value=2>PXEブートを強制する<option id=ForceHDBootOption value=3>強制的にハードディスクを起動<option id=ForceDiagBootOption value=4>診断ブートを強制</select><div>ブートソース</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>無し<option value=1>インデックス1<option value=2>インデックス2<option value=3>インデックス3<option value=3>インデックス4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>フロッピーから起動<option value=1>CDROMから起動</select><div>IDERブートデバイス</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>システムのデフォルト<option id=c45 value=1>静か<option id=c46 value=2>冗長<option id=c47 value=3>空白の画面</select><div>冗長</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>RSEパスワード</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>アラーム名</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>ウェイク日(年月日)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>ウェイク時間(時:分:秒)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>間隔(日-時間-分)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>アラームを保持<option value=1>完了時に削除</select></div><div style=padding-top:4px>起きた後</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=キャンセル style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=OK style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=削除する style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"\u7121\u52b9\u306a\u30c7\u30fc\u30bf":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):
92
+7>c[2]?format("AMT One Click Recovery: {0}",v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0"+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... \u306b\u5909\u308f\u3063\u305f"+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"\u30b1\u30fc\u30b9\u4fb5\u5165";if(192==a&&0==
93
+b&&170==c[0]&&48==c[1]){if(0==c[2])return"\u30ea\u30e2\u30fc\u30c8\u30b7\u30ea\u30a2\u30eb\u30aa\u30fc\u30d0\u30fcLAN\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u78ba\u7acb\u3055\u308c\u307e\u3057\u305f\u3002";if(1==c[2])return"\u30ea\u30e2\u30fc\u30c8\u30b7\u30ea\u30a2\u30eb\u30aa\u30fc\u30d0\u30fcLAN\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u7d42\u4e86\u3057\u307e\u3057\u305f\u3002\u30e6\u30fc\u30b6\u30fc\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u304c\u5fa9\u5143\u3055\u308c\u307e\u3057\u305f\u3002";if(2==c[2])return"\u30ea\u30e2\u30fc\u30c8IDE\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u78ba\u7acb\u3055\u308c\u307e\u3057\u305f\u3002";
94
+if(3==c[2])return"\u30ea\u30e2\u30fc\u30c8IDE\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u7d42\u4e86\u3057\u307e\u3057\u305f\u3002\u30e6\u30fc\u30b6\u30fc\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u304c\u5fa9\u5143\u3055\u308c\u307e\u3057\u305f\u3002"}if(36==a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="\u6709\u7dda"),4294967293==a?"\u53d7\u4fe1\u3057\u305f\u3059\u3079\u3066\u306e\u30d1\u30b1\u30c3\u30c8\u30d5\u30a3\u30eb\u30bf\u30fc\u304c\u4e00\u81f4\u3057\u307e\u3057\u305f"+
95
+b+" \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u3002":4294967292==a?"\u3059\u3079\u3066\u306e\u9001\u4fe1\u30d1\u30b1\u30c3\u30c8\u30d5\u30a3\u30eb\u30bf\u30fc\u304c\u4e00\u81f4\u3057\u307e\u3057\u305f"+b+" \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u3002":4294967290==a?"\u30b9\u30d7\u30fc\u30d5\u30a3\u30f3\u30b0\u3055\u308c\u305f\u30d1\u30b1\u30c3\u30c8\u30d5\u30a3\u30eb\u30bf\u30fc\u304c\u4e00\u81f4\u3057\u307e\u3057\u305f"+b+" \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u3002":
96
+"\u30d5\u30a3\u30eb\u30bf"+a+" \u306b\u4e00\u81f4\u3057\u307e\u3057\u305f"+b+" \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u3002";if(192==a)return 0==c[2]?"\u547c\u3073\u51fa\u3055\u308c\u305f\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30dd\u30ea\u30b7\u30fc\u3002\u4e00\u90e8\u307e\u305f\u306f\u3059\u3079\u3066\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\uff08TX\uff09\u304c\u505c\u6b62\u3057\u307e\u3057\u305f\u3002":2==c[2]?"\u547c\u3073\u51fa\u3055\u308c\u305f\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30dd\u30ea\u30b7\u30fc\u3002\u4e00\u90e8\u307e\u305f\u306f\u3059\u3079\u3066\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\uff08RX\uff09\u304c\u505c\u6b62\u3057\u307e\u3057\u305f\u3002":
97
+"\u547c\u3073\u51fa\u3055\u308c\u305f\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30dd\u30ea\u30b7\u30fc\u3002";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"\u30ea\u30e2\u30fc\u30c8\u63a5\u7d9a\u306e\u30e6\u30fc\u30b6\u30fc\u8981\u6c42\u3002";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"EAC\u30a8\u30e9\u30fc\uff1aIntel AMT\u306eNAC\u304c\u7121\u52b9\u306b\u306a\u3063\u3066\u3044\u308b\u3068\u304d\u306b\u30dd\u30b9\u30c1\u30e3\u3092\u53d6\u5f97\u3057\u3088\u3046\u3068\u3057\u307e\u3057\u305f\u3002";
98
+if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"HWA\u30a8\u30e9\u30fc\uff1a\u4e00\u822c\u7684\u306a\u30a8\u30e9\u30fc"}return 6==a?"\u8a8d\u8a3c\u306b\u5931\u6557\u3057\u307e\u3057\u305f"+(c[1]+(c[2]<<8))+" \u56de\u3002\u30b7\u30b9\u30c6\u30e0\u304c\u653b\u6483\u3092\u53d7\u3051\u3066\u3044\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002":30==a?"\u30d6\u30fc\u30bf\u30d6\u30eb\u30e1\u30c7\u30a3\u30a2\u306a\u3057":32==a?"\u30aa\u30da\u30ec\u30fc\u30c6\u30a3\u30f3\u30b0\u30b7\u30b9\u30c6\u30e0\u306e\u30ed\u30c3\u30af\u30a2\u30c3\u30d7\u307e\u305f\u306f\u96fb\u6e90\u306e\u4e2d\u65ad":
99
+35==a?"\u30b7\u30b9\u30c6\u30e0\u306e\u8d77\u52d5\u5931\u6557":37==a?"\u30b7\u30b9\u30c6\u30e0\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u304c\u8d77\u52d5\u3057\u307e\u3057\u305f\uff08\u5c11\u306a\u304f\u3068\u30821\u3064\u306eCPU\u304c\u6b63\u3057\u304f\u5b9f\u884c\u3055\u308c\u3066\u3044\u307e\u3059\uff09\u3002":"\u4e0d\u660e\u306a\u30bb\u30f3\u30b5\u30fc\u30bf\u30a4\u30d7\uff03"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=
100
+MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,
101
+10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>\u5730\u5143</i>",g=5);3==b.InitiatorType&&(b.Initiator="<i>KVM\u30c7\u30d5\u30a9\u30eb\u30c8\u30dd\u30fc\u30c8</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+
102
+1,w,[r[0],e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/","http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=
103
+function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),
104
+b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,
105
+A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==
106
+a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
107
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
108
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
109
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
110
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
111
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
112
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
113
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
114
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
115
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
116
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
117
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
118
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
119
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
120
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
121
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
122
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
123
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
124
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
125
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
126
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
127
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
128
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
129
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
130
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
131
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
132
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
133
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
134
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
135
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
136
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
137
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
138
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
139
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
140
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
141
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
142
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
143
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
144
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
145
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
146
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
147
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
148
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
149
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
150
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
151
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
152
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
153
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
154
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
155
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
156
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
157
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="Unspecified\u3002;\u30b7\u30b9\u30c6\u30e0\u306b\u30b7\u30b9\u30c6\u30e0\u30e1\u30e2\u30ea\u304c\u7269\u7406\u7684\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002;\u4f7f\u7528\u53ef\u80fd\u306a\u30b7\u30b9\u30c6\u30e0\u30e1\u30e2\u30ea\u304c\u3042\u308a\u307e\u305b\u3093\u3002\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u3066\u3044\u308b\u3059\u3079\u3066\u306e\u30e1\u30e2\u30ea\u306b\u56de\u5fa9\u4e0d\u53ef\u80fd\u306a\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002;\u56de\u5fa9\u4e0d\u53ef\u80fd\u306a\u30cf\u30fc\u30c9\u30c7\u30a3\u30b9\u30af/ ATAPI / IDE\u30c7\u30d0\u30a4\u30b9\u306e\u30a8\u30e9\u30fc\u3002;\u56de\u5fa9\u4e0d\u53ef\u80fd\u306a\u30b7\u30b9\u30c6\u30e0\u30dc\u30fc\u30c9\u306e\u30a8\u30e9\u30fc\u3002;\u56de\u5fa9\u4e0d\u53ef\u80fd\u306a\u30c7\u30a3\u30b9\u30b1\u30c3\u30c8\u30b5\u30d6\u30b7\u30b9\u30c6\u30e0\u969c\u5bb3\u3002;\u56de\u5fa9\u4e0d\u80fd\u306a\u30cf\u30fc\u30c9\u30c7\u30a3\u30b9\u30af\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u969c\u5bb3\u3002;\u56de\u5fa9\u4e0d\u80fd\u306aPS / 2\u307e\u305f\u306fUSB\u30ad\u30fc\u30dc\u30fc\u30c9\u969c\u5bb3\u3002;\u30ea\u30e0\u30fc\u30d0\u30d6\u30eb\u30d6\u30fc\u30c8\u30e1\u30c7\u30a3\u30a2\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002;\u56de\u5fa9\u4e0d\u80fd\u306a\u30d3\u30c7\u30aa\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u969c\u5bb3\u3002;\u30d3\u30c7\u30aa\u30c7\u30d0\u30a4\u30b9\u304c\u691c\u51fa\u3055\u308c\u307e\u305b\u3093\u3002;\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\uff08BIOS\uff09ROM\u7834\u640d\u304c\u691c\u51fa\u3055\u308c\u307e\u3057\u305f\u3002; CPU\u96fb\u5727\u306e\u4e0d\u4e00\u81f4\uff08\u540c\u3058\u96fb\u6e90\u3092\u5171\u6709\u3059\u308b\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc\u306e\u96fb\u5727\u8981\u4ef6\u304c\u4e00\u81f4\u3057\u3066\u3044\u307e\u305b\u3093\uff09; CPU\u901f\u5ea6\u306e\u4e00\u81f4\u306e\u5931\u6557".split(";"),
158
+h="\u6307\u5b9a\u306a\u3057\u3002;\u30e1\u30e2\u30ea\u306e\u521d\u671f\u5316\u3002;\u30cf\u30fc\u30c9\u30c7\u30a3\u30b9\u30af\u306e\u521d\u671f\u5316\u3068\u30c6\u30b9\u30c8\u306e\u958b\u59cb;\u30bb\u30ab\u30f3\u30c0\u30ea\u30d7\u30ed\u30bb\u30c3\u30b5\u306e\u521d\u671f\u5316;\u30e6\u30fc\u30b6\u30fc\u8a8d\u8a3c;\u30e6\u30fc\u30b6\u30fc\u304c\u958b\u59cb\u3057\u305f\u30b7\u30b9\u30c6\u30e0\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7; USB\u30ea\u30bd\u30fc\u30b9\u69cb\u6210; PCI\u30ea\u30bd\u30fc\u30b9\u69cb\u6210;\u30aa\u30d7\u30b7\u30e7\u30f3ROM\u306e\u521d\u671f\u5316;\u30d3\u30c7\u30aa\u306e\u521d\u671f\u5316;\u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u521d\u671f\u5316; SM\u30d0\u30b9\u306e\u521d\u671f\u5316;\u30ad\u30fc\u30dc\u30fc\u30c9\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u521d\u671f\u5316;\u7d44\u307f\u8fbc\u307f\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc/\u7ba1\u7406\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u521d\u671f\u5316;\u30c9\u30c3\u30ad\u30f3\u30b0\u30b9\u30c6\u30fc\u30b7\u30e7\u30f3\u306e\u63a5\u7d9a\u306e\u6709\u52b9\u5316;\u30c9\u30c3\u30ad\u30f3\u30b0\u30b9\u30c6\u30fc\u30b7\u30e7\u30f3\u306e\u30a4\u30cd\u30fc\u30d6\u30ea\u30f3\u30b0;\u30c9\u30c3\u30ad\u30f3\u30b0\u30b9\u30c6\u30fc\u30b7\u30e7\u30f3\u306e\u6392\u51fa;\u30c9\u30c3\u30ad\u30f3\u30b0\u30b9\u30c6\u30fc\u30b7\u30e7\u30f3\u306e\u7121\u52b9\u5316;\u30aa\u30da\u30ec\u30fc\u30c6\u30a3\u30f3\u30b0\u30b7\u30b9\u30c6\u30e0\u306e\u30a6\u30a7\u30a4\u30af\u30a2\u30c3\u30d7\u30d9\u30af\u30c8\u30eb\u306e\u547c\u3073\u51fa\u3057;\u30aa\u30da\u30ec\u30fc\u30c6\u30a3\u30f3\u30b0\u30b7\u30b9\u30c6\u30e0\u306e\u8d77\u52d5\u30d7\u30ed\u30bb\u30b9\u306e\u958b\u59cb;\u30d9\u30fc\u30b9\u30dc\u30fc\u30c9\u307e\u305f\u306f\u30de\u30b6\u30fc\u30dc\u30fc\u30c9\u306e\u521d\u671f\u5316;\u4e88\u7d04;\u30d5\u30ed\u30c3\u30d4\u30fc\u521d\u671f\u5316;\u30ad\u30fc\u30dc\u30fc\u30c9\u30c6\u30b9\u30c8;\u30dd\u30a4\u30f3\u30c6\u30a3\u30f3\u30b0\u30c7\u30d0\u30a4\u30b9\u30c6\u30b9\u30c8;\u30d7\u30e9\u30a4\u30de\u30ea\u30d7\u30ed\u30bb\u30c3\u30b5\u306e\u521d\u671f\u5316".split(";"),
159
+g="\u672a\u6307\u5b9a;\u305d\u306e\u4ed6;\u4e0d\u660e;\u30d7\u30ed\u30bb\u30c3\u30b5;\u30c7\u30a3\u30b9\u30af;\u5468\u8fba\u6a5f\u5668;\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u30e2\u30b8\u30e5\u30fc\u30eb;\u30b7\u30b9\u30c6\u30e0\u30dc\u30fc\u30c9;\u30e1\u30e2\u30ea\u30e2\u30b8\u30e5\u30fc\u30eb;\u30d7\u30ed\u30bb\u30c3\u30b5\u30e2\u30b8\u30e5\u30fc\u30eb;\u96fb\u6e90\u88c5\u7f6e;\u30ab\u30fc\u30c9\u306b\u8ffd\u52a0;\u30d5\u30ed\u30f3\u30c8\u30d1\u30cd\u30eb\u30dc\u30fc\u30c9;\u30d0\u30c3\u30af\u30d1\u30cd\u30eb\u30dc\u30fc\u30c9;\u96fb\u6e90\u30b7\u30b9\u30c6\u30e0\u30dc\u30fc\u30c9;\u30c9\u30e9\u30a4\u30d6\u30d0\u30c3\u30af\u30d7\u30ec\u30fc\u30f3;\u30b7\u30b9\u30c6\u30e0\u5185\u90e8\u62e1\u5f35\u30dc\u30fc\u30c9;\u305d\u306e\u4ed6\u306e\u30b7\u30b9\u30c6\u30e0\u30dc\u30fc\u30c9;\u30d7\u30ed\u30bb\u30c3\u30b5\u30dc\u30fc\u30c9;\u96fb\u6e90\u30e6\u30cb\u30c3\u30c8;\u96fb\u6e90\u30e2\u30b8\u30e5\u30fc\u30eb;\u96fb\u6e90\u7ba1\u7406\u30dc\u30fc\u30c9;\u30b7\u30e3\u30fc\u30b7\u30d0\u30c3\u30af\u30d1\u30cd\u30eb\u30dc\u30fc\u30c9;\u30b7\u30b9\u30c6\u30e0\u30b7\u30e3\u30fc\u30b7;\u30b5\u30d6\u30b7\u30e3\u30fc\u30b7;\u305d\u306e\u4ed6\u306e\u30b7\u30e3\u30fc\u30b7\u30dc\u30fc\u30c9;\u30c7\u30a3\u30b9\u30af\u30d9\u30a4;\u5468\u8fba\u6a5f\u5668\u30d9\u30a4;\u30c7\u30d0\u30a4\u30b9\u30d9\u30a4;\u30d5\u30a1\u30f3\u51b7\u5374;\u51b7\u5374\u30e6\u30cb\u30c3\u30c8;\u30b1\u30fc\u30d6\u30eb\u76f8\u4e92\u63a5\u7d9a;\u30e1\u30e2\u30ea\u30c7\u30d0\u30a4\u30b9;\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2; BIOS ; Intel\uff08r\uff09ME ;\u30b7\u30b9\u30c6\u30e0\u30d0\u30b9;\u30b0\u30eb\u30fc\u30d7; Intel\uff08r\uff09ME ;\u5916\u90e8\u74b0\u5883;\u30d0\u30c3\u30c6\u30ea\u30fc;\u51e6\u7406\u30d6\u30ec\u30fc\u30c9;\u63a5\u7d9a\u30b9\u30a4\u30c3\u30c1;\u30d7\u30ed\u30bb\u30c3\u30b5/\u30e1\u30e2\u30ea\u30e2\u30b8\u30e5\u30fc\u30eb; I / O\u30e2\u30b8\u30e5\u30fc\u30eb;\u30d7\u30ed\u30bb\u30c3\u30b5I / O\u30e2\u30b8\u30e5\u30fc\u30eb;\u7ba1\u7406\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2; IPMI\u30c1\u30e3\u30cd\u30eb; PCI\u30d0\u30b9; PCI\u30a8\u30af\u30b9\u30d7\u30ec\u30b9\u30d0\u30b9; SCSI\u30d0\u30b9; SATA / SAS\u30d0\u30b9;\u30d7\u30ed\u30bb\u30c3\u30b5\u30d5\u200b\u200b\u30ed\u30f3\u30c8\u30b5\u30a4\u30c9\u30d0\u30b9".split(";");
160
+l.RealmNames=";;\u30ea\u30c0\u30a4\u30ec\u30af\u30c8;;\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u30a2\u30bb\u30c3\u30c8;\u30ea\u30e2\u30fc\u30c8\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb;\u30b9\u30c8\u30ec\u30fc\u30b8;\u30a4\u30d9\u30f3\u30c8\u30de\u30cd\u30fc\u30b8\u30e3;\u30b9\u30c8\u30ec\u30fc\u30b8\u7ba1\u7406;\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u30d7\u30ec\u30bc\u30f3\u30b9\u30ed\u30fc\u30ab\u30eb;\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u30d7\u30ec\u30bc\u30f3\u30b9\u30ea\u30e2\u30fc\u30c8;\u56de\u8def\u906e\u65ad\u5668;\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u6642\u9593;\u4e00\u822c\u60c5\u5831;\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u306e\u66f4\u65b0; EIT ; LocalUN ;\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u30a2\u30af\u30bb\u30b9\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb;\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u30a2\u30af\u30bb\u30b9\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u7ba1\u7406;\u30a4\u30d9\u30f3\u30c8\u30ed\u30b0\u30ea\u30fc\u30c0\u30fc;\u76e3\u67fb\u30ed\u30b0; ACL\u30ec\u30eb\u30e0;;;\u30ed\u30fc\u30ab\u30eb\u30b7\u30b9\u30c6\u30e0".split(";");
161
+l.WatchdogCurrentStates={1:"\u59cb\u307e\u3063\u3066\u3044\u306a\u3044",2:"\u505c\u6b62",4:"\u30e9\u30f3\u30cb\u30f3\u30b0",8:"\u671f\u9650\u5207\u308c",16:"\u4e00\u6642\u505c\u6b62"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),
162
+D={1:"",2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u7ba1\u7406\u8005",17:"RCO",18:"\u30ea\u30c0\u30a4\u30ec\u30af\u30b7\u30e7\u30f3\u30de\u30cd\u30fc\u30b8\u30e3\u30fc",19:"\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u66f4\u65b0\u30de\u30cd\u30fc\u30b8\u30e3\u30fc",20:"\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u76e3\u67fb\u30ed\u30b0",21:"\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u6642\u9593",22:"\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7ba1\u7406",23:"\u30b9\u30c8\u30ec\u30fc\u30b8\u7ba1\u7406",
163
+24:"\u30a4\u30d9\u30f3\u30c8\u30de\u30cd\u30fc\u30b8\u30e3",25:"\u30b5\u30fc\u30ad\u30c3\u30c8\u30d6\u30ec\u30fc\u30ab\u30fc\u30de\u30cd\u30fc\u30b8\u30e3\u30fc",26:"\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u30d7\u30ec\u30bc\u30f3\u30b9\u30de\u30cd\u30fc\u30b8\u30e3\u30fc",27:"\u30ef\u30a4\u30e4\u30ec\u30b9\u69cb\u6210",28:"EAC",29:"KVM",30:"\u30e6\u30fc\u30b6\u30fc\u306e\u30aa\u30d7\u30c8\u30a4\u30f3\u30a4\u30d9\u30f3\u30c8",32:"\u753b\u9762\u306e\u30d6\u30e9\u30f3\u30ad\u30f3\u30b0",33:"\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u30a4\u30d9\u30f3\u30c8",
164
+1600:"\u30d7\u30ed\u30d3\u30b8\u30e7\u30cb\u30f3\u30b0\u304c\u958b\u59cb\u3055\u308c\u307e\u3057\u305f",1601:"\u30d7\u30ed\u30d3\u30b8\u30e7\u30cb\u30f3\u30b0\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f",1602:"\u8ffd\u52a0\u3055\u308c\u305fACL\u30a8\u30f3\u30c8\u30ea",1603:"ACL\u30a8\u30f3\u30c8\u30ea\u304c\u5909\u66f4\u3055\u308c\u307e\u3057\u305f",1604:"\u524a\u9664\u3055\u308c\u305fACL\u30a8\u30f3\u30c8\u30ea",1605:"\u7121\u52b9\u306a\u8a8d\u8a3c\u60c5\u5831\u306b\u3088\u308bACL\u30a2\u30af\u30bb\u30b9",
165
+1606:"ACL\u30a8\u30f3\u30c8\u30ea\u306e\u72b6\u614b",1607:"TLS\u72b6\u614b\u304c\u5909\u66f4\u3055\u308c\u307e\u3057\u305f",1608:"TLS\u30b5\u30fc\u30d0\u30fc\u8a3c\u660e\u66f8\u30bb\u30c3\u30c8",1609:"TLS\u30b5\u30fc\u30d0\u30fc\u8a3c\u660e\u66f8\u306e\u524a\u9664",1610:"TLS\u4fe1\u983c\u3055\u308c\u305f\u30eb\u30fc\u30c8\u8a3c\u660e\u66f8\u304c\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f",1611:"TLS\u4fe1\u983c\u3055\u308c\u305f\u30eb\u30fc\u30c8\u8a3c\u660e\u66f8\u304c\u524a\u9664\u3055\u308c\u307e\u3057\u305f",
166
+1612:"TLS\u4e8b\u524d\u5171\u6709\u30ad\u30fc\u30bb\u30c3\u30c8",1613:"\u5909\u66f4\u3055\u308c\u305fKerberos\u8a2d\u5b9a",1614:"\u5909\u66f4\u3055\u308c\u305fKerberos\u30e1\u30a4\u30f3\u30ad\u30fc",1615:"\u30d5\u30e9\u30c3\u30b7\u30e5\u6469\u8017\u30ab\u30a6\u30f3\u30bf\u30fc\u306e\u30ea\u30bb\u30c3\u30c8",1616:"\u30d1\u30ef\u30fc\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u5909\u66f4\u3055\u308c\u307e\u3057\u305f",1617:"\u30ec\u30eb\u30e0\u8a8d\u8a3c\u30e2\u30fc\u30c9\u3092\u8a2d\u5b9a\u3059\u308b",1618:"\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3092\u7ba1\u7406\u5236\u5fa1\u30e2\u30fc\u30c9\u306b\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9",
167
+1619:"\u30d7\u30ed\u30d3\u30b8\u30e7\u30cb\u30f3\u30b0\u89e3\u9664\u3092\u958b\u59cb\u3057\u307e\u3057\u305f",1700:"\u5b9f\u884c\u3055\u308c\u305f\u30d1\u30ef\u30fc\u30a2\u30c3\u30d7",1701:"\u30d1\u30ef\u30fc\u30c0\u30a6\u30f3\u3092\u5b9f\u884c\u3057\u307e\u3057\u305f",1702:"\u5b9f\u884c\u3055\u308c\u305f\u30d1\u30ef\u30fc\u30b5\u30a4\u30af\u30eb",1703:"\u30ea\u30bb\u30c3\u30c8\u3092\u5b9f\u884c\u3057\u307e\u3057\u305f",1704:"\u30d6\u30fc\u30c8\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u8a2d\u5b9a",1800:"IDER\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u958b\u59cb\u3055\u308c\u307e\u3057\u305f",
168
+1801:"IDER\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u7d42\u4e86\u3057\u307e\u3057\u305f",1802:"IDER\u304c\u6709\u52b9",1803:"IDER\u7121\u52b9",1804:"SoL\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u958b\u59cb\u3055\u308c\u307e\u3057\u305f",1805:"SoL\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u7d42\u4e86\u3057\u307e\u3057\u305f",1806:"SoL\u304c\u6709\u52b9",1807:"SoL\u7121\u52b9",1808:"KVM\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u958b\u59cb\u3057\u307e\u3057\u305f",1809:"KVM\u30bb\u30c3\u30b7\u30e7\u30f3\u304c\u7d42\u4e86\u3057\u307e\u3057\u305f",
169
+1810:"KVM\u304c\u6709\u52b9",1811:"KVM\u7121\u52b9",1812:"VNC\u30d1\u30b9\u30ef\u30fc\u30c9\u304c3\u56de\u5931\u6557\u3057\u305f",1900:"\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u304c\u66f4\u65b0\u3055\u308c\u307e\u3057\u305f",1901:"\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u306e\u66f4\u65b0\u306b\u5931\u6557\u3057\u307e\u3057\u305f",2E3:"\u30af\u30ea\u30a2\u3055\u308c\u305f\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u76e3\u67fb\u30ed\u30b0",2001:"\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u76e3\u67fb\u30dd\u30ea\u30b7\u30fc\u304c\u5909\u66f4\u3055\u308c\u307e\u3057\u305f",
170
+2002:"\u7121\u52b9\u5316\u3055\u308c\u305f\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u76e3\u67fb\u30ed\u30b0",2003:"\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u76e3\u67fb\u30ed\u30b0\u304c\u6709\u52b9",2004:"\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3055\u308c\u305f\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u76e3\u67fb\u30ed\u30b0",2005:"\u56de\u5fa9\u3055\u308c\u305f\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u76e3\u67fb\u30ed\u30b0",2100:"\u30a4\u30f3\u30c6\u30eb®ME\u30bf\u30a4\u30e0\u30bb\u30c3\u30c8",2200:"TCPIP\u30d1\u30e9\u30e1\u30fc\u30bf\u30bb\u30c3\u30c8",
171
+2201:"\u30db\u30b9\u30c8\u540d\u30bb\u30c3\u30c8",2202:"\u30c9\u30e1\u30a4\u30f3\u540d\u30bb\u30c3\u30c8",2203:"VLAN\u30d1\u30e9\u30e1\u30fc\u30bf\u30bb\u30c3\u30c8",2204:"\u30ea\u30f3\u30af\u30dd\u30ea\u30b7\u30fc\u30bb\u30c3\u30c8",2205:"IPv6\u30d1\u30e9\u30e1\u30fc\u30bf\u30bb\u30c3\u30c8",2300:"\u30b0\u30ed\u30fc\u30d0\u30eb\u30b9\u30c8\u30ec\u30fc\u30b8\u5c5e\u6027\u30bb\u30c3\u30c8",2301:"\u30b9\u30c8\u30ec\u30fc\u30b8EACL\u304c\u5909\u66f4\u3055\u308c\u307e\u3057\u305f",2302:"\u30b9\u30c8\u30ec\u30fc\u30b8FPACL\u304c\u5909\u66f4\u3055\u308c\u307e\u3057\u305f",
172
+2303:"\u30b9\u30c8\u30ec\u30fc\u30b8\u66f8\u304d\u8fbc\u307f\u64cd\u4f5c",2400:"\u30a2\u30e9\u30fc\u30c8\u304c\u767b\u9332\u3055\u308c\u307e\u3057\u305f",2401:"\u672a\u767b\u9332\u306e\u30a2\u30e9\u30fc\u30c8",2402:"\u30a4\u30d9\u30f3\u30c8\u30ed\u30b0\u304c\u30af\u30ea\u30a2\u3055\u308c\u307e\u3057\u305f",2403:"\u30a4\u30d9\u30f3\u30c8\u30ed\u30b0\u306e\u51cd\u7d50",2500:"\u8ffd\u52a0\u3055\u308c\u305fCB\u30d5\u30a3\u30eb\u30bf\u30fc",2501:"\u524a\u9664\u3055\u308c\u305fCB\u30d5\u30a3\u30eb\u30bf\u30fc",
173
+2502:"\u8ffd\u52a0\u3055\u308c\u305fCB\u30dd\u30ea\u30b7\u30fc",2503:"\u524a\u9664\u3055\u308c\u305fCB\u30dd\u30ea\u30b7\u30fc",2504:"CB\u30c7\u30d5\u30a9\u30eb\u30c8\u30dd\u30ea\u30b7\u30fc\u30bb\u30c3\u30c8",2505:"CB\u30d2\u30e5\u30fc\u30ea\u30b9\u30c6\u30a3\u30c3\u30af\u30aa\u30d7\u30b7\u30e7\u30f3\u30bb\u30c3\u30c8",2506:"CB\u30d2\u30e5\u30fc\u30ea\u30b9\u30c6\u30a3\u30c3\u30af\u30b9\u72b6\u614b\u304c\u30af\u30ea\u30a2\u3055\u308c\u307e\u3057\u305f",2600:"\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u304c\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f",
174
+2601:"\u524a\u9664\u3055\u308c\u305f\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0",2602:"\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u30a2\u30af\u30b7\u30e7\u30f3\u30bb\u30c3\u30c8",2700:"\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u304c\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f",2701:"\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u304c\u524a\u9664\u3055\u308c\u307e\u3057\u305f",2702:"\u66f4\u65b0\u3055\u308c\u305f\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb",
175
+2800:"EAC\u59ff\u52e2\u7f72\u540d\u8005\u30bb\u30c3\u30c8",2801:"EAC\u6709\u52b9",2802:"EAC\u7121\u52b9",2803:"EAC\u59ff\u52e2\u72b6\u614b",2804:"EAC\u30bb\u30c3\u30c8\u30aa\u30d7\u30b7\u30e7\u30f3",2900:"KVM\u30aa\u30d7\u30c8\u30a4\u30f3\u304c\u6709\u52b9",2901:"KVM\u30aa\u30d7\u30c8\u30a4\u30f3\u7121\u52b9",2902:"KVM\u30d1\u30b9\u30ef\u30fc\u30c9\u304c\u5909\u66f4\u3055\u308c\u307e\u3057\u305f",2903:"KVM\u306e\u540c\u610f\u306b\u6210\u529f\u3057\u307e\u3057\u305f",2904:"KVM\u540c\u610f\u306b\u5931\u6557\u3057\u307e\u3057\u305f",
176
+3E3:"\u30aa\u30d7\u30c8\u30a4\u30f3\u30dd\u30ea\u30b7\u30fc\u306e\u5909\u66f4",3001:"\u540c\u610f\u30b3\u30fc\u30c9\u30a4\u30d9\u30f3\u30c8\u306e\u9001\u4fe1",3002:"\u30aa\u30d7\u30c8\u30a4\u30f3\u30d6\u30ed\u30c3\u30af\u30a4\u30d9\u30f3\u30c8\u306e\u958b\u59cb"};l.GetAuditLogExtendedDataStr=function(a,b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,2+b.charCodeAt(1));if(1603==a)return 0==b.charCodeAt(1)?b.substring(3):null;if(1605==a)return["\u7121\u52b9\u306aME\u30a2\u30af\u30bb\u30b9",
177
+"\u7121\u52b9\u306aMEBx\u30a2\u30af\u30bb\u30b9"][b.charCodeAt(0)];if(1606==a){var c=["\u7121\u52b9","\u6709\u52b9"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+="\u3001"+b.substring(3));return c}return 1607==a?"\u30ea\u30e2\u30fc\u30c8"+["NoAuth","ServerAuth","\u76f8\u4e92\u8a8d\u8a3c"][b.charCodeAt(0)]+"\u3001 \u5730\u5143"+["NoAuth","ServerAuth","\u76f8\u4e92\u8a8d\u8a3c"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+"\u3001"+["NoAuth","Auth","\u7121\u52b9"][b.charCodeAt(4)]:1619==a?["BIOS",
178
+"MEBx","\u30ed\u30fc\u30ab\u30ebMEI","\u30ed\u30fc\u30ab\u30ebWSMAN","\u30ea\u30e2\u30fc\u30c8WSAMN"][b.charCodeAt(0)]:1900==a?"\u304b\u3089"+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" \u306b"+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"\u304b\u3089"+["\u7121\u3057","KVM","\u3059\u3079\u3066"][b.charCodeAt(0)]+" \u306b"+["\u7121\u3057",
179
+"KVM","\u3059\u3079\u3066"][b.charCodeAt(1)]:3001==a?["\u6210\u529f","3\u56de\u5931\u6557"][b.charCodeAt(0)]:null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}
180
+function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
181
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
182
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
183
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
184
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
185
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
186
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
187
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
188
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
189
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
190
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
191
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
192
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
193
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
194
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
195
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
196
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
197
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
198
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
199
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
200
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
201
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
202
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
203
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
204
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
205
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
206
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
207
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
208
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
209
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
210
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
211
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
212
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
213
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
214
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
215
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
216
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
217
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
218
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
219
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
220
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
221
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
222
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
223
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
224
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
225
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
226
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
227
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
228
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
229
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
230
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
231
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
232
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
233
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
234
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
235
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
236
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
237
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
238
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
239
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
240
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
241
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
242
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
243
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
244
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
245
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
246
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
247
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
248
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
249
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
250
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
251
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
252
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
253
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
254
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
255
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
256
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
257
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
258
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
259
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
260
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
261
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
262
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
263
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
264
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
265
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
266
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
267
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
268
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
269
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
270
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
271
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
272
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
273
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
274
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
275
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
276
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
277
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
278
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
279
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
280
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
281
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
282
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
283
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
284
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
285
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
286
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
287
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
288
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
289
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
290
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
291
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
292
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
293
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
294
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
295
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
296
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
297
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
298
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
299
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
300
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
301
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
302
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
303
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
304
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
305
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
306
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
307
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
308
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
309
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
310
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
311
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
312
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
313
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
314
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
315
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
316
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
317
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
318
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
319
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
320
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
321
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
322
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
323
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
324
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
325
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
326
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
327
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
328
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
329
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
330
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
331
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
332
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
333
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
334
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
335
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
336
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
337
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
338
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
339
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
340
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
341
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
342
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
343
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
344
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
345
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
346
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
347
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
348
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
349
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
350
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
351
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
352
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
353
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
354
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
355
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
356
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
357
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
358
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
359
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
360
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
361
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
362
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
363
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
364
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
365
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
366
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
367
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
368
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
369
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
370
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
371
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
372
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
373
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
374
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
375
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
376
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
377
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
378
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
379
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
380
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
381
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
382
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
383
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
384
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
385
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
386
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
387
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
388
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
389
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
390
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
391
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
392
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
393
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
394
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
395
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
396
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
397
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
398
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
399
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
400
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
401
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
402
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
403
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
404
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
405
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
406
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
407
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
408
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
409
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
410
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
411
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
412
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
413
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
414
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
415
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
416
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
417
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
418
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
419
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
420
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
421
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
422
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
423
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
424
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
425
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
426
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
427
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
428
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
429
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
430
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
431
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
432
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
433
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
434
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
435
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
436
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
437
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
438
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
439
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
440
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
441
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
442
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
443
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
444
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
445
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
446
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
447
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
448
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
449
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
450
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
451
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
452
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
453
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
454
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
455
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
456
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
457
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
458
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
459
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
460
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
461
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
462
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
463
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
464
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
465
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
466
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
467
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
468
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
469
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
470
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
471
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
472
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
473
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
474
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
475
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
476
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
477
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
478
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
479
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
480
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
481
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
482
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
483
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
484
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
485
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
486
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
487
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
488
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
489
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
490
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
491
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
492
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
493
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
494
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
495
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
496
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
497
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
498
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
499
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
500
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
501
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
502
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
503
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
504
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
505
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
506
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
507
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
508
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
509
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
510
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
511
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
512
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
513
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
514
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
515
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
516
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
517
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
518
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
519
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
520
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
521
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
522
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
523
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
524
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
525
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
526
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
527
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
528
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
529
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
530
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
531
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
532
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
533
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
534
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
535
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
536
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
537
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
538
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
539
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
540
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
541
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
542
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
543
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
544
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
545
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
546
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
547
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
548
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
549
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
550
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
551
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
552
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
553
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
554
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
555
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
556
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
557
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
558
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
559
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
560
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
561
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
562
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
563
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
564
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
565
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
566
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
567
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
568
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
569
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
570
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
571
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
572
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
573
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
574
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
575
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
576
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
577
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
578
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
579
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
580
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
581
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
582
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
583
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
584
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
585
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
586
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
587
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
588
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
589
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
590
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
591
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
592
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
593
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
594
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
595
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
596
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
597
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
598
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
599
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
600
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
601
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
602
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
603
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
604
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
605
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
606
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
607
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
608
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
609
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
610
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
611
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
612
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
613
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
614
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
615
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
616
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
617
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
618
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
619
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
620
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
621
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
622
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
623
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
624
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
625
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
626
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
627
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
628
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
629
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
630
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
631
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
632
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
633
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
634
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
635
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
636
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
637
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
638
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
639
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
640
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
641
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
642
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
643
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
644
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
645
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
646
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
647
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
648
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
649
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
650
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
651
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
652
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
653
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
654
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
655
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
656
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
657
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
658
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
659
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
660
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
661
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
662
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
663
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
664
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
665
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
666
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
667
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
668
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
669
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
670
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
671
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
672
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
673
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
674
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
675
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
676
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
677
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
678
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
679
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
680
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
681
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
682
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
683
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
684
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
685
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
686
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
687
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
688
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
689
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
690
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
691
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
692
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
693
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
694
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
695
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
696
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
697
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
698
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
699
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
700
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
701
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
702
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
703
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
704
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
705
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
706
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
707
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
708
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
709
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
710
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
711
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
712
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
713
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
714
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
715
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
716
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
717
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
718
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
719
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
720
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
721
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
722
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
723
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
724
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
725
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
726
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
727
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
728
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
729
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
730
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
731
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
732
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
733
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
734
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
735
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
736
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
737
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
738
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
739
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
740
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
741
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
742
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
743
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
744
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
745
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
746
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
747
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
748
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
749
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
750
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
751
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
752
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
753
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
754
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
755
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
756
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
757
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
758
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
759
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
760
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
761
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
762
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
763
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
764
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
765
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
766
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
767
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
768
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
769
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
770
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
771
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
772
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
773
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
774
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
775
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
776
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
777
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
778
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
779
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
780
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
781
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
782
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
783
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
784
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
785
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
786
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
787
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
788
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
789
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
790
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
791
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
792
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
793
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
794
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
795
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
796
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
797
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
798
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
799
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
800
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
801
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
802
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
803
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
804
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
805
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
806
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
807
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
808
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
809
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
810
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
811
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
812
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
813
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
814
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
815
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
816
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
817
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
818
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
819
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
820
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
821
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
822
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
823
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
824
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
825
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
826
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
827
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
828
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
829
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
830
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
831
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
832
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
833
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
834
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
835
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
836
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
837
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
838
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
839
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
840
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
841
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
842
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
843
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
844
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
845
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
846
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
847
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
848
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
849
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
850
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
851
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
852
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
853
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
854
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
855
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
856
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
857
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
858
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
859
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
860
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
861
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
862
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
863
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
864
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
865
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
866
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
867
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
868
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
869
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
870
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
871
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
872
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
873
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
874
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
875
+k.Init();return k},ZLIB=ZLIB||{};
876
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
877
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
878
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
879
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
880
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
881
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
882
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
883
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
884
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
885
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
886
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
887
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
888
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
889
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
890
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
891
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
892
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
893
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
894
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
895
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
896
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
897
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
898
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
899
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
900
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
901
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
902
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
903
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
904
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
905
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
906
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
907
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
908
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
909
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
910
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
911
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
912
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
913
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
914
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
915
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
916
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
917
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
918
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
919
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
920
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
921
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
922
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
923
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
924
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
925
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
926
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
927
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
928
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
929
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
930
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
931
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
932
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
933
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
934
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
935
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
936
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
937
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
938
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
939
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
940
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
941
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
942
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
943
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
944
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
945
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
946
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
947
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
948
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
949
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
950
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
951
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
952
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
953
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
954
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
955
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>\u8aad\u307f\u8fbc\u3093\u3067\u3044\u307e\u3059...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
956
+StatusStrs=["\u5207\u65ad\u3055\u308c\u305f","\u63a5\u7d9a\u3057\u3066\u3044\u307e\u3059...","\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7...","\u63a5\u7d9a\u3055\u308c\u3066\u3044\u307e\u3059"],scriptstate,t,t2,rsepass=null;
957
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
958
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR + LF":"LF";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
959
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
960
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
961
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
962
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
963
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="\u5207\u65ad\u3059\u308b"}function getCurrentMeshNode(){return currentMeshNode}
964
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="\u30ad\u30e3\u30d7\u30c1\u30e3\u3092\u958b\u59cb";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
965
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
966
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
967
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
968
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
969
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
970
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
971
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
972
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="\u63a5\u7d9a\u3059\u308b";QH(5,"\u5207\u65ad\u3055\u308c\u305f");go(100)}
973
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
974
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
975
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
976
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
977
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
978
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
979
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
980
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
981
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
982
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
983
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"\u30af\u30ed\u30c3\u30af\u3092\u540c\u671f",3,syncClockEx,"\u30a4\u30f3\u30c6\u30ebAMT\u30af\u30ed\u30c3\u30af\u3092\u3053\u306e\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u3068\u540c\u671f\u3057\u307e\u3059\u304b\uff1f")}
984
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","\u6642\u9593\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001\u30b9\u30c6\u30fc\u30bf\u30b9="+d):0!=a.Body.ReturnValue?messagebox("","\u6642\u9593\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001\u30a8\u30e9\u30fc\uff1a"+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,
985
+b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}var DMTFPowerStates=" \u96fb\u6e90\u30aa\u30f3 \u6d45\u3044\u7720\u308a \u6df1\u3044\u7720\u308a \u30d1\u30ef\u30fc\u30b5\u30a4\u30af\u30eb\uff08\u30bd\u30d5\u30c8\u30aa\u30d5\uff09 \u30aa\u30d5-\u30cf\u30fc\u30c9 \u30cf\u30a4\u30d0\u30cd\u30fc\u30c8\uff08\u30aa\u30d5\u30bd\u30d5\u30c8\uff09 \u30bd\u30d5\u30c8\u30aa\u30d5 \u30d1\u30ef\u30fc\u30b5\u30a4\u30af\u30eb\uff08\u30aa\u30d5\u30cf\u30fc\u30c9\uff09 \u30e1\u30a4\u30f3\u30d0\u30b9\u30ea\u30bb\u30c3\u30c8 \u8a3a\u65ad\u5272\u308a\u8fbc\u307f\uff08NMI\uff09 \u9069\u7528\u3067\u304d\u307e\u305b\u3093 \u30aa\u30d5-\u512a\u96c5\u306a\u30bd\u30d5\u30c8 \u30aa\u30d5-\u512a\u96c5\u306a\u30cf\u30fc\u30c9 \u30de\u30b9\u30bf\u30fc\u30d0\u30b9\u306e\u30ea\u30bb\u30c3\u30c8 \u30d1\u30ef\u30fc\u30b5\u30a4\u30af\u30eb\uff08\u30aa\u30d5-\u30bd\u30d5\u30c8\u30b0\u30ec\u30fc\u30b9\u30d5\u30eb\uff09 \u30d1\u30ef\u30fc\u30b5\u30a4\u30af\u30eb\uff08\u30aa\u30d5-\u512a\u96c5\u306a\u30cf\u30fc\u30c9\uff09 \u8a3a\u65ad\u5272\u308a\u8fbc\u307f\uff08INIT\uff09".split(" ");
986
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>\u308f\u304b\u3089\u306a\u3044</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"\u96fb\u6e90\u30aa\u30f3"==a&&amtsysstate.IPS_PowerManagementService&&
987
+amtsysstate.IPS_PowerManagementService.response&&3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=["\u3001 \u5dee\u3057\u8fbc\u3080","\u3001 \u96fb\u6c60\u3067"][q.PowerSource]);d+=TableEntry("\u529b",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>\u7121\u3057</i>":EscapeHtml(c);d+=TableEntry("\u540d\u524d\u3068\u30c9\u30e1\u30a4\u30f3",
988
+addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?d+=TableEntry("\u30b7\u30b9\u30c6\u30e0ID",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("\u30b7\u30b9\u30c6\u30e0ID",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" \u7ba1\u7406\u5236\u5fa1\u30e2\u30fc\u30c9\uff08ACM\uff09\u3067\u30a2\u30af\u30c6\u30a3\u30d6\u5316",
989
+4==k.ProvisioningMode&&(p=" \u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u5236\u5fa1\u30e2\u30fc\u30c9\uff08CCM\uff09\u3067\u30a2\u30af\u30c6\u30a3\u30d6\u5316",b=9));d+=TableEntry("\u30a4\u30f3\u30c6\u30eb®ME","v"+getItem(amtlogicalelements,"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),
990
+QV(44,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==
991
+amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);r&&(e+="\u3001\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30dd\u30fc\u30c8");n&&(e+="\u3001Serial-over-LAN");p&&(e+="\u3001IDE\u30ea\u30c0\u30a4\u30ec\u30af\u30c8");w&&(e+="\u3001KVM");""==e&&(e=" \u7121\u3057");d+=TableEntry("\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u6a5f\u80fd",
992
+addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="\u30d7\u30e9\u30a4\u30de\u30ea\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4",7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["\u30d7\u30e9\u30a4\u30de\u30ea\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4","\u30bb\u30ab\u30f3\u30c0\u30ea\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4",
993
+"\u7b2c3\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4"][p.DefaultScreen]),e='<span title="'+format("\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30ea\u30e2\u30fc\u30c8\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4\u306f{0}\u3067\u3059",e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+="\u3001\u30dd\u30fc\u30c85900\u304c\u6709\u52b9"),1==p.OptInPolicy&&(e+="\u3001"+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"\u79d2\u30aa\u30d7\u30c8\u30a4\u30f3":"2\u756a\u76ee\u306e\u30aa\u30d7\u30c8\u30a4\u30f3")),e+="\u3001"+
994
+p.SessionTimeout+" \u5206"+(0<p.SessionTimeout?"s":"")+" \u30bb\u30c3\u30b7\u30e7\u30f3\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8",9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService?((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&1))&&(e+="\u3001\u30d6\u30e9\u30f3\u30ad\u30f3\u30b0\u53ef\u80fd"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("\u30ea\u30e2\u30fc\u30c8\u30c7\u30b9\u30af\u30c8\u30c3\u30d7",addLinkConditional(e,"showDesktopSettingsDlg()",
995
+xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="\u4e0d\u660e\u306a\u72b6\u614b",r=amtsysstate.IPS_OptInService.response.OptInRequired,0==r&&(e="\u4e0d\u8981"),1==r&&(e="KVM\u306b\u306e\u307f\u5fc5\u8981"),4294967295==r&&(e="\u5e38\u306b\u5fc5\u8981"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&
996
+(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(r=e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==
997
+r&&(d+=TableEntry("\u96fb\u6e90\u30dd\u30ea\u30b7\u30fc",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&(d+=TableEntry("\u65e5\u4ed8\u6642\u523b",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";e+=AddButton("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3...","showPowerActionDlg()")+" ";e+=AddButton("\u72b6\u614b\u3092\u4fdd\u5b58...",
998
+"saveEntireAmtState()")+" ";e+=AddButton("\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u5b9f\u884c...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");QH(17,d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+" \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u8a2d\u5b9a\u3092\u5909\u66f4\u3059\u308b\u3068\u3001\u3053\u306e\u30da\u30fc\u30b8\u304c\u4f7f\u7528\u3067\u304d\u306a\u304f\u306a\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002");
999
+d=d+"<br><h2>\u4e00\u822c\u8a2d\u5b9a</h2>"+TableStart();e="";"<i>\u7121\u3057</i>"!=c&&(1==q.SharedFQDN&&(e="\u3001OS\u3068\u5171\u6709"),0==q.SharedFQDN&&(e="\u3001OS\u3068\u306f\u7570\u306a\u308a\u307e\u3059"));d+=TableEntry("\u540d\u524d\u3068\u30c9\u30e1\u30a4\u30f3",addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));c="\u7121\u52b9";1==q.DDNSUpdateEnabled?c="\u305d\u308c\u305e\u308c\u6709\u52b9"+q.DDNSPeriodicUpdateInterval+" \u5206\u3001TTL\u306f"+q.DDNSTTL+" \u5206":1==q.DDNSUpdateByDHCPServerEnabled&&
1000
+(c="DHCP\u30b5\u30fc\u30d0\u30fc\u306b\u3088\u308b\u66f4\u65b0");d+=TableEntry("\u30c0\u30a4\u30ca\u30df\u30c3\u30afDNS",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"\u7121\u7dda\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9":
1001
+"\u6709\u7dda\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9")+"</h2>";d+=TableStart();d+=TableEntry("\u30ea\u30f3\u30af\u72b6\u614b",1==c.LinkIsUp?"\u30ea\u30f3\u30af\u306f\u30a2\u30c3\u30d7\u3057\u3066\u3044\u307e\u3059":"\u30ea\u30f3\u30af\u304c\u30c0\u30a6\u30f3\u3057\u3066\u3044\u307e\u3059");if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 / AC"),14==c.LinkPolicy[l]&&e.push("Sx / AC"),16==c.LinkPolicy[l]&&e.push("S0 / DC"),224==
1002
+c.LinkPolicy[l]&&e.push("Sx / DC");0==e.length&&e.push("");d+=TableEntry("\u30ea\u30f3\u30af\u30dd\u30ea\u30b7\u30fc",addLinkConditional(0==e.length?"\u5229\u7528\u4e0d\u53ef":"\u3067\u5229\u7528\u53ef\u80fd\uff1a"+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("Mac\u30a2\u30c9\u30ec\u30b9",c.MACAddress));amtwirelessif==a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("\u72b6\u614b",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],
1003
+"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("\u30e9\u30b8\u30aa\u5dde",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+"\u3001SSID\uff1a"+(s?s:"<i>\u7121\u3057</i>")));amtwirelessif!=a&&(d+=TableEntry("ping\u306b\u5fdc\u7b54\u3059\u308b",addLinkConditional(["\u7121\u52b9","ICMP\u5fdc\u7b54","RMCP\u5fdc\u7b54","ICMP\u304a\u3088\u3073RMCP\u5fdc\u7b54"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",
1004
+xxAccountAdminName)),e=1==c.DHCPEnabled?"DHCP\u30b5\u30fc\u30d0\u30fc\u3092\u4f7f\u7528\u3057\u3066\u81ea\u52d5":"\u9759\u7684IP\u30a2\u30c9\u30ec\u30b9",1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("IPv4\u72b6\u614b",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("IPv4\u30a2\u30c9\u30ec\u30b9",isIpAddress(c.IPAddress,"\u7121\u3057"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("IPv4\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4/\u30de\u30b9\u30af",c.DefaultGateway+
1005
+" / "+isIpAddress(c.SubnetMask,"\u7121\u3057")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("IPv4\u30c9\u30e1\u30a4\u30f3\u30cd\u30fc\u30e0\u30b5\u30fc\u30d0\u30fc",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r="\u7121\u52b9",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value==
1006
+"Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?"\u6709\u52b9\u3001\u81ea\u52d5\u304a\u3088\u3073\u624b\u52d5\u30a2\u30c9\u30ec\u30b9":"\u6709\u52b9\u3001\u81ea\u52d5\u30a2\u30c9\u30ec\u30b9");d+=TableEntry("IPv6\u72b6\u614b",addLinkConditional(r,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=
1007
+MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+="\u3001"),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("IPv6\u30a2\u30c9\u30ec\u30b9",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("IPv6\u30a2\u30c9\u30ec\u30b9","\u7121\u3057");isIpAddress(c.CurrentDefaultRouter)&&(d+=TableEntry("IPv6\u30c7\u30d5\u30a9\u30eb\u30c8\u30eb\u30fc\u30bf\u30fc",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&
1008
+(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("IPv6\u30c9\u30e1\u30a4\u30f3\u30cd\u30fc\u30e0\u30b5\u30fc\u30d0\u30fc",e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<amtversion||11==amtversion&&5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}
1009
+function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
1010
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
1011
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"\u30ea\u30f3\u30af\u30dd\u30ea\u30b7\u30fc",3,showLinkPolicyDlgEx,a,b)}}
1012
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
1013
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("\u30ea\u30f3\u30af\u30dd\u30ea\u30b7\u30fc",format("\u65b0\u3057\u3044\u30ea\u30f3\u30af\u30dd\u30ea\u30b7\u30fc\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002\u30a8\u30e9\u30fc{0}",d))}
1014
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>\u7121\u3057</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
1015
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>\u4fe1\u983c\u3067\u304d\u308b</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+" \u30d0\u30a4\u30c8\u3001<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+
1016
+c+")>\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" \u30d0\u30a4\u30c8\u3001<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
1017
+function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
1018
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"\u30a4\u30f3\u30c6\u30eb®AMT\u306e\u72b6\u614b\u5168\u4f53\u3092\u4fdd\u5b58",3,saveEntireAmtStateOk)}}
1019
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"\u30a4\u30f3\u30c6\u30eb®AMT\u306e\u72b6\u614b\u5168\u4f53\u3092\u4fdd\u5b58",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1020
+function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1021
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>\u30d7\u30e9\u30a4\u30de\u30ea\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4</option><option value=1>\u30bb\u30ab\u30f3\u30c0\u30ea\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4</option>";9<amtversion&&(c+="<option value=2>\u7b2c3\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4</option>");
1022
+c+='</select><div style=padding-top:4px>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u8868\u793a</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>\u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\uff08\u5206\uff09</div></div>';1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>\u30aa\u30d7\u30c8\u30a4\u30f3\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\uff08\u79d2\uff09</div></div>');
1023
+c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>\u7121\u52b9\u3001\u63a8\u5968</option><option value=1>\u6709\u52b9\u3001\u30ec\u30ac\u30b7\u30fcKVM\u30d3\u30e5\u30fc\u30a2</option></select><div style=padding-top:4px>\u30dd\u30fc\u30c85900</div></div>";c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>5900\u30d1\u30b9\u30ef\u30fc\u30c9\uff088\u6587\u5b57\uff09</div></div>";
1024
+9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+='<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>\u7121\u52b9</option><option value=1>\u6709\u52b9</option></select><div style=padding-top:4px title="\u3053\u306e\u6a5f\u80fd\u306f\u591a\u304f\u306e\u5834\u5408\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093">\u753b\u9762\u306e\u30d6\u30e9\u30f3\u30ad\u30f3\u30b0</div></div>');
1025
+c+="</div>";setDialogMode(11,"\u30ea\u30e2\u30fc\u30c8\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u8a2d\u5b9a",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}
1026
+function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1027
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1028
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("\u30ea\u30e2\u30fc\u30c8\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u8a2d\u5b9a",format("\u30a8\u30e9\u30fc{0}\u3001\u5024\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002",d))}
1029
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("\u30a8\u30e9\u30fc",format("\u753b\u9762\u30d6\u30e9\u30f3\u30ad\u30f3\u30b0\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3053\u306e\u30b7\u30b9\u30c6\u30e0\uff08{0}\uff09\u3067\u306f\u30d6\u30e9\u30f3\u30ad\u30f3\u30b0\u304c\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u306a\u3044\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002",d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==
1030
+d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1031
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("\u51cd\u7d50\u89e3\u9664\u30ed\u30b0","FreezeLog(0)"):AddButton("\u51cd\u7d50\u30ed\u30b0","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="\u30d5\u30a3\u30eb\u30bf" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1032
+AddRefreshButton("PullEventLog(1)")+AddButton("\u30ed\u30b0\u3092\u30af\u30ea\u30a2","ClearLog()")+AddButton("\u30bb\u30fc\u30d6...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1033
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>\u30bd\u30fc\u30b9</b><td class=r1><b>\u8aac\u660e</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1034
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1035
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"\u30a4\u30d9\u30f3\u30c8\u30ed\u30b0\u3092\u6d88\u53bb\u3057\u307e\u3059\u304b\uff1f"),setDialogMode(1,"\u30a4\u30d9\u30f3\u30c8\u30ed\u30b0",3,ClearLogEx))}
1036
+function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("\u30a4\u30d9\u30f3\u30c8\u30ed\u30b0","\u30af\u30ea\u30a2\u3067\u304d\u307e\u305b\u3093\u3001\u30a8\u30e9\u30fc\uff1a "+d):PullEventLog()})}
1037
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("\u6642\u9593",c.Time.toLocaleString());a+=addHtmlValue("\u30bd\u30fc\u30b9",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("\u8aac\u660e",c.Desc);a+=MoreStart();a+=addHtmlValue("\u30c7\u30d0\u30a4\u30b9\u30a2\u30c9\u30ec\u30b9",c.DeviceAddress);a+=addHtmlValue("\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3",c.Entity);a+=addHtmlValue("\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9",
1038
+c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];a+=addHtmlValue("\u30c7\u30fc\u30bf",d);a+=addHtmlValue("\u30aa\u30d5\u30bb\u30c3\u30c8",c.EventOffset);a+=addHtmlValue("\u30bb\u30f3\u30b5\u30fc\u30bf\u30a4\u30d7",c.EventSensorType);a+=addHtmlValue("\u91cd\u75c7\u5ea6",c.EventSeverity);a+=addHtmlValue("\u30bd\u30fc\u30b9\u306e\u7a2e\u985e",c.EventSourceType);a+=addHtmlValue("\u30bf\u30a4\u30d7",c.EventType);a+=addHtmlValue("\u30bb\u30f3\u30b5\u30fc\u756a\u53f7",
1039
+c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("\u30a4\u30d9\u30f3\u30c8\uff03{0}\u306e\u8a73\u7d30",b+1),a)}}function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1040
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1041
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u30a4\u30d9\u30f3\u30c8\u306e\u30b5\u30d6\u30b9\u30af\u30e9\u30a4\u30d0\u30fc\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)",
1042
+"®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>\u30b5\u30d6\u30b9\u30af\u30ea\u30d7\u30b7\u30e7\u30f3\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002</i></div><br>");
1043
+e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("\u65b0\u3057\u3044\u30b5\u30d6\u30b9\u30af\u30ea\u30d7\u30b7\u30e7\u30f3","newSubscriptionButton()"));b+="<br><td class=r1>"+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"\u62bc\u3059",3:"ACK\u3067\u30d7\u30c3\u30b7\u30e5",4:"\u30a4\u30d9\u30f3\u30c8",5:"\u5f15\u304f"};
1044
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("\u5148",a.Destination);d+=addHtmlValue("\u30d5\u30a3\u30eb\u30bf",c);d+=addHtmlValue("\u914d\u4fe1\u30e2\u30fc\u30c9",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"\u7533\u3057\u8fbc\u307f"+
1045
+(b+1),xxAccountAdminName?5:1,deleteSubscriptionButton,d+"</div>",b)}}
1046
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
1047
+Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1048
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>\u62bc\u3059</option><option value=PushWithAck>ACK\u3067\u30d7\u30c3\u30b7\u30e5</option></select><div style=padding-top:4px>\u30bf\u30a4\u30d7</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+='<option value="'+subscriptionsFilters[c].InstanceID+
1049
+'">'+subscriptionsFilters[c].CollectionName.substring(13)+"</option>";b+="</select><div style=padding-top:4px>\u30d5\u30a3\u30eb\u30bf</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>URL</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>\u7121\u3057</option><option value=1>\u30c0\u30a4\u30b8\u30a7\u30b9\u30c8</option></select><div style=padding-top:4px>\u8a8d\u8a3c</div></div>";
1050
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>\u30e6\u30fc\u30b6\u30fc\u540d</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>\u30d1\u30b9\u30ef\u30fc\u30c9</div></div>";b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>\u8b70\u8ad6</div></div>";
1051
+setDialogMode(11,"\u30a4\u30d9\u30f3\u30c8\u30b5\u30d6\u30b9\u30af\u30ea\u30d7\u30b7\u30e7\u30f3\u3092\u8ffd\u52a0",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1052
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1053
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="\u308f\u304b\u3089\u306a\u3044 \u305d\u306e\u4ed6\u306e \u6709\u52b9 \u7121\u52b9 \u30b7\u30e3\u30c3\u30c8\u30c0\u30a6\u30f3 \u9069\u7528\u3067\u304d\u307e\u305b\u3093 \u6709\u52b9\u3060\u304c\u30aa\u30d5\u30e9\u30a4\u30f3 \u30c6\u30b9\u30c8\u4e2d \u636e\u3048\u7f6e\u304d \u4f11\u6b62 \u8d77\u52d5".split(" ");
1054
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"\u7121\u52b9":"\u6709\u52b9",c&2&&(b+="\u3001\u30ed\u30c3\u30af"),c&4&&(b+="\u3001 \u307b\u307c\u3044\u3063\u3071\u3044"),c&8&&(b+="\u3001\u30d5\u30eb"),c&16&&(b+="\u3001NoKey"),c="<h1>\u76e3\u67fb\u30ed\u30b0\u8a2d\u5b9a</h1>"+TableStart(),c+=TableEntry("\u72b6\u614b",b),c+=TableEntry("\u30b9\u30c8\u30ec\u30fc\u30b8",a[0].CurrentNumberOfRecords+" \u8a18\u9332\uff09\u3001"+a[0].PercentageFree+"\uff05 \u81ea\u7531"),
1055
+c+=TableEntry("\u4e0a\u66f8\u304d\u30dd\u30ea\u30b7\u30fc",2==a[0].OverwritePolicy?"\u3044\u3063\u3071\u3044\u306b\u306a\u3063\u305f\u3068\u304d\u306b\u30e9\u30c3\u30d7":"\u4e0a\u66f8\u304d\u3057\u306a\u3044"),c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1056
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="\u30d5\u30a3\u30eb\u30bf" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("\u30bb\u30fc\u30d6...","SaveAuditLog()")+AddButton("\u30ed\u30b0\u3092\u30af\u30ea\u30a2","ClearAuditLog()"))+"<br>");if(0==c.length)d="\u76e3\u67fb\u30ed\u30b0\u30a4\u30d9\u30f3\u30c8\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002";
1057
+else{var e=0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>\u6642\u9593</b><td class=r1 style=width:260px><b>\u30a4\u30cb\u30b7\u30a8\u30fc\u30bf</b><td class=r1><b>Action</b>";for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+="\u3001"+q.Event);null!=q.ExStr&&
1058
+(p+="\u3001"+q.ExStr);""!=k&&""!=r&&(k+="\u3001");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}
1059
+function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","Intel AMT\u76e3\u67fb\u30ed\u30b0",auditLog)}function ClearAuditLog(b){QH(66,"\u76e3\u67fb\u30ed\u30b0\u3092\u6d88\u53bb\u3057\u307e\u3059\u304b\uff1f");setDialogMode(1,"\u76e3\u67fb\u30ed\u30b0",3,ClearAuditLogEx)}
1060
+function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("\u76e3\u67fb\u30ed\u30b0","\u30a8\u30e9\u30fc\uff1a"+d)}
1061
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("\u6642\u9593",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("\u30a4\u30cb\u30b7\u30a8\u30fc\u30bf",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("\u4f4f\u6240",a.NetAddress));d+=addHtmlValue("\u5fdc\u7528",a.AuditApp);d+=addHtmlValue("\u30a4\u30d9\u30f3\u30c8",a.Event);if(null!=a.ExStr)d+=addHtmlValue("\u62e1\u5f35\u30c7\u30fc\u30bf",a.ExStr);else if(0<a.Ex.length){var e=
1062
+"";for(c in a.Ex)0<e.length&&(e+=","),e+=a.Ex.charCodeAt(c);""!=e&&(d+=addHtmlValue("\u30c7\u30fc\u30bf\u5024",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("\u30c7\u30fc\u30bf\u6587\u5b57\u5217",a.Ex.substring(2)))}messagebox("\u76e3\u67fb\u30a4\u30d9\u30f3\u30c8\uff03"+(b+1)+" \u7d30\u90e8",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;
1063
+function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1064
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1065
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1066
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1067
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"\u7121\u52b9";var c=(1==xxTlsSettings[b].MutualAuthentication?"\u76f8\u4e92\u8a8d\u8a3cTLS":"\u30b5\u30fc\u30d0\u30fc\u8a8d\u8a3cTLS")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" \u304a\u3088\u3073\u975eTLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1068
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("\u30ea\u30e2\u30fc\u30c8TLS\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("\u30ed\u30fc\u30ab\u30ebTLS\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),
1069
+a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u3053\u306e\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u306e\u30a4\u30f3\u30c6\u30eb®AMT\u8a3c\u660e\u66f8\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>");if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>\u8a3c\u660e\u66f8\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&
1070
+(b="\u3001\u4fe1\u983c\u3055\u308c\u305f\u30eb\u30fc\u30c8"),xxCertificates[d].XPrivateKey&&(b="\u3001\u79d8\u5bc6\u9375"),d==xxTlsCurrentCert&&(b+="\u3001TLS\u8a3c\u660e\u66f8"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+b+"</i></div></div>";for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>\u5272\u308a\u5f53\u3066\u3089\u308c\u3066\u3044\u306a\u3044\u79d8\u5bc6\u9375\u30da\u30a2\uff03"+
1071
+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("\u8a3c\u660e\u66f8\u3092\u8ffd\u52a0...","addCertButton()")+AddButton("\u8a3c\u660e\u66f8\u3092\u767a\u884c...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1072
+function showKeyPairDetails(b){setDialogMode(11,"\u30ad\u30fc\u30da\u30a2\uff03"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"\u3053\u308c\u306f\u3001\u3069\u306e\u8a3c\u660e\u66f8\u306b\u3082\u5c5e\u3057\u3066\u3044\u306a\u3044\u516c\u958b/\u79d8\u5bc6\u8a3c\u660e\u66f8\u306e\u30ad\u30fc\u30da\u30a2\u3067\u3059\u3002\u3053\u306e\u30a8\u30f3\u30c8\u30ea\u306f\u4e00\u6642\u7684\u306a\u3082\u306e\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002")}
1073
+var xxCertSubjectNames={CN:"\u4e00\u822c\u540d",O:"\u7d44\u7e54",OU:"\u7d44\u7e54\u90e8\u9580",S:"\u90fd\u9053\u5e9c\u770c",ST:"\u90fd\u9053\u5e9c\u770c",L:"\u5730\u57df",C:"\u56fd",SN:"\u59d3",GN:"\u540d"};
1074
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("\u8a3c\u66f8",c.X509Certificate.length+" \u30d0\u30a4\u30c8\u3001<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9</a>");a+=addHtmlValue("\u4fe1\u983c\u3055\u308c\u305f\u30eb\u30fc\u30c8",c.TrustedRootCertficate?"\u306f\u3044":"\u756a\u53f7");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("\u79d8\u5bc6\u9375","\u30d7\u30ec\u30bc\u30f3\u30c8"));
1075
+a+='<br><div style="border-bottom:1px solid gray"><i>\u8a3c\u660e\u66f8\u306e\u4ef6\u540d</i></div><br>';for(var d in c.XSubject)c.XSubject[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>\u767a\u884c\u8005\u8a3c\u660e\u66f8</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"\u8a3c\u660e\u66f8-"+
1076
+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}
1077
+function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}var xxDragDropCertFiles=null;
1078
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>\u8a3c\u660e\u66f8\u30d5\u30a1\u30a4\u30eb</div></div>")+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>\u4fe1\u983c\u3055\u308c\u305f\u30eb\u30fc\u30c8\u8a3c\u660e\u66f8</option><option value=0>\u30c1\u30a7\u30fc\u30f3\u8a3c\u660e\u66f8</option></select><div style=padding-top:4px>\u8a3c\u660e\u66f8\u306e\u7a2e\u985e</div></div>",
1079
+setDialogMode(11,"\u8a3c\u660e\u66f8\u3092\u8ffd\u52a0",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1080
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1081
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>\u8a3c\u660e\u66f8\u306e\u30d1\u30b9\u30ef\u30fc\u30c9</div></div>",
1082
+b+='<br><div style="border-bottom:1px solid gray"><i>\u30a4\u30f3\u30c6\u30eb®AMT\u8a3c\u660e\u66f8</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>\u4e00\u822c\u540d</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>\u7d44\u7e54</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>\u90fd\u9053\u5e9c\u770c</div></div>",
1083
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>\u56fd</div></div>",b+='<div>\u8a3c\u660e\u66f8\u306e\u4f7f\u7528</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',b+="<li><label><input type=checkbox id=d11_cu4 checked>TLS\u30b5\u30fc\u30d0\u30fc\uff08HTTPS\uff09</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>TLS\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\uff08HTTPS\uff09</label></li>",
1084
+b+="<li><label><input type=checkbox id=d11_cu6>\u30e1\u30fc\u30eb\u4fdd\u8b77</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>\u30b3\u30fc\u30c9\u7f72\u540d</label></li>",b+="<li><label><input type=checkbox id=d11_cu8>\u30bf\u30a4\u30e0\u30b9\u30bf\u30f3\u30d7</label></li>",b+="</ul>",setDialogMode(11,"\u8a3c\u660e\u66f8\u3092\u767a\u884c",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1085
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1086
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("\u8a3c\u660e\u66f8\u3092\u767a\u884c","\u8a3c\u660e\u66f8\u3092\u5fa9\u53f7\u5316/\u30c7\u30b3\u30fc\u30c9\u3067\u304d\u307e\u305b\u3093\u3002")}
1087
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1088
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("\u8a3c\u660e\u66f8\u3092\u767a\u884c","\u9375\u30da\u30a2\u306e\u751f\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u72b6\u614b\uff1a"+d):0!=a.Body.ReturnValue?messagebox("\u8a3c\u660e\u66f8\u3092\u767a\u884c","\u9375\u30da\u30a2\u306e\u751f\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001"+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1089
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("\u8a3c\u660e\u66f8\u3092\u767a\u884c","\u9375\u30da\u30a2\u306e\u751f\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u72b6\u614b\uff1a"+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"\u4fe1\u983c\u3055\u308c\u3066\u3044\u306a\u3044\u30eb\u30fc\u30c8\u8a3c\u660e\u66f8"};
1090
+if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("\u8a3c\u660e\u66f8\u3092\u767a\u884c","\u8a3c\u660e\u66f8\u306b\u7f72\u540d\u3067\u304d\u307e\u305b\u3093\u3002"):
1091
+(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,q.length-25),GenerateKeyPairResponse4))}}function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("\u8a3c\u660e\u66f8\u3092\u767a\u884c","\u9375\u30da\u30a2\u306e\u751f\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u72b6\u614b\uff1a"+d):PullCertificates()}
1092
+function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("\u8a3c\u660e\u66f8\u3092\u8ffd\u52a0","\u8a3c\u660e\u66f8\u3092\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3001\u30a8\u30e9\u30fc"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}function certificateRemoved(b,c,a,d){200!=d?messagebox("\u8a3c\u660e\u66f8\u3092\u524a\u9664","\u8a3c\u660e\u66f8\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3001\u30a8\u30e9\u30fc"+d):PullCertificates()}
1093
+function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1094
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>\u8a3c\u660e\u66f8\u306a\u3057\u3001TLS\u7121\u52b9</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>\u8a3c\u66f8</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
1095
+b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="\u30ea\u30e2\u30fc\u30c8\u3067\u306e\u63a5\u7d9a\u304c\u8a31\u53ef\u3055\u308c\u308b\u8a3c\u660e\u66f8\u306e\u5171\u901a\u540d\u306e\u30ab\u30f3\u30de\u533a\u5207\u308a\u30ea\u30b9\u30c8\u3002"><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="name1\u3001name2"><div style=padding-top:4px>\u30ea\u30e2\u30fc\u30c8CN</div></div>';
1096
+setDialogMode(11,"TLS\u8a2d\u5b9a",3,showSetTlsSecurityDlgOk,b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);getSelectElement("tlsremote").value=(1==xxTlsSettings[c].MutualAuthentication?
1097
+2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1098
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1099
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1100
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1101
+b,c,d){200!=d?messagebox("","\u6642\u9593\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001\u30b9\u30c6\u30fc\u30bf\u30b9="+d):0!=c.Body.ReturnValue?messagebox("","\u6642\u9593\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001\u30a8\u30e9\u30fc\uff1a"+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",
1102
+a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,0,1,a[1]);statusbox("TLS\u8a2d\u5b9a","\u65b0\u3057\u3044\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u8a2d\u5b9a\u3092\u9069\u7528\u3057\u3066\u3044\u307e\u3059...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1103
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","TLS\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001\u30b9\u30c6\u30fc\u30bf\u30b9="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1104
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","TLS\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001\u30b9\u30c6\u30fc\u30bf\u30b9="+d):0!=a.Body.ReturnValue?messagebox("","TLS\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u306e\u8a2d\u5b9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001\u30a8\u30e9\u30fc\uff1a"+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1105
+function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1106
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1107
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1108
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1109
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}
1110
+var watchdogEnabledStates="\u308f\u304b\u3089\u306a\u3044 \u305d\u306e\u4ed6\u306e \u6709\u52b9 \u7121\u52b9 \u30b7\u30e3\u30c3\u30c8\u30c0\u30a6\u30f3 \u9069\u7528\u3067\u304d\u307e\u305b\u3093 \u6709\u52b9\u3060\u304c\u30aa\u30d5\u30e9\u30a4\u30f3 \u30c6\u30b9\u30c8\u4e2d \u636e\u3048\u7f6e\u304d \u4f11\u6b62 \u8d77\u52d5".split(" "),watchdogMonitoredEntity="\u308f\u304b\u3089\u306a\u3044 \u305d\u306e\u4ed6\u306e \u30aa\u30da\u30ec\u30fc\u30c6\u30a3\u30f3\u30b0\u30fb\u30b7\u30b9\u30c6\u30e0 \u30aa\u30da\u30ec\u30fc\u30c6\u30a3\u30f3\u30b0\u30b7\u30b9\u30c6\u30e0\u306e\u8d77\u52d5\u30d7\u30ed\u30bb\u30b9 \u30aa\u30da\u30ec\u30fc\u30c6\u30a3\u30f3\u30b0\u30b7\u30b9\u30c6\u30e0\u306e\u30b7\u30e3\u30c3\u30c8\u30c0\u30a6\u30f3\u30d7\u30ed\u30bb\u30b9 \u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u306e\u8d77\u52d5\u30d7\u30ed\u30bb\u30b9 BIOS\u30d6\u30fc\u30c8\u30d7\u30ed\u30bb\u30b9 \u5fdc\u7528 \u30b5\u30fc\u30d3\u30b9\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc".split(" ");
1111
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("\u6700\u5927\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" \u30a6\u30a9\u30c3\u30c1\u30fb\u30c9\u30c3\u30b0\u30b9");b+=TableEntry("\u6700\u5927\u5408\u8a08\u30a2\u30af\u30b7\u30e7\u30f3",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" \u884c\u52d5");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>\u30a4\u30f3\u30c6\u30eb®AMT\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u30d7\u30ec\u30bc\u30f3\u30b9\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>";
1112
+if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u30d7\u30ec\u30bc\u30f3\u30b9\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&
1113
+""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u8ffd\u52a0..." onclick=addWatchdogAction(event,'+c+")>";a.transitions&&(b+='<input type=button style=float:right value="\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u524a\u9664..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+
1114
+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+="\uff1a\u30ed\u30b0\u306b\u8a18\u9332\u3059\u308b\u30a4\u30d9\u30f3\u30c8")}""!=d&&(b+="<div style=padding:12px>"+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u3092\u8ffd\u52a0...","AddWatchdog()"));
1115
+b+="<br>";QH(60,b)}}function getWatchdogTransitionStr(b){if(31==b)return"\u3059\u3079\u3066\u306e\u5dde";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1116
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("\u8aac\u660e",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("\u76e3\u8996\u5bfe\u8c61\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("\u73fe\u5728\u306e\u72b6\u614b",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("\u6709\u52b9\u306a\u72b6\u614b",
1117
+watchdogEnabledStates[b.EnabledState]);c+=addHtmlValue("\u8d77\u52d5\u9593\u9694",b.StartupInterval+" \u79d2");c+=addHtmlValue("\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u9593\u9694",b.TimeoutInterval+" \u79d2");setDialogMode(11,format("\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0{0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1118
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\u540d\u524d</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="\u30e9\u30f3\u30c0\u30e0\u306aDeviceID\u3092\u751f\u6210\u3059\u308b">'+addLink("\u30c7\u30d0\u30a4\u30b9ID","GenerateWatchdogGuid()")+
1119
+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\u8d77\u52d5\uff08\u79d2\uff09</div></div>";b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\uff08\u79d2\uff09</div></div>";setDialogMode(11,"\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u3092\u8ffd\u52a0",
1120
+3,AddWatchdogOk,b);AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}
1121
+function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1122
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1123
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("\u756a\u72ac","\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u3092\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3001\u30a8\u30e9\u30fc\uff03"+d):PullWatchdog()}
1124
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>\u304b\u3089<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>\u306b<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u8ffd\u52a0",
1125
+3,addWatchdogActionOk,d+"</table><br>\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>\u30a4\u30d9\u30f3\u30c8\u30ed\u30b0\u306b\u66f8\u304d\u8fbc\u3080<br />",a);addWatchdogActionUpdate();haltEvent(b)}
1126
+function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1127
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1128
+function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u30a2\u30af\u30b7\u30e7\u30f3","\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3002\u30a8\u30e9\u30fc\uff03"+d):PullWatchdog()}
1129
+function deleteWatchdogActions(b,c){setDialogMode(11,"\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u30a2\u30af\u30b7\u30e7\u30f3\u306e\u524a\u9664",3,deleteWatchdogActionsOk,"\u3053\u306e\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u306e\u3059\u3079\u3066\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u524a\u9664\u3057\u307e\u3059\u304b\uff1f",xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}
1130
+function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u30a2\u30af\u30b7\u30e7\u30f3","\u30a6\u30a9\u30c3\u30c1\u30c9\u30c3\u30b0\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3001\u30a8\u30e9\u30fc\uff03"+d):PullWatchdog()}
1131
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"\u3059\u3079\u3066\u306eIP\u30d1\u30b1\u30c3\u30c8",2054:"\u3059\u3079\u3066\u306eARP\u30d1\u30b1\u30c3\u30c8"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"\u8a31\u53ef\u3001\u30ab\u30a6\u30f3\u30c8",1:"\u30c9\u30ed\u30c3\u30d7\u3001\u30ab\u30a6\u30f3\u30c8",
1132
+2:"\u30ec\u30fc\u30c8\u5236\u9650",3:"\u8a31\u53ef\u3059\u308b",4:"\u843d\u3068\u3059"},xxSystemDefenceFilters={HdrProtocolID:1,HdrDestAddress:2,HdrDestMask:2,HdrSrcAddress:2,HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,TCPFlagsOn:3,TCPFlagsOff:3};
1133
+function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1134
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1135
+a}b+=TableStart();c="<i>\u7121\u3057</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u6709\u7dda\u30dd\u30ea\u30b7\u30fc",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d+=" \u30d1\u30b1\u30c3\u30c8",b+=TableEntry((0==c?"\u6709\u7dda":"\u7121\u7dda")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>\u30a4\u30f3\u30c6\u30eb®AMT\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30dd\u30ea\u30b7\u30fc\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>";
1136
+if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+="<div style=padding-left:15px><i>\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30dd\u30ea\u30b7\u30fc\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+
1137
+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+c+")><div style=padding-top:3px><b>"+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>\u30a4\u30f3\u30c6\u30eb®AMT\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30d5\u30a3\u30eb\u30bf\u30fc\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002</i></div><br>";
1138
+else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||(d="\u3059\u3079\u3066\u306e\u30a4\u30fc\u30b5\u30cd\u30c3\u30c8\u30d7\u30ed\u30c8\u30b3\u30eb"+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" \u3067"+a.FilterProfileData+" \u30d1\u30b1\u30c3\u30c8/\u79d2"),1==a.ActionEventOnMatch&&(d+="\u3001\u8a66\u5408\u306e\u30a4\u30d9\u30f3\u30c8"),
1139
+b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=xxSystemDefense.AMT_IPHeadersFilter.responses[c];(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="\u3059\u3079\u3066\u306e\u30a4\u30fc\u30b5\u30cd\u30c3\u30c8\u30d7\u30ed\u30c8\u30b3\u30eb"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==
1140
+a.FilterProfile&&(d+=" \u3067"+a.FilterProfileData+" \u30d1\u30b1\u30c3\u30c8/\u79d2");1==a.ActionEventOnMatch&&(d+="\u3001\u8a66\u5408\u306e\u30a4\u30d9\u30f3\u30c8");var q=0;for(e in xxSystemDefenceFilters)a[e]&&q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+
1141
+AddButton("\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u8ffd\u52a0...","AddDefenseFilter()")+AddButton("\u30dd\u30ea\u30b7\u30fc\u3092\u8ffd\u52a0...","AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}
1142
+function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1143
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1144
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1145
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1146
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>\u7121\u3057";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1147
+"\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30dd\u30ea\u30b7\u30fc",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30dd\u30ea\u30b7\u30fc</div></div>",b)}}
1148
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
1149
+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1150
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">Intel\uff08r\uff09AMT\u30a4\u30fc\u30b5\u30cd\u30c3\u30c8\u30dd\u30fc\u30c8 '+
1151
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1152
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30dd\u30ea\u30b7\u30fc","\u30dd\u30ea\u30b7\u30fc\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3001\u30a8\u30e9\u30fc"+d):PullSystemDefense()}
1153
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u540d\u524d</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\u30a4\u30fc\u30b5\u30cd\u30c3\u30c8IP\u30d1\u30b1\u30c3\u30c8\u30d5\u30a3\u30eb\u30bf\u30fc<option value=1>\u30a4\u30fc\u30b5\u30cd\u30c3\u30c8ARP\u30d1\u30b1\u30c3\u30c8\u30d5\u30a3\u30eb\u30bf\u30fc<option value=2>IPv4\u30d1\u30b1\u30c3\u30c8\u30d5\u30a3\u30eb\u30bf\u30fc<option value=3>IPv6\u30d1\u30b1\u30c3\u30c8\u30d5\u30a3\u30eb\u30bf\u30fc</select><div style=padding-top:4px>\u30bf\u30a4\u30d7</div></div>";b+=
1154
+'<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u30eb\u30fc\u30eb" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\u30a2\u30a6\u30c8\u30d0\u30a6\u30f3\u30c9/\u9001\u4fe1<option value=1>\u30a4\u30f3\u30d0\u30a6\u30f3\u30c9/\u30ec\u30b7\u30fc\u30d6</select><div style=padding-top:4px>\u65b9\u5411</div></div>";
1155
+b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\u8a31\u53ef\u3001\u30ab\u30a6\u30f3\u30c8<option value=1>\u30c9\u30ed\u30c3\u30d7\u3001\u30ab\u30a6\u30f3\u30c8<option value=2>\u30ec\u30fc\u30c8\u5236\u9650<option value=3>\u8a31\u53ef\u3059\u308b<option value=4>\u843d\u3068\u3059</select><div style=padding-top:4px>\u30a2\u30af\u30b7\u30e7\u30f3</div></div>";b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u30d1\u30b1\u30c3\u30c8/\u79d2</div></div>";
1156
+b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>\u4f55\u3082\u3057\u306a\u3044<option value=1>\u8a66\u5408\u306e\u30a4\u30d9\u30f3\u30c8</select><div style=padding-top:4px>\u30a4\u30d9\u30f3\u30c8\u30ed\u30b0</div></div>";setDialogMode(11,"\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u8ffd\u52a0",3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1157
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1158
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="HDR"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1159
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1160
+function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u8ffd\u52a0","\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3001\u30a8\u30e9\u30fc\uff03"+d):PullSystemDefense()}
1161
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="\u30a4\u30fc\u30b5\u30cd\u30c3\u30c8\u30c8\u30e9\u30d5\u30a3\u30c3\u30af",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="\u3059\u3079\u3066\u306e\u30a4\u30fc\u30b5\u30cd\u30c3\u30c8\u30d7\u30ed\u30c8\u30b3\u30eb"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="IP\u30c8\u30e9\u30d5\u30a3\u30c3\u30af",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||
1162
+(a="\u3059\u3079\u3066\u306eIP\u30d7\u30ed\u30c8\u30b3\u30eb"+d.HdrIPVersion));var p;p=""+addHtmlValue("\u540d\u524d",EscapeHtml(d.Name));p+=addHtmlValue("\u30bf\u30a4\u30d7",e);p+=addHtmlValue("\u4e00\u81f4\u3059\u308b\u30c8\u30e9\u30d5\u30a3\u30c3\u30af",a);p+=addHtmlValue("\u65b9\u5411",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+
1163
+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("\u30d5\u30a3\u30eb\u30bf"+a,e));p+=addHtmlValue("\u8a66\u5408\u306e\u30a4\u30d9\u30f3\u30c8",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,"\u30a4\u30fc\u30b5\u30cd\u30c3\u30c8\u30d5\u30a3\u30eb\u30bf\u30fc\uff03"+d.InstanceID,5,showFilterDetailsOk,p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}
1164
+function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u524a\u9664","\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3002\u4f7f\u7528\u3055\u308c\u3066\u3044\u306a\u3044\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002"):PullSystemDefense()}var xxAddDefensePolicyFilters;
1165
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>\u540d\u524d</div></div><div style=height:26px;margin-top:4px><select id=policytx title="\u9001\u4fe1\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306b\u5bfe\u3057\u3066\u5b9f\u884c\u3059\u308b\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30af\u30b7\u30e7\u30f3" style=float:right;width:133px><option value=0>Allow<option value=1>\u843d\u3068\u3059<option value=2>\u8a31\u53ef\u3001\u30ab\u30a6\u30f3\u30c8<option value=3>\u30c9\u30ed\u30c3\u30d7\u3001\u30ab\u30a6\u30f3\u30c8<option value=4>\u8a31\u53ef\u3001\u30ab\u30a6\u30f3\u30c8\u3001\u30a4\u30d9\u30f3\u30c8<option value=5>\u30c9\u30ed\u30c3\u30d7\u3001\u30ab\u30a6\u30f3\u30c8\u3001\u30a4\u30d9\u30f3\u30c8</select><select id=policyrx style=float:right;width:133px title="\u7740\u4fe1\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306b\u5bfe\u3057\u3066\u5b9f\u884c\u3059\u308b\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a2\u30af\u30b7\u30e7\u30f3"><option value=0>\u8a31\u53ef\u3059\u308b<option value=1>\u843d\u3068\u3059<option value=2>\u8a31\u53ef\u3001\u30ab\u30a6\u30f3\u30c8<option value=3>\u30c9\u30ed\u30c3\u30d7\u3001\u30ab\u30a6\u30f3\u30c8<option value=4>\u8a31\u53ef\u3001\u30ab\u30a6\u30f3\u30c8\u3001\u30a4\u30d9\u30f3\u30c8<option value=5>\u30c9\u30ed\u30c3\u30d7\u3001\u30ab\u30a6\u30f3\u30c8\u3001\u30a4\u30d9\u30f3\u30c8</select><div style=padding-top:4px>\u30c7\u30d5\u30a9\u30eb\u30c8\u306eTX / RX</div></div>';b+=
1166
+"<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1167
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u8ffd\u52a0</div></div>"}setDialogMode(11,"\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30dd\u30ea\u30b7\u30fc\u3092\u8ffd\u52a0\u3059\u308b",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}
1168
+function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1169
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>\u3053\u306e\u30dd\u30ea\u30b7\u30fc\u306b\u306f\u30d5\u30a3\u30eb\u30bf\u30fc\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3002</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("\u524a\u9664\u3059\u308b","removeFilterButton("+
1170
+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+GetFilterById(xxAddDefensePolicyFilters[c]).Name+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1171
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1172
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("\u30b7\u30b9\u30c6\u30e0\u9632\u5fa1\u30dd\u30ea\u30b7\u30fc\u3092\u8ffd\u52a0\u3059\u308b","\u30dd\u30ea\u30b7\u30fc\u3092\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3002\u30a8\u30e9\u30fc\uff03"+d):PullSystemDefense()}
1173
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("\u540d\u524d",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("\u512a\u5148",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"\u843d\u3068\u3059":"\u8a31\u53ef\u3059\u308b";1==c.TxDefaultCount&&(d+="\u3001 \u30ab\u30a6\u30f3\u30c8");1==c.TxDefaultMatchEvent&&(d+="\u3001\u30a4\u30d9\u30f3\u30c8");a+=addHtmlValue("\u30c7\u30d5\u30a9\u30eb\u30c8\u306eTX\u30a2\u30af\u30b7\u30e7\u30f3",
1174
+d);d=1==c.RxDefaultDrop?"Drop":"Allow";1==c.RxDefaultCount&&(d+=", Count");1==c.RxDefaultMatchEvent&&(d+=", Event");a+=addHtmlValue("\u30c7\u30d5\u30a9\u30eb\u30c8\u306eRX\u30a2\u30af\u30b7\u30e7\u30f3",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=addHtmlValue("\u30d5\u30a3\u30eb\u30bf\u30fc\uff03"+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("\u30dd\u30ea\u30b7\u30fc\uff03",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}
1175
+function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("\u30dd\u30ea\u30b7\u30fc\u3092\u524a\u9664","\u30dd\u30ea\u30b7\u30fc\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3002\u4f7f\u7528\u3055\u308c\u3066\u3044\u306a\u3044\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002"):PullSystemDefense()}var xxWireless;
1176
+function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}function wifiRefresh(){xxdialogMode||PullWireless()}
1177
+var xxWifiState={3:"\u7121\u52b9",32768:"S0\u3067\u6709\u52b9",32769:"S0\u3001Sx / AC\u3067\u6709\u52b9"},xxRadioState={2:"\u30aa\u30f3\u3001\u63a5\u7d9a\u6e08\u307f",3:"\u30aa\u30d5",6:"\u30aa\u30f3\u3001\u5207\u65ad"},xxWifiAuthenticationMethod={1:"\u305d\u306e\u4ed6\u306e",2:"\u958b\u3044\u305f",3:"\u5171\u6709\u30ad\u30fc",4:"WPA PSK",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"\u305d\u306e\u4ed6\u306e",2:"WEP",3:"TKIP-RC4",4:"CCMP-AES",5:"\u7121\u3057"};
1178
+function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1179
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>\u30a4\u30f3\u30c6\u30eb®AMT\u304c\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u63a5\u7d9a\u306b\u4f7f\u7528\u3059\u308b\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3002<br><br>";for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=
1180
+xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("\u524a\u9664\u3059\u308b",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u304c\u3042\u308a\u307e\u305b\u3093</i><br>");
1181
+e+="<br><td class=r2>";e=xxAccountAdminName?e+TableEnd(AddButton("\u65b0\u3057\u3044\u30d7\u30ed\u30d5\u30a3\u30fc\u30eb","showWifiNewProfile()")):e+TableEnd("");QH(22,e+"<br>")}}}
1182
+function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"\u30ef\u30a4\u30e4\u30ec\u30b9\u72b6\u614b",3,wifiStateDlg,b)}}
1183
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1184
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u540d",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("\u8a8d\u8a3c",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("\u6697\u53f7\u5316",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("\u512a\u5148",b.Priority);messagebox("\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb",
1185
+c+"</div>")}}function wifiRemoveButton(b){xxdialogMode||(QH(66,format("\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u300c{0}\u300d\u3092\u524a\u9664\u3057\u307e\u3059\u304b\uff1f",xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb",3,function(){removeWifiButtonEx(b)}))}
1186
+function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1187
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"\u30ef\u30a4\u30e4\u30ec\u30b9\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3092\u8ffd\u52a0",3,function(){addWifiProfile()});
1188
+updateWifiDialog()}}
1189
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,PSKPassPhrase:c27.value},
1190
+null,null,null,removeWifiEntryResponse)}
1191
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1192
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1193
+var DMTFCPUStatus="\u308f\u304b\u3089\u306a\u3044 \u6709\u52b9 \u30e6\u30fc\u30b6\u30fc\u306b\u3088\u3063\u3066\u7121\u52b9\u306b\u3055\u308c\u3066\u3044\u307e\u3059 BIOS\u306b\u3088\u3063\u3066\u7121\u52b9\u5316\uff08POST\u30a8\u30e9\u30fc\uff09 \u30a2\u30a4\u30c9\u30eb \u305d\u306e\u4ed6\u306e".split(" "),DMTFMemType="\u308f\u304b\u3089\u306a\u3044 \u305d\u306e\u4ed6\u306e DRAM \u540c\u671fDRAM \u30ad\u30e3\u30c3\u30b7\u30e5DRAM \u6c5f\u6238 \u30a8\u30c9\u30e9\u30e0 VRAM SRAM \u7f8a ROM \u9583\u5149 EEPROM FEPROM EPROM CDRAM 3DRAM SDRAM SGRAM RDRAM DDR DDR-2 BRAM FB-DIMM DDR3 FBD2 DDR4 LPDDR LPDDR2 LPDDR3 LPDDR4".split(" "),
1194
+DMTFMemFormFactor=" \u305d\u306e\u4ed6\u306e \u308f\u304b\u3089\u306a\u3044 SIMM SIP \u30c1\u30c3\u30d7 \u6d78\u6f2c ZIP \u5c02\u6709\u30ab\u30fc\u30c9 DIMM TSOP \u30c1\u30c3\u30d7\u306e\u5217 RIMM SODIMM \u30b9\u30ea\u30df\u30f3\u30b0 FB-DIM".split(" "),DMTFProcFamilly={191:"\u30a4\u30f3\u30c6\u30eb®Core™2 Duo\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc",192:"\u30a4\u30f3\u30c6\u30eb®Core™2 Solo\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc",193:"\u30a4\u30f3\u30c6\u30eb®Core™2 Extreme\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc",
1195
+194:"\u30a4\u30f3\u30c6\u30eb®Core™2 Quad\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc",195:"\u30a4\u30f3\u30c6\u30eb®Core™2 Extreme\u30e2\u30d0\u30a4\u30eb\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc",196:"\u30a4\u30f3\u30c6\u30eb®Core™2 Duo\u30e2\u30d0\u30a4\u30eb\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc",197:"\u30a4\u30f3\u30c6\u30eb®Core™2 Solo\u30e2\u30d0\u30a4\u30eb\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc",198:"\u30a4\u30f3\u30c6\u30eb®Core™i7\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc",
1196
+199:"\u30c7\u30e5\u30a2\u30eb\u30b3\u30a2\u30a4\u30f3\u30c6\u30eb®Celeron®\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc"},HardwareInventory;
1197
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("\u30bb\u30fc\u30d6...","SaveHardwareLog()")+" \u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u60c5\u5831\u306f\u3001\u30b7\u30b9\u30c6\u30e0\u306e\u30d6\u30fc\u30c8\u6642\u306b\u53ce\u96c6\u3055\u308c\u307e\u3059\u3002");c=a.CIM_Chassis.response;d=a.CIM_Card.response;
1198
+var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0</h2>"+FullTable({"\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30e2\u30c7\u30eb":c.Model,"\u30e1\u30fc\u30ab\u30fc":c.Manufacturer,"\u30d0\u30fc\u30b8\u30e7\u30f3":c.Version,"\u30b7\u30ea\u30a2\u30eb\u30ca\u30f3\u30d0\u30fc":c.SerialNumber,"\u30b7\u30b9\u30c6\u30e0ID":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>\u30d9\u30fc\u30b9\u30dc\u30fc\u30c9</h2>";
1199
+b+=FullTable({"\u30e1\u30fc\u30ab\u30fc":d.Manufacturer,"\u5546\u54c1\u540d":d.Model,"\u30d0\u30fc\u30b8\u30e7\u30f3":d.Version,"\u30b7\u30ea\u30a2\u30eb\u30ca\u30f3\u30d0\u30fc":d.SerialNumber,"\u30a2\u30bb\u30c3\u30c8\u30bf\u30b0":d.Tag,"\u4ea4\u63db\u53ef\u80fd\u3067\u3059\u304b\uff1f":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({"\u30d9\u30f3\u30c0\u30fc":a.CIM_BIOSElement.response.Manufacturer,"\u30d0\u30fc\u30b8\u30e7\u30f3":q,"\u767a\u58f2\u65e5":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",
1200
+{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>\u30d7\u30ed\u30bb\u30c3\u30b5\u30fc "+(parseInt(e)+1)+"</h2>",b+=FullTable({"\u30e1\u30fc\u30ab\u30fc":trademarks(d.Manufacturer),"\u5bb6\u65cf":DMTFProcFamilly[c.Family],"\u30d0\u30fc\u30b8\u30e7\u30f3":trademarks(d.Version),"\u6700\u5927\u30bd\u30b1\u30c3\u30c8\u901f\u5ea6":c.MaxClockSpeed+" MHz","\u72b6\u614b":DMTFCPUStatus[c.CPUStatus]},"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=
1201
+a.CIM_PhysicalMemory.responses[e],b+="<h2>\u30e1\u30e2\u30ea\u30e2\u30b8\u30e5\u30fc\u30eb "+(+e+1)+"</h2>",b+=FullTable({"\u9280\u884c\u30e9\u30d9\u30eb":c.BankLabel,"\u30e1\u30fc\u30ab\u30fc":c.Manufacturer,"\u30b7\u30ea\u30a2\u30eb\u30ca\u30f3\u30d0\u30fc":c.SerialNumber,"\u30b5\u30a4\u30ba":parseInt(c.Capacity/1048576)+" MB","\u30d5\u30a9\u30fc\u30e0\u30d5\u30a1\u30af\u30bf":DMTFMemFormFactor[c.FormFactor],"\u30bf\u30a4\u30d7":DMTFMemType[c.MemoryType],"\u30a2\u30bb\u30c3\u30c8\u30bf\u30b0":c.Tag,
1202
+"\u54c1\u756a":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>\u8a18\u61b6\u5a92\u4f53 "+(parseInt(e)+1)+"</h2>",b+=FullTable({"\u578b\u756a":d.Model,"\u30b7\u30ea\u30a2\u30eb\u30ca\u30f3\u30d0\u30fc":""==d.SerialNumber?"Unknown":d.SerialNumber,"\u30b5\u30a4\u30ba":parseInt(Math.round(1E3*c.MaxMediaSize/1048576))+" MB"},"");b+="<br>";QH(18,b);updateSystemStatus()}}
1203
+function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","Intel AMT\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u60c5\u5831",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}
1204
+function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"\u30a4\u30f3\u30c6\u30eb®AMT\u96fb\u6e90\u30dd\u30ea\u30b7\u30fc",3,showPowerPolicyDlgOk,c)}}
1205
+function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1206
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1207
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1208
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1209
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>\u3053\u306e\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u306e\u30a4\u30f3\u30c6\u30eb®AMT\u30e6\u30fc\u30b6\u30fc\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&
1210
+"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=a.AccessPermission){2==q&&(p+="\u7121\u52b9\u3001");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a["\u30ec\u30eb\u30e0"][c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="\u76e3\u67fb\u5f79");p=0<=a.Realms.indexOf(3)?p+"\u7ba1\u7406\u8005":1==k?p+"1\u30ec\u30eb\u30e0":p+(k+" \u9818\u57df")}else p+="\u7ba1\u7406\u8005",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";
1211
+0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("\u7de8\u96c6...","changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="\u975e\u8868\u793a\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u5207\u308a\u66ff\u3048" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+
1212
+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");xxAccountAdminName&&(c+=AddButton("\u65b0\u3057\u3044\u30a2\u30ab\u30a6\u30f3\u30c8","newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1213
+function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1214
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u7de8\u96c6",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1215
+function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"\u65b0\u3057\u3044\u30a2\u30ab\u30a6\u30f3\u30c8",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1216
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("\u30a2\u30ab\u30a6\u30f3\u30c8\u30a8\u30e9\u30fc","\u7121\u52b9\u306a\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||
1217
+3==r)&&Q("rx"+r).checked&&a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1218
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">\u7ba1\u7406\u8005</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1219
+function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["\u30ed\u30fc\u30ab\u30eb\u306e\u307f","\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u307f","\u3059\u3079\u3066\uff08\u30ed\u30fc\u30ab\u30eb\u304a\u3088\u3073\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\uff09"];
1220
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("\u540d\u524d",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("\u72b6\u614b",1==xxAccountEnabledInfo[b].Enabled?"\u6709\u52b9":"\u7121\u52b9"));if(e==xxAccountAdminName)a+=addHtmlValue("\u8a31\u53ef","\u7ba1\u7406\u8005");else{var a=a+addHtmlValue("\u8a31\u53ef",xxUserPermissions[c.AccessPermission]),q="";if(0<=c.Realms.indexOf(3))q=
1221
+"\u7ba1\u7406\u8005",0<=c.Realms.indexOf(20)&&(q+="\u3001\u76e3\u67fb\u5f79");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+="\u3001"),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="\u7121\u3057");a+=addHtmlValue("\u30ec\u30eb\u30e0","")+"<b>"+q+"</b>"}messagebox("\u30a2\u30ab\u30a6\u30f3\u30c8"+e,a+"</div>")}}
1222
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("\u30d6\u30e9\u30a6\u30b6",c,browserResponse,null,!0))}
1223
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>\uff08\u7a7a\u306e\uff09":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>\u30a8\u30e9\u30fc\uff03"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1224
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1225
+function onTerminalStateChange(b,c){c4.value=0==c?"\u63a5\u7d9a\u3059\u308b":"\u5207\u65ad\u3059\u308b";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1226
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["UTF8\u30bf\u30fc\u30df\u30ca\u30eb","\u62e1\u5f35ASCII","Intel ASCII"];
1227
+function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["\u30a4\u30f3\u30c6\u30eb\uff08F10 = ESC + [OM\uff09","\u4ee3\u66ff\uff08F10 = ESC + 0\uff09","VT100 +\uff08F10 = ESC + [OY\uff09"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1228
+function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR + LF",terminal.m.lineFeed="\r\n")}
1229
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="\u30ad\u30e3\u30d7\u30c1\u30e3\u3092\u505c\u6b62";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),
1230
+b+".txt")}delete terminal.m.capture;c3.value="\u30ad\u30e3\u30d7\u30c1\u30e3\u3092\u958b\u59cb"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"\u30da\u30fc\u30b9\u30c8",3,termPaste)}
1231
+var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1232
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1233
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1234
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1235
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1236
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("DataChannel",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1237
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1238
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1239
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1240
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1241
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1242
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1243
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1244
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"\u63a5\u7d9a\u3059\u308b":"\u5207\u65ad\u3059\u308b";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("\u30ea\u30e2\u30fc\u30c8\u30c7\u30b9\u30af\u30c8\u30c3\u30d7","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("\u30ea\u30e2\u30fc\u30c8\u30c7\u30b9\u30af\u30c8\u30c3\u30d7",
1245
+"The device indicated that this type of connection of not supported."):5E4==b.disconnectCode?messagebox("\u30ea\u30e2\u30fc\u30c8\u30c7\u30b9\u30af\u30c8\u30c3\u30d7","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,
1246
+200)}function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b="\u3001Soft-KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}
1247
+function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"\u30ea\u30e2\u30fc\u30c8\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u8a2d\u5b9a",3,showDesktopSettingsChanged))}
1248
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1249
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1250
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1251
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1252
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1253
+"8px"),center()))}
1254
+function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"\u30ea\u30e2\u30fc\u30c8\u30ad\u30fc\u30dc\u30fc\u30c9\u5165\u529b",3,showDeskTypeEx,'<div>\u30c6\u30ad\u30b9\u30c8\u3092\u5165\u529b\u3057\u3066[OK]\u3092\u30af\u30ea\u30c3\u30af\u3057\u3001US\u82f1\u8a9e\u30ad\u30fc\u30dc\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30ea\u30e2\u30fc\u30c8\u3067\u5165\u529b\u3057\u307e\u3059\u3002\u7d9a\u884c\u3059\u308b\u524d\u306b\u3001\u30ea\u30e2\u30fc\u30c8\u30ab\u30fc\u30bd\u30eb\u3092\u6b63\u3057\u3044\u4f4d\u7f6e\u306b\u7f6e\u3044\u3066\u304f\u3060\u3055\u3044\u3002<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1255
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1256
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1257
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1258
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1259
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1260
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1261
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1262
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1263
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1264
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1265
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1266
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>\u30eb\u30fc\u30c8</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+
1267
+'">'+EscapeHtml(r.substring(0,70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1268
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1269
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1270
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1271
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1272
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="\u3059\u3079\u3066\u9078\u629e",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||
1273
+0==d));QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"\u4f55\u3082\u9078\u629e\u3057\u306a\u3044":"\u3059\u3079\u3066\u9078\u629e";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24PasteButton",
1274
+(0<p24filetreelocation.length||0==d)&&null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}
1275
+function p24createfolder(){setDialogMode(11,"\u65b0\u3057\u3044\u30d5\u30a9\u30eb\u30c0",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}
1276
+function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"\u524a\u9664\u3059\u308b",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1277
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"\u30ea\u30cd\u30fc\u30e0",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1278
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1279
+function p24uploadFile(){setDialogMode(11,"\u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}
1280
+var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1281
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"\u30da\u30fc\u30b9\u30c8",3,p24pasteFileEx,b)}
1282
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1283
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1284
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1285
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24filetable"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1286
+function getFileSizeStr(b){return 1==b?"1\u30d0\u30a4\u30c8":format("{0}\u30d0\u30a4\u30c8",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}
1287
+var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1288
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u30d5\u30a1\u30a4\u30eb",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+
1289
+a+" />"))}function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1290
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1291
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"\u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b",10,p24uploadFileCancel,"<div id=p24dfileName>\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1292
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1293
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1294
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1295
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1296
+function iderStart(b){if(!xxdialogMode){b="<div>\u30a4\u30f3\u30c6\u30eb®AMT\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u306b\u30c7\u30a3\u30b9\u30af\u30a4\u30e1\u30fc\u30b8\u3092\u30de\u30a6\u30f3\u30c8-\u5b9f\u9a13\u7684\u3002</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+NoBreak("\u30d5\u30ed\u30c3\u30d4\u30fc\uff08.img\uff09")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+
1297
+NoBreak("CDROM\uff08.iso\uff09")+"</div></div>";setDialogMode(11,"\u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u30ea\u30c0\u30a4\u30ec\u30af\u30c8",3,iderStart2,b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>\u6b21\u56de\u306e\u8d77\u52d5\u6642<option value=1>\u512a\u96c5\u306a<option value=2>\u3059\u3050</select><div>\u30bb\u30c3\u30b7\u30e7\u30f3\u958b\u59cb</div></div>");b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=
1298
+b.substring(1,b.length-1))}}
1299
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("\u30b9\u30c8\u30ec\u30fc\u30b8\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30a8\u30e9\u30fc","\u5c11\u306a\u304f\u3068\u30821\u3064\u306e\u30c7\u30a3\u30b9\u30af\u30a4\u30e1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb\u3092\u9078\u629e\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002");else if(1==Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("\u30b9\u30c8\u30ec\u30fc\u30b8\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30a8\u30e9\u30fc",
1300
+"\u7121\u52b9\u306a.img\u30d5\u30a1\u30a4\u30eb\u3002");else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%2048)messagebox("\u30b9\u30c8\u30ec\u30fc\u30b8\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30a8\u30e9\u30fc","\u7121\u52b9\u306a.iso\u30d5\u30a1\u30a4\u30eb\u3002");else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,
1301
+Q("iderStartType").value)}}function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1302
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1303
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"\u30b5\u30fc\u30d0":"")+"IDE-R\u30bb\u30c3\u30b7\u30e7\u30f3</ b>\u3001\u63a5\u7d9a\u6e08\u307f\u3001"+ider.m.bytesFromAmt+" \u306b\u3001"+ider.m.bytesToAmt+" \u30a2\u30a6\u30c8\u3002")}var heatMapWidth=600,heatMapDividor={};
1304
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CDROM </ b>\u3001\u30d6\u30ed\u30c3\u30af\u306f{0}\u30d0\u30a4\u30c8\u3067\u3059\u3002",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b>\u30d5\u30ed\u30c3\u30d4\u30fc</ b>\u3001\u30d6\u30ed\u30c3\u30af\u306f{0}\u30d0\u30a4\u30c8\u3067\u3059\u3002",
1305
+512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=6*(Math.floor(a/(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1306
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"\u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u30ea\u30c0\u30a4\u30ec\u30af\u30c8",a?a:3,onIderDialogPromptOk,c.html)}
1307
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1308
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"\u7121\u52b9",32769:"BIOS\u5bfe\u5fdc",32770:"OS\u6709\u52b9",32771:"BIOS\u304a\u3088\u3073OS\u5bfe\u5fdc"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1309
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1310
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1311
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1312
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1313
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="\u7121\u52b9",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="\u6709\u52b9\u3001"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("\u74b0\u5883\u691c\u51fa",addLink(c,"editEnvironmentDetection()"));
1314
+b+=TableEntry("\u30e6\u30fc\u30b6\u30fc\u958b\u59cb\u30aa\u30d7\u30b7\u30e7\u30f3",addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>\u7121\u3057</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("\u30e6\u30fc\u30b6\u30fc\u304c\u958b\u59cb\u3057\u305f\u63a5\u7d9a",addLinkConditional(c,
1315
+'editMpsPolicy("User")',xxAccountAdminName));c="<i>\u7121\u3057</i>";if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("\u30a2\u30e9\u30fc\u30c8\u306b\u3088\u3063\u3066\u958b\u59cb\u3055\u308c\u305f\u63a5\u7d9a",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>\u7121\u3057</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&
1316
+(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName","\u5b9a\u671f\u7684");if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format("\u3001{0}\u79d2\u3054\u3068",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("\u5b9a\u671f\u7684\u306a\u63a5\u7d9a",addLinkConditional(c,'editMpsPolicy("Periodic")',
1317
+xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>\u30a4\u30f3\u30c6\u30eb®AMT\u30ea\u30e2\u30fc\u30c8\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>";if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>\u30ea\u30e2\u30fc\u30c8\u30b5\u30fc\u30d0\u30fc\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002</i></div><br>";else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&
1318
+(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>\u7ba1\u7406\u63a5\u7d9a\u306b\u4f7f\u7528\u3055\u308c\u308bHTTP\u30d7\u30ed\u30ad\u30b7\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,0==c.length)b+="<div style=padding-left:15px><br><i>\u30d7\u30ed\u30ad\u30b7\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002</i></div><br>";
1319
+else for(d in c)b+="<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0...","AddRemoteAccessServer()"),a&&(d+=AddButton("\u30d7\u30ed\u30ad\u30b7\u3092\u8ffd\u52a0...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+d);QH(58,
1320
+b)}}var xxEditMpsPolicyType;
1321
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="\u30e6\u30fc\u30b6\u30fc\u958b\u59cb");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>\uff08\u7121\u3057\uff09",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?
1322
+" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>\u30d7\u30e9\u30a4\u30de\u30ea\u30b5\u30fc\u30d0\u30fc</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA-\u5916\u90e8<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA-\u5185\u90e8</select><div>\u30d7\u30e9\u30a4\u30de\u30eaMPS\u30bf\u30a4\u30d7</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";
1323
+c+="<option value=-1>\uff08\u7121\u3057\uff09";for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>\u30bb\u30ab\u30f3\u30c0\u30ea\u30b5\u30fc\u30d0\u30fc</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA-\u5916\u90e8<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?
1324
+" selected":"")+">CILA-\u5185\u90e8</select><div>\u30bb\u30ab\u30f3\u30c0\u30eaMPS\u30bf\u30a4\u30d7</div></div>")}e=0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>\u30c8\u30f3\u30cd\u30eb\u30e9\u30a4\u30d5\u30bf\u30a4\u30e0\uff08\u79d2\uff09</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+=
1325
+"<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">\u5b9a\u671f\u7684\u3001\u6642\u9593\u9593\u9694<option value=1"+(1==a?" selected":"")+">\u6642\u523b\u30011\u65e51\u56de",c+="</select><div>\u30c8\u30ea\u30ac\u30fc\u30bf\u30a4\u30d7</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,
1326
+format("{0}\u63a5\u7d9a",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1327
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1328
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"\u30c8\u30ea\u30ac\u30fc\u9593\u9694\uff08\u79d2\uff09":"\u6642\u523b\uff08HH\uff1aMM\uff09"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1329
+function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1330
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1331
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1332
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1333
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="\u6700\u59275\u3064\u306e\u30a4\u30f3\u30c8\u30e9\u30cd\u30c3\u30c8\u30c9\u30e1\u30a4\u30f3\u30b5\u30d5\u30a3\u30c3\u30af\u30b9\u3092\u5165\u529b\u3057\u307e\u3059\u3002\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u304c\u3053\u308c\u3089\u306e\u30c9\u30e1\u30a4\u30f3\u306e\u5916\u306b\u3042\u308b\u5834\u5408\u3001\u30a4\u30f3\u30c6\u30eb®AMT\u30ed\u30fc\u30ab\u30eb\u30dd\u30fc\u30c8\u306f\u9589\u3058\u3089\u308c\u3001\u30ea\u30e2\u30fc\u30c8\u30b5\u30fc\u30d0\u30fc\u63a5\u7d9a\u304c\u30a2\u30af\u30c6\u30a3\u30d6\u306b\u306a\u308a\u307e\u3059\u3002<br><br>");
1334
+0==editEnvironmentDetectionTmp.length&&(c+="<i>\u30a4\u30f3\u30c8\u30e9\u30cd\u30c3\u30c8\u30c9\u30e1\u30a4\u30f3\u306a\u3057\u3001\u74b0\u5883\u691c\u51fa\u304c\u7121\u52b9\u3002</i><br>");for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("\u524a\u9664\u3059\u308b","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+
1335
+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");1==b?QH(69,c):setDialogMode(11,"\u74b0\u5883\u691c\u51fa",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}
1336
+function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1337
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("\u74b0\u5883\u691c\u51fa",format("\u30b5\u30fc\u30d0\u30fc\u306e\u8ffd\u52a0\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001\u30b9\u30c6\u30fc\u30bf\u30b9{0}",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("\u74b0\u5883\u691c\u51fa",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}
1338
+function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}
1339
+function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"\u30e6\u30fc\u30b6\u30fc\u304c\u958b\u59cb\u3059\u308b\u30c8\u30f3\u30cd\u30eb",3,editUserInitiatedCiraDlg,b)}}
1340
+function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1341
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("\u30a2\u30af\u30bb\u30b9\u540d",c.AccessInfo);c.Port&&(a+=addHtmlValue("\u30dd\u30fc\u30c8",c.Port));c.CN&&(a+=addHtmlValue("\u4e00\u822c\u540d",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,0<c.indexOf("Username")?(a+=addHtmlValue("\u8a8d\u8a3c\u30bf\u30a4\u30d7","\u30e6\u30fc\u30b6\u30fc\u3068\u30d1\u30b9/\u30b5\u30fc\u30d0\u30fc\u8a8d\u8a3cTLS"),
1342
+a+=addHtmlValue("\u30ea\u30e2\u30fc\u30c8ID",getInstance(xxMPSUserPass,c).RemoteID)):(a+=addHtmlValue("\u8a8d\u8a3c\u30bf\u30a4\u30d7","\u8a3c\u660e\u66f8/\u76f8\u4e92\u8a8d\u8a3cTLS"),c=getInstance(xxCertificates,c),a+=addHtmlValue("\u8a3c\u660e\u66f8\u540d",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"\u30ea\u30e2\u30fc\u30c8\u30b5\u30fc\u30d0\u30fc\uff03"+(b+1),c,showServerDetailsOk,a)}
1343
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1344
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}function showServerDetailsOk2(b,c,a,d){408==d?messagebox("\u30ea\u30e2\u30fc\u30c8\u30b5\u30fc\u30d0\u30fc\u306e\u524a\u9664","\u30b5\u30fc\u30d0\u30fc\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3002\u30a2\u30af\u30bb\u30b9\u304c\u62d2\u5426\u3055\u308c\u307e\u3057\u305f\u3002"):PullRemoteAccess()}
1345
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1346
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("\u30a2\u30af\u30bb\u30b9\u540d",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("DNS\u30b5\u30d5\u30a3\u30c3\u30af\u30b9",c.NetworkDnsSuffix),a=a+addHtmlValue("\u30d7\u30ed\u30ad\u30b7\u30bf\u30a4\u30d7",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"HTTP\u30d7\u30ed\u30ad\u30b7\uff03"+(b+1),c,showProxyDetailsOk,a,b)}
1347
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("HTTP\u30d7\u30ed\u30ad\u30b7\u306e\u524a\u9664","HTTP\u30d7\u30ed\u30ad\u30b7\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3002\u30a2\u30af\u30bb\u30b9\u304c\u62d2\u5426\u3055\u308c\u307e\u3057\u305f\u3002"):PullRemoteAccess()}
1348
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>\u30db\u30b9\u30c8\u540dFQDN<option value=3>IPv4\u30a2\u30c9\u30ec\u30b9<option value=4>IPv6\u30a2\u30c9\u30ec\u30b9</select><div>\u63a5\u7d9a\u30bf\u30a4\u30d7</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>\u30dd\u30fc\u30c8</div></div>';
1349
+b+="<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>DNS\u30b5\u30d5\u30a3\u30c3\u30af\u30b9</div></div>";setDialogMode(11,"HTTP\u30d7\u30ed\u30ad\u30b7\u3092\u8ffd\u52a0",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1350
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN /\u30db\u30b9\u30c8\u540d","IPv4\u30a2\u30c9\u30ec\u30b9","IPv6\u30a2\u30c9\u30ec\u30b9"][Q("d2type").value])}
1351
+function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}
1352
+function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("\u30d7\u30ed\u30ad\u30b7\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0","\u30d7\u30ed\u30ad\u30b7\u3001\u30b9\u30c6\u30fc\u30bf\u30b9\u306e\u8ffd\u52a0\u306b\u5931\u6557\u3057\u307e\u3057\u305f"+d):0!=a.Body.ReturnValue?messagebox("\u30d7\u30ed\u30ad\u30b7\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1353
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>\u30db\u30b9\u30c8\u540dFQDN<option value=3>IPv4\u30a2\u30c9\u30ec\u30b9</select><div>\u63a5\u7d9a\u30bf\u30a4\u30d7</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";
1354
+a+='<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>\u30b5\u30fc\u30d0\u30dd\u30fc\u30c8</div></div>';a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\u30b5\u30fc\u30d0\u30fc\u306e\u5171\u901a\u540d</div></div>";a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";
1355
+0<b.length&&(a+="<option value=1>\u8a3c\u66f8");a+="<option value=2>\u30e6\u30fc\u30b6\u30fc\u540d\u30d1\u30b9\u30ef\u30fc\u30c9</select><div>\u8a8d\u8a3c\u30bf\u30a4\u30d7</div></div>";a+="<span id=d2utype>";a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\u30e6\u30fc\u30b6\u30fc\u540d</div></div>";a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\u5f37\u529b\u306a\u30d1\u30b9\u30ef\u30fc\u30c9</div></div>";
1356
+a+="</span>";a+="<span id=d2ctype>";a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>\u8a3c\u66f8</div></div></span>";setDialogMode(11,"\u30ea\u30e2\u30fc\u30c8\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0",3,AddRemoteAccessServerOk,a);AddRemoteAccessServerUpdate()}
1357
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+
1358
+Q("d2cert").value+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1359
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0",format("\u30b5\u30fc\u30d0\u30fc\u306e\u8ffd\u52a0\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3001\u30b9\u30c6\u30fc\u30bf\u30b9{0}",d)):0!=a.Body.ReturnValue?messagebox("\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1360
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"\u30db\u30b9\u30c8\u540d":"IPv4\u30a2\u30c9\u30ec\u30b9");QV("d2utype",
1361
+2==Q("d2auth").value);QV("d2ucn",3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1362
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>\u540d\u524d\u3068\u30c9\u30e1\u30a4\u30f3</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+
1363
+(b?"selected":"")+'>\u5171\u6709\u3001OS\u3068\u540c\u3058<option value="false" '+(b?"":"selected")+">OS\u3068\u306f\u7570\u306a\u308b\u5c02\u7528</select><div>\u540d\u524d\u306e\u5171\u6709</div></div>");setDialogMode(11,"\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30cd\u30fc\u30e0",3,editNameDlgOk,c)}}
1364
+function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}
1365
+function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"\u52d5\u7684DNS\u30af\u30e9\u30a4\u30a2\u30f3\u30c8",3,showEditDnsDlgOk)}}
1366
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1367
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"\u30a4\u30f3\u30c6\u30eb®AMT\u306e\u6a5f\u80fd",3,featuresDlgOk))}
1368
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("\u30a8\u30e9\u30fc","RedirectionService\u3001RequestStateChange\u30a8\u30e9\u30fc"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,0,function(a,c,d,e){200!=e?messagebox("\u30a8\u30e9\u30fc",
1369
+"KVMRedirectionSAP\u3001RequestStateChange\u30a8\u30e9\u30fc"+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("\u30a8\u30e9\u30fc","RedirectionService PUT\u30a8\u30e9\u30fc"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}
1370
+function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f",3,consentDlgOk)}}
1371
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="\u30ed\u30fc\u30ab\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u30ea\u30f3\u30af \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30ed\u30fc\u30ab\u30eb\u30a2\u30c9\u30ec\u30b9 \u30b0\u30ed\u30fc\u30d0\u30eb\u30a2\u30c9\u30ec\u30b9 \u30e6\u30fc\u30b6\u30fc\u69cb\u6210 \u7981\u3058\u3089\u308c\u3066\u3044\u308b DAD\u304c\u9032\u884c\u4e2d \u6709\u52b9 \u975e\u63a8\u5968 \u63a8\u5968/\u975e\u63a8\u5968 \u671f\u9650\u5207\u308c \u885d\u7a81 \u7981\u3058\u3089\u308c\u3066\u3044\u308b".split(" ");
1372
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+"\u3001"+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"\u6709\u7dda\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306eIPv6\u30a2\u30c9\u30ec\u30b9":"\u30ef\u30a4\u30e4\u30ec\u30b9\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306eIPv6\u30a2\u30c9\u30ec\u30b9",1,null,a+TableEnd())}}
1373
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6\u304c\u7121\u52b9");QH("d21l1","IPv6\u5bfe\u5fdc\u3001\u81ea\u52d5");QH("d21l2","IPv6\u5bfe\u5fdc\u3001\u81ea\u52d5+\u624b\u52d5\u30a2\u30c9\u30ec\u30b9");d21o0.checked=
1374
+!c;d21o1.checked=c&&!ipv6manual;d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"\u6709\u7dda\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\u306eIPv6\u30b5\u30dd\u30fc\u30c8":"\u30ef\u30a4\u30e4\u30ec\u30b9\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306eIPv6\u30b5\u30dd\u30fc\u30c8",3,function(){showIPv6StateDlgOk(b)});
1375
+updateIPSetupDlg()}}
1376
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1377
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1378
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1379
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1380
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv6\u30b5\u30dd\u30fc\u30c8",format("IPv6\u72b6\u614b\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002\u30a8\u30e9\u30fc{0}",d))}
1381
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"\u30a4\u30f3\u30c6\u30eb®AMT Ping\u5fdc\u7b54",3,showPingActionDlgOk)}}
1382
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1383
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","DHCP\u30b5\u30fc\u30d0\u30fc\u3092\u4f7f\u7528\u3057\u305f\u81ea\u52d5\u69cb\u6210");QH("d21l2","\u4ee5\u4e0b\u306eIPv4\u8a2d\u5b9a\u3092\u4f7f\u7528\u3057\u305f\u9759\u7684\u69cb\u6210");d21o1.checked=
1384
+1==b.DHCPEnabled;d21o2.checked=!d21o1.checked;c30.value=isIpAddress(b.IPAddress,"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"IPv4\u8a2d\u5b9a",3,showIPSetupDlgOk)}}
1385
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6\u5bfe\u5fdc\u3001\u81ea\u52d5+\u624b\u52d5\u30a2\u30c9\u30ec\u30b9"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1386
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1387
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv4\u8a2d\u5b9a",format("\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002\u30a8\u30e9\u30fc{0}",d))}amtPowerBootCapabilities=null;
1388
+function showPowerActionDlg(){xxdialogMode||(statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3","\u6a5f\u80fd\u3092\u78ba\u8a8d\u3057\u3066\u3044\u307e\u3059..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1389
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","\u30d1\u30ef\u30fc\u30a2\u30c3\u30d7",2);b&1&&(addOption("d5actionSelect","\u30ea\u30bb\u30c3\u30c8",10),addOption("d5actionSelect","\u30d1\u30ef\u30fc\u30b5\u30a4\u30af\u30eb",5),addOption("d5actionSelect","\u30d1\u30ef\u30fc\u30c0\u30a6\u30f3",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&
1390
+(b&2&&addOption("d5actionSelect","\u8a3a\u65ad\u306e\u96fb\u6e90\u3092\u5165\u308c\u307e\u3059",300),b&1&&addOption("d5actionSelect","\u8a3a\u65ad\u306b\u30ea\u30bb\u30c3\u30c8",301));9<amtversion&&b&1&&(addOption("d5actionSelect","\u30b9\u30bf\u30f3\u30d0\u30a4\u304b\u3089\u306eOS\u30a6\u30a7\u30a4\u30af",500),addOption("d5actionSelect","OS\u306e\u7701\u96fb\u529b",501),addOption("d5actionSelect","\u30bd\u30d5\u30c8\u30aa\u30d5",12),addOption("d5actionSelect","\u30bd\u30d5\u30c8\u30ea\u30bb\u30c3\u30c8",
1391
+14),addOption("d5actionSelect","\u7761\u7720",4),addOption("d5actionSelect","\u30cf\u30a4\u30d0\u30cd\u30fc\u30c8",7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&addOption("d5actionSelect","BIOS\u306b\u96fb\u6e90\u6295\u5165",100),b&1&&addOption("d5actionSelect","BIOS\u306b\u30ea\u30bb\u30c3\u30c8",101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","\u5b89\u5168\u306a\u6d88\u53bb\u306e\u305f\u3081\u306e\u96fb\u6e90\u6295\u5165",104),b&1&&addOption("d5actionSelect","\u5b89\u5168\u306a\u6d88\u53bb\u306b\u30ea\u30bb\u30c3\u30c8",
1392
+105));b&1&&addOption("d5actionSelect","IDE-R\u30d5\u30ed\u30c3\u30d4\u30fc\u306b\u30ea\u30bb\u30c3\u30c8",200);b&2&&addOption("d5actionSelect","IDE-R\u30d5\u30ed\u30c3\u30d4\u30fc\u306e\u96fb\u6e90\u3092\u5165\u308c\u307e\u3059",201);b&1&&addOption("d5actionSelect","IDE-R CDROM\u306b\u30ea\u30bb\u30c3\u30c8",202);b&2&&addOption("d5actionSelect","IDE-R CDROM\u306e\u96fb\u6e90\u3092\u5165\u308c\u307e\u3059",203);b&1&&addOption("d5actionSelect","PXE\u306b\u30ea\u30bb\u30c3\u30c8",400);b&2&&addOption("d5actionSelect",
1393
+"PXE\u306e\u96fb\u6e90\u3092\u5165\u308c\u307e\u3059",401);addOption("d5actionSelect","\u30ab\u30b9\u30bf\u30e0\u30a2\u30af\u30b7\u30e7\u30f3...",999);5<amtversion&&addOption("d5actionSelect","\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f...",998);setDialogMode(5,"\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",3,powerActionDlgCheck)}else messagebox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",format("\u30b7\u30b9\u30c6\u30e0\u6a5f\u80fd\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3002\u30a8\u30e9\u30fc{0}",
1394
+d))}
1395
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"\u96fb\u6e90\u64cd\u4f5c\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002"):QH(66,format("\u96fb\u6e90\u64cd\u4f5c\u30a8\u30e9\u30fc\uff03{0}\u3002",e));setDialogMode(1,"\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?
1396
+(b="Intel® Remote Secure Erase\u306e\u5b9f\u884c\u3092\u78ba\u8a8d\u3057\u307e\u3059\u304b\uff1f<br>\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u3001Secure Erase\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5165\u529b\u3057\u307e\u3059\u3002<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>\u30d1\u30b9\u30ef\u30fc\u30c9</div></div><br><div style=color:red><b>\u8b66\u544a\uff1a</ b>\u3053\u308c\u306b\u3088\u308a\u3001\u30ea\u30e2\u30fc\u30c8\u30b7\u30b9\u30c6\u30e0\u306e\u30c7\u30fc\u30bf\u304c\u30ef\u30a4\u30d7\u3055\u308c\u307e\u3059\u3002</div>",
1397
+rsepass=1,setDialogMode(11,"\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",3,powerActionDlg,b)):powerActionDlg()}
1398
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3","\u72b6\u614b\u3092\u78ba\u8a8d\u3057\u3066\u3044\u307e\u3059...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==
1399
+currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&(c=!1);c?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1400
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1401
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1402
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"\u30ab\u30b9\u30bf\u30e0\u96fb\u6e90\u30a2\u30af\u30b7\u30e7\u30f3",
1403
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1404
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"\u96fb\u6e90\u64cd\u4f5c\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002"):QH(66,format("\u96fb\u6e90\u64cd\u4f5c\u30a8\u30e9\u30fc\uff03{0}\u3002",e));setDialogMode(1,"\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,
1405
+AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=Q("d24BiosSecureBoot").checked,AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,
1406
+AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=Q("d24LockSleepButton").checked,AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=
1407
+Q("d24rsepass").value),statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3","\u72b6\u614b\u3092\u78ba\u8a8d\u3057\u3066\u3044\u307e\u3059..."),amtstack.Get("IPS_OptInService",powerActionResponse0,0,1))}
1408
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",format("\u30a8\u30e9\u30fc\uff03{0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f",11,powerActionSendConsent),checkConsentDisplay(),consentChanged()):(statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",
1409
+"\u30aa\u30d7\u30c8\u30a4\u30f3\u3092\u958b\u59cb\u3057\u3066\u3044\u307e\u3059..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,0,1)):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f","\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\u3002"):(statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3","\u30d6\u30fc\u30c8\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u3066\u3044\u307e\u3059..."),
1410
+amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1411
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",format("\u30a8\u30e9\u30fc\uff03",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("\u30e6\u30fc\u30b6\u30fc\u540c\u610f\u30a8\u30e9\u30fc",a.Body.ReturnValueStr.replace(/_/g," ")):(d6ConsentText.value="",setDialogMode(6,"\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f",11,powerActionSendConsent),
1412
+checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",function(a,b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1413
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3","\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f\u3092\u9001\u4fe1\u3057\u3066\u3044\u307e\u3059..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1414
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",format("\u30a8\u30e9\u30fc\uff03{0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f","\u30e6\u30fc\u30b6\u30fc\u306e\u540c\u610f\u304c\u6210\u529f\u3057\u307e\u3057\u305f\u3002"):(statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",
1415
+"\u72b6\u614b\u3092\u78ba\u8a8d\u3057\u3066\u3044\u307e\u3059..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1416
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",format("\u30a8\u30e9\u30fc\uff03{0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=
1417
+AvdPowerDlg.IDERBootDevice,e.LockKeyboard=AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&
1418
+AvdPowerDlg.RSEPassword&&(e.RSEPassword=AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,
1419
+!0===e.SecureErase&&0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("\u8d77\u52d5\u30a2\u30af\u30b7\u30e7\u30f3\uff1a"+b);console.log("\u30d6\u30fc\u30c8\u8a2d\u5b9a\u306e\u8a2d\u5b9a\uff1a"+
1420
+ObjectToString2(e));statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3","\u30d6\u30fc\u30c8\u8a2d\u5b9a\u3092\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059...");amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,function(a,b,c,d){200!=d?messagebox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+
1421
+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1422
+function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",format("PUT AMT_BootSettingData\u3001\u30a8\u30e9\u30fc\uff03{0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3","\u6b21\u306e\u8d77\u52d5\u3092\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1423
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1424
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1425
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3","\u96fb\u6e90\u64cd\u4f5c\u3092\u5b9f\u884c\u3057\u3066\u3044\u307e\u3059...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;
1426
+104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);targetPowerAction=b;11==b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3","\u6b21\u306e\u8d77\u52d5\u30a2\u30af\u30b7\u30e7\u30f3\u30bb\u30c3\u30c8\u3002")}}
1427
+function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"\u96fb\u6e90\u64cd\u4f5c\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002"),setDialogMode(1,"\u30d1\u30ef\u30fc\u30a2\u30af\u30b7\u30e7\u30f3",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}function consentChanged(){QE("c49",6==d6ConsentText.value.length)}
1428
+function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1429
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1430
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1431
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1432
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u3053\u306e\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u306e\u30a4\u30f3\u30c6\u30eb®AMT\u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;
1433
+var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+" / "+r):e+"\u30eb\u30fc\u30c8";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" \u30d0\u30a4\u30c8</i></div></div>");
1434
+d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==n&&(wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>\u30d5\u30a1\u30a4\u30eb\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002</i></div><br>");
1435
+q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+(q?AddButton("\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9...","UploadToStorage()"):""));QH(61,a)}else QH(61,"\u30b9\u30c8\u30ec\u30fc\u30b8\u30c7\u30fc\u30bf\u3092\u8aad\u307f\u8fbc\u3081\u307e\u305b\u3093...<br/>"+AddButton("\u30ea\u30d5\u30ec\u30c3\u30b7\u30e5","PullStorage()"))}
1436
+function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("\u30d9\u30f3\u30c0\u30fc",b));""!=c&&(e+=addHtmlValue("\u5fdc\u7528",c));e+=addHtmlValue("\u540d\u524d",a);e+=addHtmlValue("\u30b5\u30a4\u30ba",q.size+" bytes");q.link&&(e+=addHtmlValue("\u30ea\u30f3\u30af",q.link));setDialogMode(11,"\u30b9\u30c8\u30ec\u30fc\u30b8\u30a2\u30a4\u30c6\u30e0",5,showStorageDetailsEx,e,d)}}
1437
+function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}
1438
+function storageDeleteResponse(b,c){200!=c?messagebox("\u30b9\u30c8\u30ec\u30fc\u30b8",format("\u30d5\u30a1\u30a4\u30eb\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\uff08ERR {0}\uff09\u3002\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u306e\u96fb\u6e90\u304c\u30aa\u30f3\u306b\u306a\u3063\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002",c)):PullStorage()}
1439
+function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}
1440
+function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}
1441
+function PushToStorageResponse(b,c,a){200!=c?messagebox("\u30b9\u30c8\u30ec\u30fc\u30b8",format("\u30d5\u30a1\u30a4\u30eb\u3092\u30d7\u30c3\u30b7\u30e5\u3067\u304d\u307e\u305b\u3093\uff08ERR {0}\uff09\u3002\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u306e\u96fb\u6e90\u304c\u30aa\u30f3\u306b\u306a\u3063\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1442
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>\u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u5c0f\u3055\u306a\u30d5\u30a1\u30a4\u30eb\u3092\u9078\u629e\u3057\u3001\u30d9\u30f3\u30c0\u30fc\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3001\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u5165\u529b\u3057\u307e\u3059\u3002<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+
1443
+c+'" ><div>\u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+'<br><div style=height:16px><input id=mstoragevendor placeholder="\u30d9\u30f3\u30c0\u30fc" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>\u696d\u8005\u540d</div></div>';a+='<br><div style=height:16px><input id=mstorageapplication placeholder="\u30a2\u30d7\u30ea" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u540d</div></div>';
1444
+a+='<br><div style=height:16px><input id=mstoragefilename placeholder="\u30d5\u30a1\u30a4\u30eb\u540d" maxlength=11 style=float:right;width:240px><div>\u30d5\u30a1\u30a4\u30eb\u540d</div></div>';a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>MIME\u30bf\u30a4\u30d7</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u3001\u30e1\u30a4\u30f3Web\u30da\u30fc\u30b8\u304b\u3089\u3053\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3078\u306e\u30ea\u30f3\u30af\u3092\u4f5c\u6210\u3057\u307e\u3059">\u30ea\u30f3\u30af</div></div><br>';
1445
+a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';a+="</datalist>";a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"\u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9",
1446
+3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1447
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1448
+b}
1449
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1450
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1451
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," \u65e5\u3005").replace("H"," \u6642\u9593").replace("M"," \u5206");b=b.replace(" 1\u65e5"," 1\u65e5").replace(" 1\u6642\u9593"," 1\u6642\u9593").replace(" 1\u5206"," 1\u5206");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1452
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u30a6\u30a7\u30a4\u30af\u30a2\u30e9\u30fc\u30e0\u3092\u7ba1\u7406\u3057\u307e\u3059\u3002<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, \u76ee\u899a\u3081\u308b "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," \u3067"),void 0!=d[c].Interval&&(a+=" \u305d\u3057\u3066\u305d\u308c\u305e\u308c"+
1453
+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&(a+="\u3001\u5b8c\u4e86\u3057\u305f\u3089\u524a\u9664"),b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("\u7de8\u96c6...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>\u30a6\u30a7\u30a4\u30af\u30a2\u30e9\u30fc\u30e0\u306f\u767b\u9332\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002</i></div><br>";
1454
+d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("\u3059\u3079\u3066\u306e\u30a2\u30e9\u30fc\u30e0\u3092\u524a\u9664","RemoveAllAlarms()")+AddButton("\u8ffd\u52a0","showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1455
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1456
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"\u3059\u3079\u3066\u306e\u30a6\u30a7\u30a4\u30af\u30a2\u30e9\u30fc\u30e0\u3092\u524a\u9664\u3059\u308b",3,RemoveAllAlarmsEx,"\u3059\u3079\u3066\u306e\u30a6\u30a7\u30a4\u30af\u30a2\u30e9\u30fc\u30e0\u306e\u524a\u9664\u3092\u78ba\u8a8d\u3057\u307e\u3059\u304b\uff1f")}
1457
+function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1458
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1459
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1460
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"\u65b0\u3057\u3044\u30a2\u30e9\u30fc\u30e0\u3092\u8ffd\u52a0",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}
1461
+function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1462
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1463
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("\u30a2\u30e9\u30fc\u30e0\u3092\u8ffd\u52a0",format("\u30a2\u30e9\u30fc\u30e0\u3092\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30b9\u30c6\u30fc\u30bf\u30b9\uff1a{0}\u3002<br/>\u30a2\u30e9\u30fc\u30e0\u304c\u5c06\u6765\u306e\u4e88\u5b9a\u3067\u3042\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002",
1464
+d)):0!=c.Body.ReturnValue?messagebox("\u30a2\u30e9\u30fc\u30e0\u3092\u8ffd\u52a0",format("\u30a2\u30e9\u30fc\u30e0{0}\u3092\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002<br/>\u30a2\u30e9\u30fc\u30e0\u304c\u5c06\u6765\u306e\u4e88\u5b9a\u3067\u3042\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002",c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",
1465
+a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("\u30a2\u30e9\u30fc\u30e0\u3092\u7de8\u96c6",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1466
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("\u540d\u524d",c.ElementName)+addHtmlValue("\u30a6\u30a7\u30a4\u30af\u30bf\u30a4\u30e0",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("\u5185\u90e8",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("\u8d77\u304d\u305f\u5f8c",1==c.DeleteOnCompletion?"\u30a2\u30e9\u30fc\u30e0\u3092\u524a\u9664":"\u30a2\u30e9\u30fc\u30e0\u3092\u4fdd\u6301")+
1467
+"</div>";messagebox(format("\u30a2\u30e9\u30fc\u30e0{0}",c.ElementName),a);setDialogMode(11,"\u8b66\u5831"+c.ElementName,5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}
1468
+function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u5b9f\u884c",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1469
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1470
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u5b9f\u884c",
1471
+"\u30b9\u30af\u30ea\u30d7\u30c8\u30d5\u30a1\u30a4\u30eb\u304c\u7121\u52b9\u3067\u3059\u3002")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1472
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1473
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1474
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1475
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1476
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("{0}\u3092\u7de8\u96c6",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1477
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1478
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1479
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1480
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1481
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1482
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1483
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1484
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1485
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1486
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1487
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1488
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1489
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1490
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1491
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1492
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1493
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1494
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"\u30d0\u30a4\u30ca\u30ea\u30fc\u30d5\u30a1\u30a4\u30eb\u3001"+script_BlockScript[c].vars[d].value.length+" \u30d0\u30a4\u30c8":"\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+
1495
+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+="<tr><td style=height:3px></table>"}b+="</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">\u30d6\u30ed\u30c3\u30af\u3092\u5de6\u5074\u304b\u3089\u3053\u306e\u30b9\u30af\u30ea\u30d7\u30c8\u30dc\u30c3\u30af\u30b9\u306b\u30c9\u30e9\u30c3\u30b0\u30a2\u30f3\u30c9\u30c9\u30ed\u30c3\u30d7\u3057\u3066\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u958b\u59cb\u3057\u307e\u3059\u3002<div>');QH("scriptblocks",b+"<div style=height:80px></div>");
1496
+for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1497
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1498
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}
1499
+function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"\u65b0\u3057\u3044\u30b9\u30af\u30ea\u30d7\u30c8",3,script_newScriptDlgOk,"<br>\u30b9\u30af\u30ea\u30d7\u30c8\u30a8\u30c7\u30a3\u30bf\u30fc\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u3066\u30af\u30ea\u30a2\u3057\u307e\u3059\u304b\uff1f")}
1500
+function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1501
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("\u30b9\u30af\u30ea\u30d7\u30c8\u30b3\u30f3\u30d1\u30a4\u30eb\u30a8\u30e9\u30fc",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","\u505c\u6b62");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,
1502
+_mode:"Firmware"}),editscriptstate.wsstack=wsstack,editscriptstate.amtstack=amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}
1503
+function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["\u505c\u6b62","\u30e9\u30f3\u30cb\u30f3\u30b0","\u4e00\u6642\u505c\u6b62"];
1504
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="\u505c\u6b62\u3001\u30b9\u30af\u30ea\u30d7\u30c8\u306a\u3057";b&&null!=b&&(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,
1505
+b.ip)));50<c.length&&(c=c.substring(0,50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1506
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"\u30b9\u30af\u30ea\u30d7\u30c8\u30d6\u30ed\u30c3\u30af",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1507
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1508
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1509
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1510
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1511
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1512
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1513
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}
1514
+var httpErrorTable={200:"OK",401:"\u8a8d\u8a3c\u30a8\u30e9\u30fc",408:"\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u30a8\u30e9\u30fc",601:"WSMAN\u89e3\u6790\u30a8\u30e9\u30fc",602:"HTTP\u5fdc\u7b54\u30d8\u30c3\u30c0\u30fc\u3092\u89e3\u6790\u3067\u304d\u307e\u305b\u3093",603:"\u4e88\u671f\u3057\u306a\u3044HTTP\u5217\u6319\u5fdc\u7b54",604:"\u4e88\u671f\u3057\u306a\u3044HTTP\u30d7\u30eb\u5fdc\u7b54",997:"\u7121\u52b9\u306a\u30c0\u30a4\u30b8\u30a7\u30b9\u30c8\u30ec\u30eb\u30e0"};
1515
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("\u30a8\u30e9\u30fc\uff03{0}",b)),401==b&&QH(5,'\u8a8d\u8a3c\u30a8\u30e9\u30fc<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1516
+function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1517
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1518
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1519
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("\u901a\u8a71\u30a8\u30e9\u30fc",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}
1520
+function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}
1521
+function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="\u30ea\u30d5\u30ec\u30c3\u30b7\u30e5" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}
1522
+function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}
1523
+function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}
1524
+function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1525
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1526
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1527
+</script>
\ No newline at end of file
public/commander-ko.htm
new
+1499
@@ -0,0 +1,1499 @@
1
+<!DOCTYPE html><html lang="ko" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=잇다 onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>연결 해제</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>시스템 상태</a><p id=go14 class=nav1 onclick=go(14)><a>원격 데스크탑</a><p id=go24 class=nav1 onclick=go(24)> <a>파일</a><p id=go13 class=nav1 onclick=go(13)><a>시리얼 오버 LAN</a><p id=go2 class=nav1 onclick=go(2)><a>하드웨어 정보</a><p id=go6 class=nav1 onclick=go(6)><a>이벤트 로그</a><p id=go15 class=nav1 onclick=go(15)><a>감사 로그</a><p id=go21 class=nav1 onclick=go(21)><a>저장</a><p id=go8 class=nav1 onclick=go(8)><a>네트워크 설정</a><p id=go17 class=nav1 onclick=go(17)><a>인터넷 설정</a><p id=go16 class=nav1 onclick=go(16)><a>보안 설정</a><p id=go19 class=nav1 onclick=go(19)><a>에이전트 존재</a><p id=go18 class=nav1 onclick=go(18)><a>시스템 방어</a><p id=go11 class=nav1 onclick=go(11)><a>사용자 계정</a><p id=go22 class=nav1 onclick=go(22)><a>구독</a><p id=go23 class=nav1 onclick=go(23)><a>웨이크 경보</a><p id=go20 class=nav1 onclick=go(20)><a>스크립트 편집기</a><p id=go12 class=nav1 onclick=go(12)><a>WSMAN 브라우저</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value="디스크 맵" onclick=iderToggleDiskMap()><input type=button value="IDE-R 세션 중지" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>플로피, 블록은 512 바이트입니다.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CDROM, 블록은 2048 바이트입니다.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="스크립트 중지" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>스크립트 실행</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>이 컴퓨터의 펌웨어는 업데이트되어야합니다. <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>여기를 확인하십시오</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>불러오는 중 ...</h1></div><div id=p1 style=display:none><h1>시스템 상태</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>하드웨어 정보</h1><span id=18></span></div><div id=p6 style=display:none><h1>이벤트 로그</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>네트워크 설정</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>사용자 계정</h1><span id=23></span></div><div id=p12 style=display:none><h1>WSMAN 브라우저</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=질문 style=margin:4px onclick=wsmanQuery()><input type=button value=명확한 style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=필터 style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Serial-over-LAN 터미널</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>인텔 ® AMT 리디렉션 포트 또는 Serial-over-LAN 기능이 비활성화되었습니다<span id=28>사용하려면 여기를 클릭하십시오.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>원격 컴퓨터의 전원이 켜져 있지 않으면 여기를 클릭하여 전원 명령을 실행하십시오.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="전원 동작 ..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="원격 디스크 마운트 작업 시작" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="캡처 시작" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=잇다 onclick=connectTerminal(event) disabled="disabled"> <span id=31>연결이 끊어졌습니다.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR + LF" title="리턴 키가 보낼 것을 토글" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="터미널 크기 전환" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="인텔 (F10 = ESC + [OM)" title="F1 ~ F10 키 에뮬레이션 유형 전환" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="확장 된 아스키" title="터미널 에뮬레이션 유형 전환" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value="역행 키이" onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=풀 disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>원격 데스크탑</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>인텔 ® AMT 리디렉션 포트 또는 KVM 기능이 비활성화되었습니다<span id=43>사용하려면 여기를 클릭하십시오.</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>원격 컴퓨터의 전원이 켜져 있지 않으면 여기를 클릭하여 전원 명령을 실행하십시오.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="왼쪽으로 회전" onclick=drotate(-1)>↺</div><div class=rb title="오른쪽으로 회전" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="전체 화면 모드 전환" onkeypress="return false" onkeydown="return false" value=완전한 onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="원격 데스크톱의 스크린 샷 저장" onkeypress="return false" onkeydown="return false" value=저장... onclick=deskSaveImage() style=margin-right:3px><input type=button value="설정 ..." title="원격 데스크톱 설정 편집" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="원격 디스크 마운트 작업 시작" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="원격 시스템의 전원 상태 변경" onkeypress="return false" onkeydown="return false" value="전원 동작 ..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=잇다 onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>연결이 끊어졌습니다.</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>승리<option value=1>승 + 다운<option value=2>승 +<option value=3>승 + L<option value=4>승 + M<option value=20>승 + R<option value=23>승 + 왼쪽<option value=24>승리 + 오른쪽<option value=5>Shift + Win + M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=보내다 onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=유형 onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>빈 화면 </span><span id=53><input id=54 type=checkbox>보기 만 </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>감사 로그</h1><span id=56></span></div><div id=p16 style=display:none><h1>보안 설정</h1><span id=57></span></div><div id=p17 style=display:none><h1>인터넷 설정</h1><span id=58></span></div><div id=p18 style=display:none><h1>시스템 방어</h1><span id=59></span></div><div id=p19 style=display:none><h1>에이전트 존재</h1><span id=60></span></div><div id=p20 style=display:none><h1>스크립트 편집기</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>중지</div><div><input type=button value=에디터보기 title="스크립트 라인 편집기보기로 전환" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="뷰 빌더" title="블록 에디터 뷰로 전환" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=새로운... title="스크립트 편집기를 지우십시오" onclick=script_newScriptDlg()><input type=button value=하중... title="파일에서 스크립트로드" onclick=script_runScriptDlg()><input type=button value=저장... title="스크립트를 파일로 저장" onclick=script_saveScript(event)><input type=button value=재시작 title="스크립트를 컴파일하고 처음부터 실행할 준비를하십시오" onclick=resetScriptButton()><input type=button value=계속하다 title="현재 실행 지점에서 스크립트를 실행하십시오." onclick=runScriptButton()><input type=button value=단절 title="스크립트 실행 일시 중지" onclick=breakScriptButton()><input type=button value=단계 title="스크립트의 한 단계 실행" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>스크립트 작성기</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="필터 블록 ..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>스크립트</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>컴파일 된 스크립트</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>변수</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>콘솔</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>저장</h1><span id=61></span></div><div id=p22 style=display:none><h1>이벤트 구독</h1><span id=62></span></div><div id=p23 style=display:none><h1>웨이크 경보</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>파일</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=쪽으로> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="모두 선택" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value="이름 바꾸기" onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=지우다 onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="새 폴더" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=업로드 onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=절단 onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=부 onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=풀 onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value="새롭게 하다" onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">이름으로 분류하다<option value=2>크기별로 정렬<option value=3>날짜순으로 정렬<option value=4>이름으로 내림차순<option value=5>크기로 내림차순<option value=6>날짜별로 내림차순</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>사용자 이름</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>암호*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>비밀번호 확인</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>현지<option value=1>회로망<option value=2>어떤</select><div>허가</div></div><div>부여 된 권한</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>* 대문자, 소문자, 0-9 및! @ # $ % ^ & * () +-중 하나를 포함하는 최소 8 자</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>파워 액션</div></div><div><span style=color:red>경고:</span>일부 전원 작업으로 인해 데이터가 손실 될 수 있으며 데스크톱, 터미널 또는 디스크 리디렉션 세션의 연결이 끊어 질 수 있습니다.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>동의 코드</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>기본 디스플레이<option value=1>보조 디스플레이<option id=d6ThirdDisplay value=2 style=display:none>세번째 디스플레이</select><div>동의 표시</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, 컬러<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>이미지 인코딩</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>로컬 마우스 커서 표시</label><br><label><input type=checkbox id=d7showcad>Ctrl-Alt-Del 표시</label><br><label><input type=checkbox id=d7limitFrameRate>프레임 속도 제한</label><br><label><input type=checkbox id=d7noMouseRotate>마우스를 돌리지 마십시오</label><br></div><div>다른 설정</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">소프트웨어 KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50 %<option value=40>40 %<option selected="selected" value=30>30 %<option value=20>20 %<option value=10>10 %<option value=5>5 %<option value=1>1%</select><div style=height:20px>품질</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100 %<option value=896>87.5 %<option value=768>75 %<option value=640>62.5 %<option value=512>50 %<option value=384>37.5 %<option value=256>25 %<option value=128>12.5 %</select><div style=height:20px>스케일링</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=관리자 style=float:right;width:220px><div style=height:20px>사용자 이름</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>암호</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>리디렉션 포트</label><label id=c15 style=display:block><input type=checkbox id=c16>KVM 원격 데스크톱</label><label style=display:block><input type=checkbox id=c17>IDE 리디렉션<br></label><label style=display:block><input type=checkbox id=c18>시리얼 오버 LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>불필요<br></label><label><input type=radio name=d10 id=c20 value=1>KVM에만 필요<br></label><label><input type=radio name=d10 id=c21 value=4294967295>항상 필수<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="최대 32 자"><div title="최대 32 자">프로필 이름</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="최대 32 자"><div title="최대 32 자">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>우선 순위</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>입증</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>없음</select><div>암호화</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="8 자에서 63 자 사이의 길이"><div title="8 자에서 63 자 사이의 길이">암호*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="8 자에서 63 자 사이의 길이"><div title="8 자에서 63 자 사이의 길이">비밀번호 확인</div></div></div><div id=dialog19 style=margin:auto;margin:3px>이 시스템에 대한 인텔 ® AMT의 전체 상태가 파일로 저장됩니다. 비밀번호는 저장되지 않지만 일부 민감한 데이터가 포함될 수 있습니다.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>비활성화<br><input type=radio name=d20 id=d20b value=1>ICMP 응답<br><input type=radio name=d20 id=d20c value=2>RMCP 응답<br><input type=radio name=d20 id=d20d value=3>ICMP 및 RMCP 응답<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>운영 체제 IP 주소 동기화</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>IP 주소</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>서브넷 마크</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>게이트웨이</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>기본 DNS</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>대체 DNS</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>비활성화<option value=1>비활성화, DHCP 업데이트<option value=2>가능</select><div>동적 DNS 클라이언트</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>업데이트 간격 (분)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (초)</div></div><div style=font-size:10px><br>기본 간격은 1440 분이고 기본 TTL은 900 초입니다.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>파워 업<option value=10>초기화<option value=5>전원 사이클<option value=8>전력 다운<option id=d24p500 value=500>대기 모드에서 OS 웨이크<option id=d24p501 value=501>OS 절전<option value=999>부팅 옵션 설정</select><div>원격 명령</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>BIOS 일시 정지</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>보안 부팅 시행</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>BIOS 설정</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>강제 진행 이벤트</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>전원 잠금 버튼</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>잠금 재설정 버튼</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>잠자기 버튼</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>키보드 잠금</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>BIOS 비밀번호 우회</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>BIOS를 다시 플래시</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>안전 모드</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>IDER 사용</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>시리얼 오버 LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>인텔 ® 원격 보안 지우기</label><br></div></div><div>부팅 설정</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>없음<option id=ForceDVDBootOption value=1>CD / DVD 부팅 강제<option id=ForcePXEBootOption value=2>PXE 부팅 강제<option id=ForceHDBootOption value=3>강제 하드 디스크 부팅<option id=ForceDiagBootOption value=4>강제 진단 부팅</select><div>부팅 소스</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>없음<option value=1>색인 1<option value=2>인덱스 2<option value=3>색인 3<option value=3>색인 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>플로피로 부팅<option value=1>CDROM으로 부팅</select><div>IDER 부팅 장치</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>시스템 기본값<option id=c45 value=1>조용한<option id=c46 value=2>말 수가 많은<option id=c47 value=3>빈 화면</select><div>어휘</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>RSE 비밀번호</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>알람 이름</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>웨이크 날짜 (년-월-일)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>웨이크 시간 (시 : 분 : 초)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>간격 (일-시간-분)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>알람 유지<option value=1>완료시 삭제</select></div><div style=padding-top:4px>깨어 난 후</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=취소 style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=확인 style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=지우다 style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \ub370\uc774\ud130":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",
92
+c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"\uc6cc\uce58 \ub3c5 \uc694\uc6d0"+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... \ub85c \ubcc0\uacbd"+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"\ucf00\uc774\uc2a4 \uce68\uc785";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"\uc6d0\uaca9 LAN\uc744 \ud1b5\ud55c \uc9c1\ub82c \uc5f0\uacb0 \uc138\uc158\uc774 \uc124\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4.";
93
+if(1==c[2])return"LAN\uc744 \ud1b5\ud55c \uc6d0\uaca9 \uc9c1\ub82c \uc138\uc158\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9\uc790 \ucee8\ud2b8\ub864\uc774 \ubcf5\uc6d0\ub418\uc5c8\uc2b5\ub2c8\ub2e4.";if(2==c[2])return"\uc6d0\uaca9 IDE \ub9ac\ub514\ub809\uc158 \uc138\uc158\uc774 \uc124\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4.";if(3==c[2])return"\uc6d0\uaca9 IDE \ub9ac\ub514\ub809\uc158 \uc138\uc158\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9\uc790 \ucee8\ud2b8\ub864\uc774 \ubcf5\uc6d0\ub418\uc5c8\uc2b5\ub2c8\ub2e4."}if(36==
94
+a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="\uc5f4\uad11\ud55c"),4294967293==a?"\ubaa8\ub4e0 \uc218\uc2e0 \ud328\ud0b7 \ud544\ud130\uac00 \uc77c\uce58\ud588\uc2b5\ub2c8\ub2e4."+b+" \uc0c1\ud638 \uc791\uc6a9.":4294967292==a?"\ubaa8\ub4e0 \ubc1c\uc2e0 \ud328\ud0b7 \ud544\ud130\uac00 \uc77c\uce58\ud588\uc2b5\ub2c8\ub2e4."+b+" \uc0c1\ud638 \uc791\uc6a9.":4294967290==a?"\uc2a4\ud478\ud551 \ub41c \ud328\ud0b7 \ud544\ud130\uac00 \uc77c\uce58\ud588\uc2b5\ub2c8\ub2e4."+b+" \uc0c1\ud638 \uc791\uc6a9.":
95
+"\ud544\ud130"+a+" \uc5d0 \uc77c\uce58\ud588\ub2e4"+b+" \uc0c1\ud638 \uc791\uc6a9.";if(192==a)return 0==c[2]?"\ubcf4\uc548 \uc815\ucc45\uc774 \ud638\ucd9c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc77c\ubd80 \ub610\ub294 \ubaa8\ub4e0 \ub124\ud2b8\uc6cc\ud06c \ud2b8\ub798\ud53d (TX)\uc774 \uc911\uc9c0\ub418\uc5c8\uc2b5\ub2c8\ub2e4.":2==c[2]?"\ubcf4\uc548 \uc815\ucc45\uc774 \ud638\ucd9c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc77c\ubd80 \ub610\ub294 \ubaa8\ub4e0 \ub124\ud2b8\uc6cc\ud06c \ud2b8\ub798\ud53d (RX)\uc774 \uc911\uc9c0\ub418\uc5c8\uc2b5\ub2c8\ub2e4.":
96
+"\ubcf4\uc548 \uc815\ucc45\uc774 \ud638\ucd9c\ub418\uc5c8\uc2b5\ub2c8\ub2e4.";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"\uc6d0\uaca9 \uc5f0\uacb0\uc5d0 \ub300\ud55c \uc0ac\uc6a9\uc790 \uc694\uccad.";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"EAC \uc624\ub958 : Intel AMT\uc758 NAC\uac00 \ube44\ud65c\uc131\ud654\ub418\uc5b4\uc788\ub294 \ub3d9\uc548 \uc790\uc138\ub97c \uc5bb\uc73c\uc2ed\uc2dc\uc624.";if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"HWA \uc624\ub958 : \uc77c\ubc18 \uc624\ub958"}return 6==
97
+a?"\uc778\uc99d \uc2e4\ud328"+(c[1]+(c[2]<<8))+" \ud0c0\uc784\uc2a4. \uc2dc\uc2a4\ud15c\uc774 \uacf5\uaca9\uc744 \ubc1b\uace0\uc788\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.":30==a?"\ubd80\ud305 \uac00\ub2a5\ud55c \ubbf8\ub514\uc5b4\uac00 \uc5c6\uc2b5\ub2c8\ub2e4":32==a?"\uc6b4\uc601 \uccb4\uc81c \uc7a0\uae08 \ub610\ub294 \uc804\uc6d0 \uc911\ub2e8":35==a?"\uc2dc\uc2a4\ud15c \ubd80\ud305 \uc2e4\ud328":37==a?"\uc2dc\uc2a4\ud15c \ud38c\uc6e8\uc5b4\uac00 \uc2dc\uc791\ub418\uc5c8\uc2b5\ub2c8\ub2e4 (\uc801\uc5b4\ub3c4 \ud558\ub098 \uc774\uc0c1\uc758 CPU\uac00 \uc62c\ubc14\ub974\uac8c \uc2e4\ud589 \uc911\uc784).":
98
+"\uc54c \uc218\uc5c6\ub294 \uc13c\uc11c \uc720\ud615 #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||
99
+(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>\ud604\uc9c0</i>",g=5);3==b.InitiatorType&&(b.Initiator="<i>KVM \uae30\ubcf8 \ud3ec\ud2b8</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=
100
+a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/","http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=
101
+1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),
102
+function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),
103
+g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=
104
+function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
105
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
106
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
107
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
108
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
109
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
110
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
111
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
112
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
113
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
114
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
115
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
116
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
117
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
118
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
119
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
120
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
121
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
122
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
123
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
124
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
125
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
126
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
127
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
128
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
129
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
130
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
131
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
132
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
133
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
134
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
135
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
136
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
137
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
138
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
139
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
140
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
141
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
142
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
143
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
144
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
145
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
146
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
147
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
148
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
149
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
150
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
151
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
152
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
153
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
154
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
155
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="\uc9c0\uc815\ub418\uc9c0 \uc54a\uc74c. ; \uc2dc\uc2a4\ud15c\uc5d0 \uc2dc\uc2a4\ud15c \uba54\ubaa8\ub9ac\uac00 \uc2e4\uc81c\ub85c \uc124\uce58\ub418\uc5b4 \uc788\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. ; \uc0ac\uc6a9 \uac00\ub2a5\ud55c \uc2dc\uc2a4\ud15c \uba54\ubaa8\ub9ac\uac00\uc5c6\uace0 \uc124\uce58\ub41c \ubaa8\ub4e0 \uba54\ubaa8\ub9ac\uc5d0 \ubcf5\uad6c \ud560 \uc218\uc5c6\ub294 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. ; \ubcf5\uad6c \ud560 \uc218\uc5c6\ub294 \ud558\ub4dc \ub514\uc2a4\ud06c / ATAPI / IDE \uc7a5\uce58 \uc624\ub958. ; \ubcf5\uad6c \ud560 \uc218\uc5c6\ub294 \uc2dc\uc2a4\ud15c \ubcf4\ub4dc \uc624\ub958. ; \ubcf5\uad6c \ud560 \uc218\uc5c6\ub294 \ub514\uc2a4\ucf13 \ud558\uc704 \uc2dc\uc2a4\ud15c \uc624\ub958. ; \ubcf5\uad6c \ud560 \uc218\uc5c6\ub294 \ud558\ub4dc \ub514\uc2a4\ud06c \ucee8\ud2b8\ub864\ub7ec \uc624\ub958. ; \ubcf5\uad6c \ud560 \uc218\uc5c6\ub294 PS / 2 \ub610\ub294 USB \ud0a4\ubcf4\ub4dc \uc624\ub958. ; \uc774\ub3d9\uc2dd \ubd80\ud305 \ubbf8\ub514\uc5b4\ub97c \ucc3e\uc744 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. ; \ubcf5\uad6c \ud560 \uc218\uc5c6\ub294 \ube44\ub514\uc624 \ucee8\ud2b8\ub864\ub7ec \uc624\ub958. ; \ube44\ub514\uc624 \uc7a5\uce58\uac00 \uac10\uc9c0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. ; \ud38c\uc6e8\uc5b4 (BIOS) ROM \uc190\uc0c1\uc774 \uac10\uc9c0\ub418\uc5c8\uc2b5\ub2c8\ub2e4. ; CPU \uc804\uc555 \ubd88\uc77c\uce58 (\ub3d9\uc77c\ud55c \uc804\uc6d0\uc744 \uacf5\uc720\ud558\ub294 \ud504\ub85c\uc138\uc11c\uc758 \uc804\uc555 \uc694\uad6c \uc0ac\ud56d\uc774 \uc77c\uce58\ud558\uc9c0 \uc54a\uc74c) ; CPU \uc18d\ub3c4 \uc77c\uce58 \uc2e4\ud328".split(";"),
156
+h="\uc9c0\uc815\ub418\uc9c0 \uc54a\uc74c. ; \uba54\ubaa8\ub9ac \ucd08\uae30\ud654. ; \ud558\ub4dc \ub514\uc2a4\ud06c \ucd08\uae30\ud654 \ubc0f \ud14c\uc2a4\ud2b8 \uc2dc\uc791 ; \ubcf4\uc870 \ud504\ub85c\uc138\uc11c \ucd08\uae30\ud654 ; \uc0ac\uc6a9\uc790 \uc778\uc99d ; \uc0ac\uc6a9\uc790 \uc2dc\uc791 \uc2dc\uc2a4\ud15c \uc124\uc815 ; USB \ub9ac\uc18c\uc2a4 \uad6c\uc131 ; PCI \ub9ac\uc18c\uc2a4 \uad6c\uc131 ; \uc635\uc158 ROM \ucd08\uae30\ud654 ; \ube44\ub514\uc624 \ucd08\uae30\ud654 ; \uce90\uc2dc \ucd08\uae30\ud654 ; SM \ubc84\uc2a4 \ucd08\uae30\ud654 ; \ud0a4\ubcf4\ub4dc \ucee8\ud2b8\ub864\ub7ec \ucd08\uae30\ud654 ; \ub0b4\uc7a5 \ucee8\ud2b8\ub864\ub7ec / \uad00\ub9ac \ucee8\ud2b8\ub864\ub7ec \ucd08\uae30\ud654 ; \ub3c4\ud0b9 \uc2a4\ud14c\uc774\uc158 \uc5f0\uacb0 ; \ub3c4\ud0b9 \uc2a4\ud14c\uc774\uc158 \ud65c\uc131\ud654 ; \ub3c4\ud0b9 \uc2a4\ud14c\uc774\uc158 \uaebc\ub0b4\uae30 ; \ub3c4\ud0b9 \uc2a4\ud14c\uc774\uc158 \ube44\ud65c\uc131\ud654 ; \uc6b4\uc601 \uccb4\uc81c \uae68\uc6b0\uae30 \ubca1\ud130 ; \uc6b4\uc601 \uccb4\uc81c \ubd80\ud305 \ud504\ub85c\uc138\uc2a4 \uc2dc\uc791 ; \ubcf4\ub4dc \ub610\ub294 \ub9c8\ub354 \ubcf4\ub4dc \ucd08\uae30\ud654 ; \uc608\uc57d ; \ud50c\ub85c\ud53c \ucd08\uae30\ud654 ; \ud0a4\ubcf4\ub4dc \ud14c\uc2a4\ud2b8 ; \ud3ec\uc778\ud305 \uc7a5\uce58 \ud14c\uc2a4\ud2b8 ; 1 \ucc28 \ud504\ub85c\uc138\uc11c \ucd08\uae30\ud654".split(";"),
157
+g="\uc9c0\uc815\ub418\uc9c0 \uc54a\uc74c ; \uae30\ud0c0 ; \uc54c \uc218 \uc5c6\uc74c ; \ud504\ub85c\uc138\uc11c ; \ub514\uc2a4\ud06c ; \uc8fc\ubcc0 \uc7a5\uce58 ; \uc2dc\uc2a4\ud15c \uad00\ub9ac \ubaa8\ub4c8 ; \uc2dc\uc2a4\ud15c \ubcf4\ub4dc ; \uba54\ubaa8\ub9ac \ubaa8\ub4c8 ; \ud504\ub85c\uc138\uc11c \ubaa8\ub4c8 ; \uc804\uc6d0 \uacf5\uae09 \uc7a5\uce58 ; \uce74\ub4dc\uc5d0 \ucd94\uac00 ; \uc804\uba74 \ud328\ub110 \ubcf4\ub4dc ; \ud6c4\uba74 \ud328\ub110 \ubcf4\ub4dc ; \uc804\uc6d0 \uc2dc\uc2a4\ud15c \ubcf4\ub4dc ; \ub4dc\ub77c\uc774\ube0c \ud6c4\uba74 \ud310 ; \uc2dc\uc2a4\ud15c \ub0b4\ubd80 \ud655\uc7a5 \ubcf4\ub4dc ; \ub2e4\ub978 \uc2dc\uc2a4\ud15c \ubcf4\ub4dc ; \ud504\ub85c\uc138\uc11c \ubcf4\ub4dc ; \uc804\uc6d0 \uc7a5\uce58 ; \uc804\uc6d0 \ubaa8\ub4c8 ; \uc804\uc6d0 \uad00\ub9ac \ubcf4\ub4dc ; \uc100\uc2dc \ud6c4\uba74 \ud328\ub110 \ubcf4\ub4dc ; \uc2dc\uc2a4\ud15c \uc100\uc2dc ; \uc11c\ube0c \uc100\uc2dc ; \uae30\ud0c0 \uc100\uc2dc \ubcf4\ub4dc ; \ub514\uc2a4\ud06c \ub4dc\ub77c\uc774\ube0c \ubca0\uc774 ; \uc8fc\ubcc0 \ubca0\uc774 ; \ub514\ubc14\uc774\uc2a4 \ubca0\uc774 ; \ud32c \ub0c9\uac01 ; \ub0c9\uac01 \uc7a5\uce58 ; \ucf00\uc774\ube14 \uc778\ud130\ucee4\ub125\ud2b8 ; \uba54\ubaa8\ub9ac \uc7a5\uce58 ; \uc2dc\uc2a4\ud15c \uad00\ub9ac \uc18c\ud504\ud2b8\uc6e8\uc5b4 ; BIOS ; \uc778\ud154 (r) ME ; \uc2dc\uc2a4\ud15c \ubc84\uc2a4 ; \uadf8\ub8f9 ; \uc778\ud154 (r) ME ; \uc678\ubd80 \ud658\uacbd ; \ubc30\ud130\ub9ac ; \ud504\ub85c\uc138\uc2f1 \ube14\ub808\uc774\ub4dc ; \uc5f0\uacb0 \uc2a4\uc704\uce58 ; \ud504\ub85c\uc138\uc11c / \uba54\ubaa8\ub9ac \ubaa8\ub4c8 ; I / O \ubaa8\ub4c8 ; \ud504\ub85c\uc138\uc11c I / O \ubaa8\ub4c8 ; \uad00\ub9ac \ucee8\ud2b8\ub864\ub7ec \ud38c\uc6e8\uc5b4 ; IPMI \ucc44\ub110 ; PCI \ubc84\uc2a4 ; PCI \uace0\uc18d \ubc84\uc2a4 ; SCSI \ubc84\uc2a4 ; SATA / SAS \ubc84\uc2a4 ; \ud504\ub85c\uc138\uc11c \uc804\uba74 \ubc84\uc2a4".split(";");
158
+l.RealmNames=";; \ub9ac\ub514\ub809\uc158 ;; \ud558\ub4dc\uc6e8\uc5b4 \uc790\uc0b0 ; \uc6d0\uaca9 \uc81c\uc5b4 ; \uc2a4\ud1a0\ub9ac\uc9c0 ; \uc774\ubca4\ud2b8 \uad00\ub9ac\uc790 ; \uc2a4\ud1a0\ub9ac\uc9c0 \uad00\ub9ac\uc790 ; \uc5d0\uc774\uc804\ud2b8 \ud504\ub808\uc98c\uc2a4 \ub85c\uceec ; \uc5d0\uc774\uc804\ud2b8 \ud504\ub808\uc98c\uc2a4 \uc6d0\uaca9 ; \ud68c\ub85c \ucc28\ub2e8\uae30 ; \ub124\ud2b8\uc6cc\ud06c \uc2dc\uac04 ; \uc77c\ubc18 \uc815\ubcf4 ; \ud38c\uc6e8\uc5b4 \uc5c5\ub370\uc774\ud2b8 ; EIT ; LocalUN ; \uc5d4\ub4dc \ud3ec\uc778\ud2b8 \uc561\uc138\uc2a4 \uc81c\uc5b4 ; \uc5d4\ub4dc \ud3ec\uc778\ud2b8 \uc561\uc138\uc2a4 \uc81c\uc5b4 \uad00\ub9ac\uc790 ; \uc774\ubca4\ud2b8 \ub85c\uadf8 \ub9ac\ub354 ; \uac10\uc0ac \ub85c\uadf8 ; ACL \uc601\uc5ed ;;; \ub85c\uceec \uc2dc\uc2a4\ud15c".split(";");
159
+l.WatchdogCurrentStates={1:"\uc2dc\uc791\ub418\uc9c0 \uc54a\uc74c",2:"\uc911\uc9c0",4:"\ub2ec\ub9ac\ub294",8:"\ub9cc\ub8cc",16:"\ub9e4\ub2ec\ub9b0"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),
160
+D={1:"",2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"\ubcf4\uc548 \uad00\ub9ac\uc790",17:"RCO",18:"\ub9ac\ub514\ub809\uc158 \uad00\ub9ac\uc790",19:"\ud38c\uc6e8\uc5b4 \uc5c5\ub370\uc774\ud2b8 \uad00\ub9ac\uc790",20:"\ubcf4\uc548 \uac10\uc0ac \ub85c\uadf8",21:"\ub124\ud2b8\uc6cc\ud06c \uc2dc\uac04",22:"\ub124\ud2b8\uc6cc\ud06c \uad00\ub9ac",23:"\uc2a4\ud1a0\ub9ac\uc9c0 \uad00\ub9ac",24:"\uc774\ubca4\ud2b8 \uad00\ub9ac\uc790",25:"\ud68c\ub85c \ucc28\ub2e8\uae30 \uad00\ub9ac\uc790",26:"\uc0c1\ub2f4\uc6d0 \ud604\uc7ac \uc0c1\ud0dc \uad00\ub9ac\uc790",
161
+27:"\ubb34\uc120 \uad6c\uc131",28:"EAC",29:"KVM",30:"\uc0ac\uc6a9\uc790 \uc635\ud2b8 \uc778 \uc774\ubca4\ud2b8",32:"\uc2a4\ud06c\ub9b0 \ube14\ub7ad\ud0b9",33:"\uc6cc\uce58 \ub3c5 \uc774\ubca4\ud2b8",1600:"\ud504\ub85c\ube44\uc800\ub2dd \uc2dc\uc791",1601:"\ud504\ub85c\ube44\uc800\ub2dd \uc644\ub8cc",1602:"ACL \ud56d\ubaa9 \ucd94\uac00",1603:"ACL \ud56d\ubaa9 \uc218\uc815",1604:"ACL \ud56d\ubaa9 \uc81c\uac70",1605:"\uc2e0\uc784 \uc815\ubcf4\uac00 \uc62c\ubc14\ub974\uc9c0 \uc54a\uc740 ACL \uc561\uc138\uc2a4",
162
+1606:"ACL \ud56d\ubaa9 \uc0c1\ud0dc",1607:"TLS \uc0c1\ud0dc \ubcc0\uacbd",1608:"TLS \uc11c\ubc84 \uc778\uc99d\uc11c \uc138\ud2b8",1609:"TLS \uc11c\ubc84 \uc778\uc99d\uc11c \uc81c\uac70",1610:"TLS \uc2e0\ub8b0\ud560 \uc218\uc788\ub294 \ub8e8\ud2b8 \uc778\uc99d\uc11c \ucd94\uac00",1611:"TLS \uc2e0\ub8b0\ud560 \uc218\uc788\ub294 \ub8e8\ud2b8 \uc778\uc99d\uc11c \uc81c\uac70",1612:"TLS \uc0ac\uc804 \uacf5\uc720 \ud0a4 \uc138\ud2b8",1613:"Kerberos \uc124\uc815 \uc218\uc815",1614:"Kerberos \uae30\ubcf8 \ud0a4 \uc218\uc815",
163
+1615:"\ud50c\ub798\uc2dc \ub9c8\ubaa8 \uce74\uc6b4\ud130 \ub9ac\uc14b",1616:"\ud30c\uc6cc \ud328\ud0a4\uc9c0 \uc218\uc815",1617:"\uc601\uc5ed \uc778\uc99d \ubaa8\ub4dc \uc124\uc815",1618:"\ud074\ub77c\uc774\uc5b8\ud2b8\ub97c \uad00\ub9ac\uc790 \uc81c\uc5b4 \ubaa8\ub4dc\ub85c \uc5c5\uadf8\ub808\uc774\ub4dc",1619:"\ud504\ub85c\ube44\uc800\ub2dd \ud574\uc81c \uc2dc\uc791",1700:"\uc218\ud589 \ub41c \uc804\uc6d0 \ucf1c\uae30",1701:"\uc218\ud589 \ub41c \uc804\uc6d0 \ucc28\ub2e8",1702:"\uc218\ud589 \ub41c \uc804\uc6d0\uc8fc\uae30",
164
+1703:"\ub9ac\uc14b \uc218\ud589",1704:"\ubd80\ud305 \uc635\uc158 \uc124\uc815",1800:"IDER \uc138\uc158 \uac1c\uc124",1801:"IDER \uc138\uc158 \uc885\ub8cc",1802:"IDER \uc0ac\uc6a9",1803:"IDER \ube44\ud65c\uc131\ud654",1804:"SoL \uc138\uc158 \uac1c\uc124",1805:"SoL \uc138\uc158 \ub9c8\uac10",1806:"SoL \uc0ac\uc6a9",1807:"SoL \ube44\ud65c\uc131\ud654",1808:"KVM \uc138\uc158 \uc2dc\uc791",1809:"KVM \uc138\uc158 \uc885\ub8cc",1810:"KVM \uc0ac\uc6a9",1811:"KVM \ube44\ud65c\uc131\ud654",1812:"VNC \uc554\ud638\uac00 3 \ubc88 \uc2e4\ud328\ud588\uc2b5\ub2c8\ub2e4",
165
+1900:"\ud38c\uc6e8\uc5b4 \uc5c5\ub370\uc774\ud2b8",1901:"\ud38c\uc6e8\uc5b4 \uc5c5\ub370\uc774\ud2b8 \uc2e4\ud328",2E3:"\ubcf4\uc548 \uac10\uc0ac \ub85c\uadf8\uac00 \uc9c0\uc6cc\uc9d0",2001:"\ubcf4\uc548 \uac10\uc0ac \uc815\ucc45 \uc218\uc815",2002:"\ubcf4\uc548 \uac10\uc0ac \ub85c\uadf8 \ube44\ud65c\uc131\ud654",2003:"\ubcf4\uc548 \uac10\uc0ac \ub85c\uadf8 \uc0ac\uc6a9",2004:"\ubcf4\uc548 \uac10\uc0ac \ub85c\uadf8 \ub0b4\ubcf4\ub0b4\uae30",2005:"\ubcf4\uc548 \uac10\uc0ac \ub85c\uadf8 \ubcf5\uad6c",
166
+2100:"\uc778\ud154 ® ME \uc2dc\uac04 \uc124\uc815",2200:"TCPIP \ub9e4\uac1c \ubcc0\uc218 \uc138\ud2b8",2201:"\ud638\uc2a4\ud2b8 \uc774\ub984 \uc138\ud2b8",2202:"\ub3c4\uba54\uc778 \uc774\ub984 \uc138\ud2b8",2203:"VLAN \ub9e4\uac1c \ubcc0\uc218 \uc138\ud2b8",2204:"\ub9c1\ud06c \uc815\ucc45 \uc138\ud2b8",2205:"IPv6 \ub9e4\uac1c \ubcc0\uc218 \uc138\ud2b8",2300:"\uae00\ub85c\ubc8c \uc2a4\ud1a0\ub9ac\uc9c0 \uc18d\uc131 \uc138\ud2b8",2301:"\uc2a4\ud1a0\ub9ac\uc9c0 EACL \uc218\uc815",2302:"\uc2a4\ud1a0\ub9ac\uc9c0 FPACL \uc218\uc815",
167
+2303:"\uc2a4\ud1a0\ub9ac\uc9c0 \uc4f0\uae30 \uc791\uc5c5",2400:"\uc54c\ub9bc \uad6c\ub3c5",2401:"\uc218\uc2e0 \uac70\ubd80 \uc54c\ub9bc",2402:"\uc774\ubca4\ud2b8 \ub85c\uadf8\uac00 \uc9c0\uc6cc\uc9d0",2403:"\uc774\ubca4\ud2b8 \ub85c\uadf8 \uace0\uc815",2500:"CB \ud544\ud130 \ucd94\uac00",2501:"CB \ud544\ud130 \uc81c\uac70",2502:"CB \uc815\ucc45 \ucd94\uac00",2503:"CB \uc815\ucc45 \uc81c\uac70",2504:"CB \uae30\ubcf8 \uc815\ucc45 \uc138\ud2b8",2505:"CB \ud734\ub9ac\uc2a4\ud2f1 \uc635\uc158 \uc138\ud2b8",
168
+2506:"CB \ud734\ub9ac\uc2a4\ud2f1 \uc0c1\ud0dc \uc9c0\uc6b0\uae30",2600:"\uc5d0\uc774\uc804\ud2b8 \uac10\uc2dc\uc790 \ucd94\uac00",2601:"\uc5d0\uc774\uc804\ud2b8 \uac10\uc2dc\uc790 \uc81c\uac70",2602:"\uc5d0\uc774\uc804\ud2b8 \uc6cc\uce58 \ub3c5 \uc870\uce58 \uc138\ud2b8",2700:"\ubb34\uc120 \ud504\ub85c\ud30c\uc77c \ucd94\uac00",2701:"\ubb34\uc120 \ud504\ub85c\ud30c\uc77c \uc81c\uac70",2702:"\ubb34\uc120 \ud504\ub85c\ud30c\uc77c \uc5c5\ub370\uc774\ud2b8",2800:"EAC \uc790\uc138 \uc11c\uba85\uc790 SET",
169
+2801:"EAC \ud65c\uc131\ud654",2802:"EAC \ube44\ud65c\uc131\ud654",2803:"EAC \uc790\uc138 \uc0c1\ud0dc",2804:"EAC \uc124\uc815 \uc635\uc158",2900:"KVM \uc635\ud2b8 \uc778 \ud65c\uc131\ud654",2901:"KVM \uc635\ud2b8 \uc778 \ube44\ud65c\uc131\ud654",2902:"KVM \ube44\ubc00\ubc88\ud638 \ubcc0\uacbd",2903:"KVM \ub3d9\uc758 \uc131\uacf5",2904:"KVM \ub3d9\uc758 \uc2e4\ud328",3E3:"\uc635\ud2b8 \uc778 \uc815\ucc45 \ubcc0\uacbd",3001:"\ub3d9\uc758 \ucf54\ub4dc \uc774\ubca4\ud2b8 \ubcf4\ub0b4\uae30",3002:"\uc218\uc2e0 \uac70\ubd80 \uc774\ubca4\ud2b8 \uc2dc\uc791"};
170
+l.GetAuditLogExtendedDataStr=function(a,b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,2+b.charCodeAt(1));if(1603==a)return 0==b.charCodeAt(1)?b.substring(3):null;if(1605==a)return["\uc798\ubabb\ub41c ME \uc561\uc138\uc2a4","\uc798\ubabb\ub41c MEBx \uc561\uc138\uc2a4"][b.charCodeAt(0)];if(1606==a){var c=["\ube44\ud65c\uc131\ud654","\uac00\ub2a5"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+=","+b.substring(3));return c}return 1607==a?"\uba3c"+["NoAuth","ServerAuth","\uc0c1\ud638 \uc778\uc99d"][b.charCodeAt(0)]+
171
+", \ud604\uc9c0"+["NoAuth","ServerAuth","\uc0c1\ud638 \uc778\uc99d"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+","+["NoAuth","\uc778\uc99d","\ube44\ud65c\uc131\ud654"][b.charCodeAt(4)]:1619==a?["BIOS","MEBx","\ud604\uc9c0 MEI","\ub85c\uceec WSMAN","\uc6d0\uaca9 WSAMN"][b.charCodeAt(0)]:1900==a?"\uc5d0\uc11c"+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" \uc5d0"+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*
172
+ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"\uc5d0\uc11c"+["\uc5c6\uc74c","KVM","\ubaa8\ub450"][b.charCodeAt(0)]+" \uc5d0"+["\uc5c6\uc74c","KVM","\ubaa8\ub450"][b.charCodeAt(1)]:3001==a?["\uc131\uacf5","3 \ud68c \uc2e4\ud328"][b.charCodeAt(0)]:null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}
173
+function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
174
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
175
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
176
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
177
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
178
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
179
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
180
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
181
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
182
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
183
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
184
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
185
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
186
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
187
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
188
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
189
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
190
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
191
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
192
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
193
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
194
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
195
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
196
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
197
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
198
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
199
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
200
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
201
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
202
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
203
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
204
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
205
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
206
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
207
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
208
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
209
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
210
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
211
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
212
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
213
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
214
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
215
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
216
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
217
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
218
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
219
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
220
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
221
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
222
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
223
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
224
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
225
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
226
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
227
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
228
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
229
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
230
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
231
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
232
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
233
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
234
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
235
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
236
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
237
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
238
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
239
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
240
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
241
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
242
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
243
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
244
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
245
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
246
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
247
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
248
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
249
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
250
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
251
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
252
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
253
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
254
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
255
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
256
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
257
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
258
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
259
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
260
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
261
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
262
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
263
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
264
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
265
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
266
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
267
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
268
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
269
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
270
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
271
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
272
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
273
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
274
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
275
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
276
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
277
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
278
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
279
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
280
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
281
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
282
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
283
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
284
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
285
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
286
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
287
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
288
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
289
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
290
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
291
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
292
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
293
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
294
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
295
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
296
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
297
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
298
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
299
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
300
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
301
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
302
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
303
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
304
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
305
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
306
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
307
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
308
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
309
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
310
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
311
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
312
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
313
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
314
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
315
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
316
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
317
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
318
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
319
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
320
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
321
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
322
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
323
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
324
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
325
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
326
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
327
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
328
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
329
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
330
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
331
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
332
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
333
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
334
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
335
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
336
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
337
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
338
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
339
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
340
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
341
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
342
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
343
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
344
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
345
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
346
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
347
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
348
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
349
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
350
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
351
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
352
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
353
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
354
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
355
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
356
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
357
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
358
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
359
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
360
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
361
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
362
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
363
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
364
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
365
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
366
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
367
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
368
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
369
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
370
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
371
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
372
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
373
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
374
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
375
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
376
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
377
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
378
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
379
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
380
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
381
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
382
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
383
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
384
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
385
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
386
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
387
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
388
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
389
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
390
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
391
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
392
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
393
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
394
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
395
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
396
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
397
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
398
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
399
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
400
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
401
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
402
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
403
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
404
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
405
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
406
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
407
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
408
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
409
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
410
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
411
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
412
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
413
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
414
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
415
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
416
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
417
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
418
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
419
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
420
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
421
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
422
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
423
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
424
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
425
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
426
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
427
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
428
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
429
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
430
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
431
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
432
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
433
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
434
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
435
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
436
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
437
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
438
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
439
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
440
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
441
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
442
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
443
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
444
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
445
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
446
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
447
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
448
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
449
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
450
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
451
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
452
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
453
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
454
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
455
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
456
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
457
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
458
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
459
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
460
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
461
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
462
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
463
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
464
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
465
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
466
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
467
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
468
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
469
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
470
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
471
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
472
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
473
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
474
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
475
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
476
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
477
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
478
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
479
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
480
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
481
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
482
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
483
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
484
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
485
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
486
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
487
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
488
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
489
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
490
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
491
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
492
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
493
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
494
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
495
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
496
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
497
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
498
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
499
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
500
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
501
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
502
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
503
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
504
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
505
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
506
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
507
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
508
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
509
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
510
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
511
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
512
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
513
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
514
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
515
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
516
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
517
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
518
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
519
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
520
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
521
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
522
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
523
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
524
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
525
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
526
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
527
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
528
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
529
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
530
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
531
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
532
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
533
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
534
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
535
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
536
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
537
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
538
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
539
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
540
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
541
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
542
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
543
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
544
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
545
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
546
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
547
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
548
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
549
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
550
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
551
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
552
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
553
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
554
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
555
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
556
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
557
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
558
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
559
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
560
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
561
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
562
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
563
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
564
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
565
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
566
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
567
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
568
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
569
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
570
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
571
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
572
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
573
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
574
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
575
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
576
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
577
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
578
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
579
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
580
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
581
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
582
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
583
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
584
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
585
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
586
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
587
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
588
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
589
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
590
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
591
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
592
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
593
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
594
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
595
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
596
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
597
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
598
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
599
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
600
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
601
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
602
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
603
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
604
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
605
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
606
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
607
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
608
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
609
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
610
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
611
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
612
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
613
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
614
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
615
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
616
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
617
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
618
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
619
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
620
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
621
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
622
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
623
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
624
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
625
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
626
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
627
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
628
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
629
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
630
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
631
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
632
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
633
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
634
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
635
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
636
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
637
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
638
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
639
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
640
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
641
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
642
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
643
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
644
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
645
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
646
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
647
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
648
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
649
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
650
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
651
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
652
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
653
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
654
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
655
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
656
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
657
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
658
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
659
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
660
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
661
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
662
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
663
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
664
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
665
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
666
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
667
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
668
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
669
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
670
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
671
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
672
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
673
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
674
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
675
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
676
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
677
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
678
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
679
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
680
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
681
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
682
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
683
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
684
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
685
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
686
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
687
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
688
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
689
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
690
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
691
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
692
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
693
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
694
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
695
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
696
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
697
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
698
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
699
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
700
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
701
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
702
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
703
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
704
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
705
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
706
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
707
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
708
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
709
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
710
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
711
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
712
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
713
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
714
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
715
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
716
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
717
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
718
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
719
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
720
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
721
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
722
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
723
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
724
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
725
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
726
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
727
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
728
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
729
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
730
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
731
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
732
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
733
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
734
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
735
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
736
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
737
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
738
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
739
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
740
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
741
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
742
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
743
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
744
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
745
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
746
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
747
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
748
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
749
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
750
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
751
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
752
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
753
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
754
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
755
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
756
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
757
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
758
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
759
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
760
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
761
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
762
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
763
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
764
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
765
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
766
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
767
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
768
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
769
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
770
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
771
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
772
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
773
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
774
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
775
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
776
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
777
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
778
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
779
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
780
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
781
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
782
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
783
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
784
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
785
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
786
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
787
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
788
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
789
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
790
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
791
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
792
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
793
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
794
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
795
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
796
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
797
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
798
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
799
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
800
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
801
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
802
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
803
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
804
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
805
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
806
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
807
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
808
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
809
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
810
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
811
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
812
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
813
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
814
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
815
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
816
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
817
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
818
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
819
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
820
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
821
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
822
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
823
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
824
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
825
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
826
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
827
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
828
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
829
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
830
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
831
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
832
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
833
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
834
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
835
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
836
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
837
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
838
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
839
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
840
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
841
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
842
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
843
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
844
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
845
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
846
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
847
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
848
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
849
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
850
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
851
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
852
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
853
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
854
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
855
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
856
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
857
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
858
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
859
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
860
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
861
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
862
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
863
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
864
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
865
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
866
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
867
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
868
+k.Init();return k},ZLIB=ZLIB||{};
869
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
870
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
871
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
872
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
873
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
874
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
875
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
876
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
877
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
878
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
879
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
880
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
881
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
882
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
883
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
884
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
885
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
886
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
887
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
888
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
889
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
890
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
891
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
892
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
893
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
894
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
895
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
896
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
897
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
898
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
899
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
900
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
901
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
902
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
903
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
904
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
905
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
906
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
907
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
908
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
909
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
910
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
911
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
912
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
913
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
914
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
915
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
916
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
917
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
918
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
919
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
920
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
921
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
922
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
923
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
924
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
925
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
926
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
927
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
928
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
929
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
930
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
931
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
932
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
933
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
934
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
935
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
936
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
937
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
938
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
939
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
940
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
941
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
942
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
943
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
944
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
945
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
946
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
947
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
948
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>\ubd88\ub7ec\uc624\ub294 \uc911 ...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
949
+StatusStrs=["\uc5f0\uacb0 \ud574\uc81c","\uc5f0\uacb0 \uc911 ...","\uc124\uc815...","\uc5f0\uacb0\ub428"],scriptstate,t,t2,rsepass=null;
950
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
951
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR + LF":"LF";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
952
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
953
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
954
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
955
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
956
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="\ubd84\ub9ac"}function getCurrentMeshNode(){return currentMeshNode}
957
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="\ucea1\ucc98 \uc2dc\uc791";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
958
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
959
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
960
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
961
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
962
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
963
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
964
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
965
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="\uc787\ub2e4";QH(5,"\uc5f0\uacb0 \ud574\uc81c");go(100)}
966
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
967
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
968
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
969
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
970
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
971
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
972
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
973
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
974
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
975
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
976
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"\uc2dc\uacc4 \ub3d9\uae30\ud654",3,syncClockEx,"\uc774 \ucef4\ud4e8\ud130\uc640 Intel AMT \uc2dc\uacc4\ub97c \ub3d9\uae30\ud654 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?")}
977
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","\uc2dc\uac04\uc744 \uc124\uc815\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc0c1\ud0dc ="+d):0!=a.Body.ReturnValue?messagebox("","\uc2dc\uac04\uc744 \uc124\uc815\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc624\ub958 : "+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}
978
+var DMTFPowerStates=";;\uc804\uc6d0 \ucf1c\uc9d0;\uac00\ubcbc\uc6b4 \uc218\uba74;\uae4a\uc740 \uc7a0;\uc804\uc6d0 \uc0ac\uc774\ud074 (\uc18c\ud504\ud2b8 \uc624\ud504);\uaebc\uc9d0-\ud558\ub4dc;\ucd5c\ub300 \uc808\uc804 \ubaa8\ub4dc;\uc18c\ud504\ud2b8 \uc624\ud504;\uc804\uc6d0\uc744 \uaed0\ub2e4 \ucf1c\uc2ed\uc2dc\uc624 (\uaebc\uc9d0);\uba54\uc778 \ubc84\uc2a4 \ub9ac\uc14b;\uc9c4\ub2e8 \uc778\ud130\ub7fd\ud2b8 (NMI);\ud574\ub2f9 \uc0ac\ud56d \uc5c6\uc74c;\uaebc\uc9d0-\ubd80\ub4dc\ub7fd\uace0 \uc6b0\uc544\ud55c;\ub044\uae30-\ub2e8\ub2e8\ud568;\uc6b0\uc544\ud55c \ub9c8\uc2a4\ud130 \ubc84\uc2a4 \ub9ac\uc14b;\uc804\uc6d0\uc8fc\uae30 (\uaebc\uc9d0-\uc18c\ud504\ud2b8 \uc6b0\uc544\ud568);\uc804\uc6d0\uc744 \uaed0\ub2e4 \ucf1c\uc2ed\uc2dc\uc624 (\uaebc\uc9d0-\uc815\uc0c1 \uc791\ub3d9);\uc9c4\ub2e8 \uc778\ud130\ub7fd\ud2b8 (INIT)".split(";");
979
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>\uc54c \uc218 \uc5c6\ub294</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"\uc804\uc6d0 \ucf1c\uc9d0"==a&&amtsysstate.IPS_PowerManagementService&&
980
+amtsysstate.IPS_PowerManagementService.response&&3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=[", \ud50c\ub7ec\uadf8\uc778","\ubc30\ud130\ub9ac \uc0ac\uc6a9"][q.PowerSource]);d+=TableEntry("\ud798",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>\uc5c6\uc74c</i>":EscapeHtml(c);d+=TableEntry("\uc774\ub984 \ubc0f \ub3c4\uba54\uc778",
981
+addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?d+=TableEntry("\uc2dc\uc2a4\ud15c ID",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("\uc2dc\uc2a4\ud15c ID",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" \uad00\ub9ac \uc81c\uc5b4 \ubaa8\ub4dc (ACM)\uc5d0\uc11c \ud65c\uc131\ud654",
982
+4==k.ProvisioningMode&&(p=" \ud074\ub77c\uc774\uc5b8\ud2b8 \uc81c\uc5b4 \ubaa8\ub4dc (CCM)\uc5d0\uc11c \ud65c\uc131\ud654",b=9));d+=TableEntry("\uc778\ud154 ® ME","v"+getItem(amtlogicalelements,"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,
983
+2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&
984
+2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);r&&(e+=", \ub9ac\ub514\ub809\uc158 \ud3ec\ud2b8");n&&(e+=", Serial-over-LAN");p&&(e+="IDE \ub9ac\ub514\ub809\uc158");w&&(e+=", KVM");""==e&&(e=" \uc5c6\uc74c");d+=TableEntry("\ud65c\uc131 \uae30\ub2a5",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&
985
+amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="\uae30\ubcf8 \ub514\uc2a4\ud50c\ub808\uc774",7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["\uae30\ubcf8 \ub514\uc2a4\ud50c\ub808\uc774","\ubcf4\uc870 \ub514\uc2a4\ud50c\ub808\uc774","\uc138\ubc88\uc9f8 \ub514\uc2a4\ud50c\ub808\uc774"][p.DefaultScreen]),e='<span title="'+format("\uae30\ubcf8 \uc6d0\uaca9 \ub514\uc2a4\ud50c\ub808\uc774\ub294 {0}\uc785\ub2c8\ub2e4.",e.toLowerCase())+
986
+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+="\ud3ec\ud2b8 5900 \uc0ac\uc6a9"),1==p.OptInPolicy&&(e+=","+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"\ucd08 \uc635\ud2b8 \uc778":"\ub450 \ubc88\uc9f8 \uc635\ud2b8 \uc778")),e+=","+p.SessionTimeout+" \ubd84"+(0<p.SessionTimeout?"s":"")+" \uc138\uc158 \ud0c0\uc784 \uc544\uc6c3",9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService?((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&1))&&(e+=", \ube14\ub7ad\ud0b9 \ud5c8\uc6a9"),
987
+QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("\uc6d0\uaca9 \ub370\uc2a4\ud06c\ud0d1",addLinkConditional(e,"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="\uc54c \uc218\uc5c6\ub294 \uc0c1\ud0dc",r=amtsysstate.IPS_OptInService.response.OptInRequired,
988
+0==r&&(e="\ubd88\ud544\uc694"),1==r&&(e="KVM\uc5d0\ub9cc \ud544\uc694"),4294967295==r&&(e="\ud56d\uc0c1 \ud544\uc218"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("\uc0ac\uc6a9\uc790 \ub3d9\uc758",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==
989
+e[l].SettingData.ReferenceParameters.ResourceURI)for(r=e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==r&&(d+=TableEntry("\uc804\uc6d0 \uc815\ucc45",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&(d+=TableEntry("\ub0a0\uc9dc \uc2dc\uac04",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),
990
+"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";e+=AddButton("\uc804\uc6d0 \ub3d9\uc791 ...","showPowerActionDlg()")+" ";e+=AddButton("\uc0c1\ud0dc \uc800\uc7a5 ...","saveEntireAmtState()")+" ";e+=AddButton("\uc2a4\ud06c\ub9bd\ud2b8 \uc2e4\ud589 ...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");QH(17,
991
+d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+" \ub124\ud2b8\uc6cc\ud06c \uc124\uc815\uc744 \ubcc0\uacbd\ud558\uba74\uc774 \ud398\uc774\uc9c0\ub97c \uc0ac\uc6a9\ud558\uc9c0 \ubabb\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.");d=d+"<br><h2>\uc77c\ubc18 \uc124\uc815</h2>"+TableStart();e="";"<i>\uc5c6\uc74c</i>"!=c&&(1==q.SharedFQDN&&(e=", OS\uc640 \uacf5\uc720"),0==q.SharedFQDN&&(e="OS\uc640 \ub2e4\ub978"));
992
+d+=TableEntry("\uc774\ub984 \ubc0f \ub3c4\uba54\uc778",addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));c="\ube44\ud65c\uc131\ud654";1==q.DDNSUpdateEnabled?c="\uac01\uac01 \ud65c\uc131\ud654"+q.DDNSPeriodicUpdateInterval+" \ubd84, TTL\uc740"+q.DDNSTTL+" \uc758\uc0ac\ub85d":1==q.DDNSUpdateByDHCPServerEnabled&&(c="DHCP \uc11c\ubc84\ub85c \uc5c5\ub370\uc774\ud2b8");d+=TableEntry("\ub3d9\uc801 DNS",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=
993
+amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"\ubb34\uc120 \uc778\ud130\ud398\uc774\uc2a4":"\uc720\uc120 \uc778\ud130\ud398\uc774\uc2a4")+"</h2>";d+=TableStart();d+=TableEntry("\uc5f0\uacb0 \uc0c1\ud0dc",1==c.LinkIsUp?"\uc5f0\uacb0\ub418\uc5c8\uc2b5\ub2c8\ub2e4":"\ub9c1\ud06c\uac00 \ub2e4\uc6b4\ub418\uc5c8\uc2b5\ub2c8\ub2e4");if(c.LinkPolicy){c.LinkPolicy=
994
+MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 / AC"),14==c.LinkPolicy[l]&&e.push("Sx / AC"),16==c.LinkPolicy[l]&&e.push("S0 / DC"),224==c.LinkPolicy[l]&&e.push("Sx / DC");0==e.length&&e.push("");d+=TableEntry("\ub9c1\ud06c \uc815\ucc45",addLinkConditional(0==e.length?"\uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4":"\uac00\ub2a5: "+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("MAC \uc8fc\uc18c",
995
+c.MACAddress));amtwirelessif==a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("\uc0c1\ud0dc",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("\ub77c\ub514\uc624 \uc0c1\ud0dc",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+", SSID: "+(s?s:"<i>\uc5c6\uc74c</i>")));amtwirelessif!=a&&(d+=TableEntry("\ud551\uc5d0 \uc751\ub2f5",addLinkConditional(["\ube44\ud65c\uc131\ud654",
996
+"ICMP \uc751\ub2f5","RMCP \uc751\ub2f5","ICMP \ubc0f RMCP \uc751\ub2f5"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"DHCP \uc11c\ubc84\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc790\ub3d9":"\uace0\uc815 IP \uc8fc\uc18c",1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("IPv4 \uc0c1\ud0dc",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("IPv4 \uc8fc\uc18c",isIpAddress(c.IPAddress,"\uc5c6\uc74c"));isIpAddress(c.DefaultGateway)&&
997
+(d+=TableEntry("IPv4 \uac8c\uc774\ud2b8\uc6e8\uc774 / \ub9c8\uc2a4\ud06c",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"\uc5c6\uc74c")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("IPv4 \ub3c4\uba54\uc778 \uc774\ub984 \uc11c\ubc84",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r="\ube44\ud65c\uc131\ud654",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&
998
+e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?"\uc0ac\uc6a9, \uc790\ub3d9 \ubc0f \uc218\ub3d9 \uc8fc\uc18c":"\uc0ac\uc6a9, \uc790\ub3d9 \uc8fc\uc18c");d+=TableEntry("IPv6 \uc0c1\ud0dc",addLinkConditional(r,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=
999
+MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=","),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("IPv6 \uc8fc\uc18c",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("IPv6 \uc8fc\uc18c","\uc5c6\uc74c");isIpAddress(c.CurrentDefaultRouter)&&(d+=TableEntry("IPv6 \uae30\ubcf8 \ub77c\uc6b0\ud130",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,
1000
+isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("IPv6 \ub3c4\uba54\uc778 \uc774\ub984 \uc11c\ubc84",e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<amtversion||11==amtversion&&5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}
1001
+function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
1002
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
1003
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"\ub9c1\ud06c \uc815\ucc45",3,showLinkPolicyDlgEx,a,b)}}
1004
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
1005
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("\ub9c1\ud06c \uc815\ucc45",format("\uc0c8 \ub9c1\ud06c \uc815\ucc45\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958 {0}",d))}
1006
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>\uc5c6\uc74c</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
1007
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>\uc2e0\ub8b0</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+" \ubc14\uc774\ud2b8<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+
1008
+c+")>\ub2e4\uc6b4\ub85c\ub4dc</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" \ubc14\uc774\ud2b8<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>\ub2e4\uc6b4\ub85c\ub4dc</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
1009
+function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
1010
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"\uc804\uccb4 \uc778\ud154 ® AMT \uc0c1\ud0dc \uc800\uc7a5",3,saveEntireAmtStateOk)}}
1011
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"\uc804\uccb4 \uc778\ud154 ® AMT \uc0c1\ud0dc \uc800\uc7a5",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1012
+function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1013
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>\uae30\ubcf8 \ub514\uc2a4\ud50c\ub808\uc774</option><option value=1>\ubcf4\uc870 \ub514\uc2a4\ud50c\ub808\uc774</option>";9<amtversion&&(c+="<option value=2>\uc138\ubc88\uc9f8 \ub514\uc2a4\ud50c\ub808\uc774</option>");c+='</select><div style=padding-top:4px>\uae30\ubcf8 \ud45c\uc2dc</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>\uc138\uc158 \uc2dc\uac04 \ucd08\uacfc (\ubd84)</div></div>';
1014
+1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>\uc635\ud2b8 \uc778 \ud0c0\uc784 \uc544\uc6c3 (\ucd08)</div></div>');c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>\ube44\ud65c\uc131\ud654, \uad8c\uc7a5</option><option value=1>\ud65c\uc131\ud654 \ub41c \ub808\uac70\uc2dc KVM \ubdf0\uc5b4</option></select><div style=padding-top:4px>\ud3ec\ud2b8 5900</div></div>";
1015
+c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>\ube44\ubc00\ubc88\ud638 5900 (8 \uc790)</div></div>";9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+='<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>\ube44\ud65c\uc131\ud654</option><option value=1>\uac00\ub2a5</option></select><div style=padding-top:4px title="\uc774 \uae30\ub2a5\uc740 \uc885\uc885 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4">\uc2a4\ud06c\ub9b0 \ube14\ub7ad\ud0b9</div></div>');
1016
+c+="</div>";setDialogMode(11,"\uc6d0\uaca9 \ub370\uc2a4\ud06c\ud1b1 \uc124\uc815",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}
1017
+function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1018
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1019
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("\uc6d0\uaca9 \ub370\uc2a4\ud06c\ud1b1 \uc124\uc815",format("\uc624\ub958 {0}, \uac12\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.",d))}
1020
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("\uc624\ub958",format("\ud654\uba74 \ube44\uc6b0\uae30\ub97c \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.\uc774 \uc2dc\uc2a4\ud15c\uc5d0\uc11c \ube44\uc6b0\uae30\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4 ({0}).",d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}
1021
+function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1022
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("\uace0\uc815 \ud574\uc81c \ub85c\uadf8","FreezeLog(0)"):AddButton("\ub3d9\uacb0 \ub85c\uadf8","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="\ud544\ud130" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1023
+AddRefreshButton("PullEventLog(1)")+AddButton("\ub85c\uadf8 \uc9c0\uc6b0\uae30","ClearLog()")+AddButton("\uc800\uc7a5...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1024
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>\ucd9c\ucc98</b><td class=r1><b>\uae30\uc220</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1025
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1026
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"\uc774\ubca4\ud2b8 \ub85c\uadf8\ub97c \uc9c0\uc6b0\uc2dc\uaca0\uc2b5\ub2c8\uae4c?"),setDialogMode(1,"\uc774\ubca4\ud2b8 \ub85c\uadf8",3,ClearLogEx))}
1027
+function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("\uc774\ubca4\ud2b8 \ub85c\uadf8","\uc9c0\uc6b8 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958 : "+d):PullEventLog()})}
1028
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("\uc2dc\uac01",c.Time.toLocaleString());a+=addHtmlValue("\ucd9c\ucc98",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("\uae30\uc220",c.Desc);a+=MoreStart();a+=addHtmlValue("\uc7a5\uce58 \uc8fc\uc18c",c.DeviceAddress);a+=addHtmlValue("\uc2e4\uc7ac",c.Entity);a+=addHtmlValue("\uc5d4\ud130\ud2f0 \uc778\uc2a4\ud134\uc2a4",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&
1029
+(d+=","),d+=c.EventData[e];a+=addHtmlValue("\ub370\uc774\ud130",d);a+=addHtmlValue("\uc624\ud504\uc14b",c.EventOffset);a+=addHtmlValue("\uc13c\uc11c \ud0c0\uc785",c.EventSensorType);a+=addHtmlValue("\uc2ec\uac01\uc131",c.EventSeverity);a+=addHtmlValue("\uc18c\uc2a4 \uc720\ud615",c.EventSourceType);a+=addHtmlValue("\uc720\ud615",c.EventType);a+=addHtmlValue("\uc13c\uc11c \ubc88\ud638",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("\uc774\ubca4\ud2b8 # {0} \uc138\ubd80 \uc0ac\ud56d",b+
1030
+1),a)}}function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1031
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1032
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\uc774\ubca4\ud2b8 \uac00\uc785\uc790\ub97c \uad00\ub9ac\ud569\ub2c8\ub2e4.<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),
1033
+d=subscriptionsListeners.CIM_ListenerDestination.responses[e],b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>\uad6c\ub3c5\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.</i></div><br>");e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&
1034
+(e+=AddButton("\uc0c8\ub85c\uc6b4 \uad6c\ub3c5","newSubscriptionButton()"));b+="<br><td class=r1>"+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"\ud478\uc2dc",3:"ACK\ub85c \ud478\uc2dc",4:"\ud589\uc0ac",5:"\uc190\uc7a1\uc774"};
1035
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("\ubaa9\uc801\uc9c0",a.Destination);d+=addHtmlValue("\ud544\ud130",c);d+=addHtmlValue("\uc804\ub2ec \ubaa8\ub4dc",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"\uc2e0\uccad"+
1036
+(b+1),xxAccountAdminName?5:1,deleteSubscriptionButton,d+"</div>",b)}}
1037
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
1038
+Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1039
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>\ud478\uc2dc</option><option value=PushWithAck>ACK\ub85c \ud478\uc2dc</option></select><div style=padding-top:4px>\uc720\ud615</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+='<option value="'+subscriptionsFilters[c].InstanceID+
1040
+'">'+subscriptionsFilters[c].CollectionName.substring(13)+"</option>";b+="</select><div style=padding-top:4px>\ud544\ud130</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>URL</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>\uc5c6\uc74c</option><option value=1>\uc694\ub78c</option></select><div style=padding-top:4px>\uc785\uc99d</div></div>";
1041
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>\uc0ac\uc6a9\uc790 \uc774\ub984</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>\uc554\ud638</div></div>";b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>\uc778\uc218</div></div>";
1042
+setDialogMode(11,"\uc774\ubca4\ud2b8 \uad6c\ub3c5 \ucd94\uac00",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1043
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1044
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="\uc54c \uc218 \uc5c6\ub294;\ub2e4\ub978;\uac00\ub2a5;\ube44\ud65c\uc131\ud654;\uc885\ub8cc;\ud574\ub2f9 \uc0ac\ud56d \uc5c6\uc74c;\ud65c\uc131\ud654\ub418\uc5c8\uc9c0\ub9cc \uc624\ud504\ub77c\uc778;\ud14c\uc2a4\ud2b8 \uc911;\uc5f0\uae30 \ub428;Quiesce;\uc2dc\uc791".split(";");
1045
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"\ube44\ud65c\uc131\ud654":"\uac00\ub2a5",c&2&&(b+=", \uc7a0\uae40"),c&4&&(b+=", \uac70\uc758 \uc804\uccb4"),c&8&&(b+=", \uc804\uccb4"),c&16&&(b+=", NoKey"),c="<h1>\uac10\uc0ac \ub85c\uadf8 \uc124\uc815</h1>"+TableStart(),c+=TableEntry("\uc0c1\ud0dc",b),c+=TableEntry("\uc800\uc7a5",a[0].CurrentNumberOfRecords+" \uae30\ub85d,"+a[0].PercentageFree+"% \ubb34\ub8cc"),c+=TableEntry("\uc815\ucc45 \ub36e\uc5b4 \uc4f0\uae30",
1046
+2==a[0].OverwritePolicy?"\uac00\ub4dd \ucc28\uba74 \ub7a9":"\ub36e\uc5b4 \uc4f0\uc9c0 \uc54a\uc74c"),c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1047
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="\ud544\ud130" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("\uc800\uc7a5...","SaveAuditLog()")+AddButton("\ub85c\uadf8 \uc9c0\uc6b0\uae30","ClearAuditLog()"))+"<br>");if(0==c.length)d="\uac10\uc0ac \ub85c\uadf8 \uc774\ubca4\ud2b8\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.";
1048
+else{var e=0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>\uc2dc\uac01</b><td class=r1 style=width:260px><b>\ucc3d\uc2dc\uc790</b><td class=r1><b>Action</b>";for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+=","+q.Event);null!=q.ExStr&&(p+=","+q.ExStr);""!=
1049
+k&&""!=r&&(k+=",");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}
1050
+function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","\uc778\ud154 AMT \uac10\uc0ac \ub85c\uadf8",auditLog)}
1051
+function ClearAuditLog(b){QH(66,"\uac10\uc0ac \ub85c\uadf8\ub97c \uc9c0\uc6b0\uc2dc\uaca0\uc2b5\ub2c8\uae4c?");setDialogMode(1,"\uac10\uc0ac \ub85c\uadf8",3,ClearAuditLogEx)}function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}
1052
+function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("\uac10\uc0ac \ub85c\uadf8","\uc624\ub958: "+d)}
1053
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("\uc2dc\uac01",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("\ucc3d\uc2dc\uc790",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("\uc8fc\uc18c",a.NetAddress));d+=addHtmlValue("\uc2e0\uccad",a.AuditApp);d+=addHtmlValue("\ud589\uc0ac",a.Event);if(null!=a.ExStr)d+=addHtmlValue("\ud655\uc7a5 \ub41c \ub370\uc774\ud130",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<
1054
+e.length&&(e+=","),e+=a.Ex.charCodeAt(c);""!=e&&(d+=addHtmlValue("\ub370\uc774\ud130 \uac12",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("\ub370\uc774\ud130 \ubb38\uc790\uc5f4",a.Ex.substring(2)))}messagebox("\uac10\uc0ac \uc774\ubca4\ud2b8 #"+(b+1)+" \uc138\ubd80",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;
1055
+function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1056
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1057
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1058
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1059
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"\ube44\ud65c\uc131\ud654";var c=(1==xxTlsSettings[b].MutualAuthentication?"\uc0c1\ud638 \uc778\uc99d TLS":"\uc11c\ubc84 \uc778\uc99d TLS")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" \uadf8\ub9ac\uace0 \ube44 TLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1060
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("\uc6d0\uaca9 TLS \ubcf4\uc548",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("\ub85c\uceec TLS \ubcf4\uc548",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\uc774 \ucef4\ud4e8\ud130\uc758 \uc778\ud154 ® AMT \uc778\uc99d\uc11c\ub97c \uad00\ub9ac\ud558\uc2ed\uc2dc\uc624.<br><br>");
1061
+if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>\uc778\uc99d\uc11c\ub97c \ucc3e\uc744 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b="\uc2e0\ub8b0\ud560 \uc218\uc788\ub294 \ub8e8\ud2b8"),xxCertificates[d].XPrivateKey&&(b="\uac1c\uc778 \ud0a4"),d==xxTlsCurrentCert&&(b+=", TLS \uc778\uc99d\uc11c"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+
1062
+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+b+"</i></div></div>";for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>\ud560\ub2f9\ub418\uc9c0 \uc54a\uc740 \uac1c\uc778 \ud0a4 \uc30d #"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("\uc778\uc99d\uc11c \ucd94\uac00 ...","addCertButton()")+AddButton("\uc778\uc99d\uc11c \ubc1c\uae09 ...","issueCertButton()"));
1063
+a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1064
+function showKeyPairDetails(b){setDialogMode(11,"\ud0a4 \ud398\uc5b4 #"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"\uc774\uac83\uc740 \uc778\uc99d\uc11c\uc5d0 \uc18d\ud558\uc9c0 \uc54a\uc740 \uacf5\uac1c / \uac1c\uc778 \uc778\uc99d\uc11c \ud0a4 \uc30d\uc785\ub2c8\ub2e4. \uc774 \ud56d\ubaa9\uc740 \uc77c\uc2dc\uc801\uc774\uc5b4\uc57c\ud569\ub2c8\ub2e4.")}
1065
+var xxCertSubjectNames={CN:"\uacf5\ud1b5 \uc774\ub984",O:"\uc870\uc9c1",OU:"\uc870\uc9c1 \ub2e8\uc704",S:"\uc2dc /\ub3c4",ST:"\uc2dc /\ub3c4",L:"\uc18c\uc7ac\uc9c0",C:"\uad6d\uac00",SN:"\uc131",GN:"\uc774\ub984"};
1066
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("\uc99d\uba85\uc11c",c.X509Certificate.length+" \ubc14\uc774\ud2b8<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>\ub2e4\uc6b4\ub85c\ub4dc</a>");a+=addHtmlValue("\uc2e0\ub8b0\ud560 \uc218\uc788\ub294 \ub8e8\ud2b8",c.TrustedRootCertficate?"\uc608":"\uc544\ub2c8");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("\uac1c\uc778 \ud0a4","\uc120\ubb3c"));a+='<br><div style="border-bottom:1px solid gray"><i>\uc778\uc99d\uc11c \uc8fc\uccb4</i></div><br>';
1067
+for(var d in c.XSubject)c.XSubject[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>\ubc1c\uae09\uc790 \uc778\uc99d\uc11c</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"\uc99d\uba85\uc11c-"+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",
1068
+{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}
1069
+var xxDragDropCertFiles=null;
1070
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>\uc778\uc99d\uc11c \ud30c\uc77c</div></div>")+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>\uc2e0\ub8b0\ud560 \uc218\uc788\ub294 \ub8e8\ud2b8 \uc778\uc99d\uc11c</option><option value=0>\uccb4\uc778 \uc778\uc99d\uc11c</option></select><div style=padding-top:4px>\uc99d\uba85\uc11c \uc885\ub958</div></div>",
1071
+setDialogMode(11,"\uc778\uc99d\uc11c \ucd94\uac00",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1072
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1073
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>\uc778\uc99d\uc11c \ube44\ubc00\ubc88\ud638</div></div>",
1074
+b+='<br><div style="border-bottom:1px solid gray"><i>\uc778\ud154 ® AMT \uc778\uc99d\uc11c</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>\uacf5\ud1b5 \uc774\ub984</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>\uc870\uc9c1</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>\uc2dc /\ub3c4</div></div>",
1075
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>\uad6d\uac00</div></div>",b+='<div>\uc778\uc99d\uc11c \uc0ac\uc6a9\ubc95</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',b+="<li><label><input type=checkbox id=d11_cu4 checked>TLS \uc11c\ubc84 (HTTPS)</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>TLS \ud074\ub77c\uc774\uc5b8\ud2b8 (HTTPS)</label></li>",
1076
+b+="<li><label><input type=checkbox id=d11_cu6>\uc774\uba54\uc77c \ubcf4\ud638</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>\ucf54\ub4dc \uc11c\uba85</label></li>",b+="<li><label><input type=checkbox id=d11_cu8>\ud0c0\uc784 \uc2a4\ud0ec\ud504</label></li>",b+="</ul>",setDialogMode(11,"\ubc1c\uae09 \uc99d\uba85\uc11c",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1077
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1078
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("\ubc1c\uae09 \uc99d\uba85\uc11c","\uc778\uc99d\uc11c\ub97c \ud574\ub3c5 / \ub514\ucf54\ub529 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.")}
1079
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1080
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("\ubc1c\uae09 \uc99d\uba85\uc11c","\ud0a4 \ud398\uc5b4\ub97c \uc0dd\uc131\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc0c1\ud0dc: "+d):0!=a.Body.ReturnValue?messagebox("\ubc1c\uae09 \uc99d\uba85\uc11c","\ud0a4 \ud398\uc5b4\ub97c \uc0dd\uc131\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4."+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1081
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("\ubc1c\uae09 \uc99d\uba85\uc11c","\ud0a4 \ud398\uc5b4\ub97c \uc0dd\uc131\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc0c1\ud0dc: "+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"\uc2e0\ub8b0\ud560 \uc218\uc5c6\ub294 \ub8e8\ud2b8 \uc778\uc99d\uc11c"};if(null!=xxCaPrivateKey&&
1082
+xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("\ubc1c\uae09 \uc99d\uba85\uc11c","\uc778\uc99d\uc11c\uc5d0 \uc11c\uba85 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4."):
1083
+(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,q.length-25),GenerateKeyPairResponse4))}}function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("\ubc1c\uae09 \uc99d\uba85\uc11c","\ud0a4 \ud398\uc5b4\ub97c \uc0dd\uc131\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc0c1\ud0dc: "+d):PullCertificates()}
1084
+function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("\uc778\uc99d\uc11c \ucd94\uac00","\uc778\uc99d\uc11c\ub97c \ucd94\uac00 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}function certificateRemoved(b,c,a,d){200!=d?messagebox("\uc778\uc99d\uc11c \uc81c\uac70","\uc778\uc99d\uc11c\ub97c \uc81c\uac70 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958"+d):PullCertificates()}
1085
+function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1086
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>\uc778\uc99d\uc11c \uc5c6\uc74c, TLS \ube44\ud65c\uc131\ud654</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>\uc99d\uba85\uc11c</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
1087
+b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="\uc6d0\uaca9\uc73c\ub85c \uc5f0\uacb0\ud560 \uc218\uc788\ub294 \uc27c\ud45c\ub85c \uad6c\ubd84 \ub41c \uc778\uc99d\uc11c \uacf5\ud1b5 \uc774\ub984 \ubaa9\ub85d\uc785\ub2c8\ub2e4."><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="\uc774\ub984 1, \uc774\ub984 2"><div style=padding-top:4px>\uc6d0\uaca9 CN</div></div>';
1088
+setDialogMode(11,"TLS \uc124\uc815",3,showSetTlsSecurityDlgOk,b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);getSelectElement("tlsremote").value=(1==xxTlsSettings[c].MutualAuthentication?
1089
+2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1090
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1091
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1092
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1093
+b,c,d){200!=d?messagebox("","\uc2dc\uac04\uc744 \uc124\uc815\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc0c1\ud0dc ="+d):0!=c.Body.ReturnValue?messagebox("","\uc2dc\uac04\uc744 \uc124\uc815\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc624\ub958 : "+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",
1094
+a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,0,1,a[1]);statusbox("TLS \uc124\uc815","\uc0c8\ub85c\uc6b4 \ubcf4\uc548 \uc124\uc815 \uc801\uc6a9 \uc911 ...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1095
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","TLS \ubcf4\uc548\uc744 \uc124\uc815\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc0c1\ud0dc ="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1096
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","TLS \ubcf4\uc548\uc744 \uc124\uc815\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc0c1\ud0dc ="+d):0!=a.Body.ReturnValue?messagebox("","TLS \ubcf4\uc548\uc744 \uc124\uc815\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc624\ub958 : "+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1097
+function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1098
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1099
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1100
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1101
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}
1102
+var watchdogEnabledStates="\uc54c \uc218 \uc5c6\ub294;\ub2e4\ub978;\uac00\ub2a5;\ube44\ud65c\uc131\ud654;\uc885\ub8cc;\ud574\ub2f9 \uc0ac\ud56d \uc5c6\uc74c;\ud65c\uc131\ud654\ub418\uc5c8\uc9c0\ub9cc \uc624\ud504\ub77c\uc778;\ud14c\uc2a4\ud2b8 \uc911;\uc5f0\uae30 \ub428;Quiesce;\uc2dc\uc791".split(";"),watchdogMonitoredEntity="\uc54c \uc218 \uc5c6\ub294;\ub2e4\ub978;\uc6b4\uc601 \uccb4\uc81c;\uc6b4\uc601 \uccb4\uc81c \ubd80\ud305 \ud504\ub85c\uc138\uc2a4;\uc6b4\uc601 \uccb4\uc81c \uc885\ub8cc \ud504\ub85c\uc138\uc2a4;\ud38c\uc6e8\uc5b4 \ubd80\ud305 \ud504\ub85c\uc138\uc2a4;BIOS \ubd80\ud305 \ud504\ub85c\uc138\uc2a4;\uc2e0\uccad;\uc11c\ube44\uc2a4 \ud504\ub85c\uc138\uc11c".split(";");
1103
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("\ucd5c\ub300 \uc6cc\uce58 \ub3c5",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" \uac10\uc2dc\uacac");b+=TableEntry("\ucd5c\ub300 \ucd1d \uc561\uc158",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" \ud589\uc704");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>\uc778\ud154 ® AMT \uc5d0\uc774\uc804\ud2b8 \uc874\uc7ac \uac10\uc2dc \uae30\ub2a5\uc744 \uad00\ub9ac\ud558\uc2ed\uc2dc\uc624.<br><br>";
1104
+if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>\uc0c1\ub2f4\uc6d0 \uc874\uc7ac \uac10\uc2dc\uae30\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));
1105
+b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="\uc561\uc158 \ucd94\uac00 ..." onclick=addWatchdogAction(event,'+c+")>";a.transitions&&(b+='<input type=button style=float:right value="\uc791\uc5c5 \uc0ad\uc81c ..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+
1106
+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+=": \uae30\ub85d \ud560 \uc774\ubca4\ud2b8")}""!=d&&(b+="<div style=padding:12px>"+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("\uc6cc\uce58 \ub3c5 \ucd94\uac00 ...","AddWatchdog()"));b+="<br>";QH(60,b)}}
1107
+function getWatchdogTransitionStr(b){if(31==b)return"\uc5b4\ub5a4 \uc8fc";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1108
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("\uae30\uc220",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("\ubaa8\ub2c8\ud130\ub9c1 \ub300\uc0c1",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("\ud604\uc7ac \uc0c1\ud0dc",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("\ud65c\uc131\ud654 \ub41c \uc0c1\ud0dc",watchdogEnabledStates[b.EnabledState]);
1109
+c+=addHtmlValue("\uc2dc\uc791 \uac04\uaca9",b.StartupInterval+" \ucd08");c+=addHtmlValue("\ud0c0\uc784 \uc544\uc6c3 \uac04\uaca9",b.TimeoutInterval+" \ucd08");setDialogMode(11,format("\uc6cc\uce58 \ub3c5 {0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1110
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\uc774\ub984</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="\uc784\uc758\uc758 DeviceID \uc0dd\uc131">'+addLink("\uc7a5\uce58 \uc544\uc774\ub514","GenerateWatchdogGuid()")+"</div></div>");
1111
+b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\uc2dc\uc791 (\ucd08)</div></div>";b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\ud0c0\uc784 \uc544\uc6c3 (\ucd08)</div></div>";setDialogMode(11,"\uc6cc\uce58 \ub3c5 \ucd94\uac00",3,AddWatchdogOk,b);
1112
+AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1113
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1114
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("\uc9c0\ud0a4\ub294 \uac1c","\uc6cc\uce58 \ub3c5\uc744 \ucd94\uac00 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958 \ubc88\ud638"+d):PullWatchdog()}
1115
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>\uc5d0\uc11c<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>\uc5d0<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"\uac10\uc2dc \uc870\uce58 \ucd94\uac00",
1116
+3,addWatchdogActionOk,d+"</table><br>\uc870\uce58 \uc218\ud589<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>\uc774\ubca4\ud2b8 \ub85c\uadf8\uc5d0 \uc4f0\uae30<br />",a);addWatchdogActionUpdate();haltEvent(b)}function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1117
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1118
+function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("\uc6cc\uce58 \ub3c5 \uc561\uc158","\uac10\uc2dc \uc870\uce58\ub97c \ucd94\uac00 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958 #"+d):PullWatchdog()}
1119
+function deleteWatchdogActions(b,c){setDialogMode(11,"\uac10\uc2dc \uc870\uce58 \uc0ad\uc81c",3,deleteWatchdogActionsOk,"\uc774 \uc6cc\uce58 \ub3c5\uc5d0 \ub300\ud55c \ubaa8\ub4e0 \uc791\uc5c5\uc744 \uc0ad\uc81c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?",xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1120
+function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("\uc6cc\uce58 \ub3c5 \uc561\uc158","\uac10\uc2dc \uc870\uce58\ub97c \uc81c\uac70 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958 #"+d):PullWatchdog()}
1121
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"\ubaa8\ub4e0 IP \ud328\ud0b7",2054:"\ubaa8\ub4e0 ARP \ud328\ud0b7"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"\ud5c8\uc6a9, \uacc4\uc0b0",1:"\ub4dc\ub86d, \uce74\uc6b4\ud2b8",2:"\uc18d\ub3c4 \uc81c\ud55c",3:"\ud5c8\uc6a9\ud558\ub2e4",4:"\ud558\ub77d"},
1122
+xxSystemDefenceFilters={HdrProtocolID:1,HdrDestAddress:2,HdrDestMask:2,HdrSrcAddress:2,HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,TCPFlagsOn:3,TCPFlagsOff:3};function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}
1123
+function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1124
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1125
+a}b+=TableStart();c="<i>\uc5c6\uc74c</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("\uae30\ubcf8 \uc720\uc120 \uc815\ucc45",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d+=" \ud328\ud0b7",b+=TableEntry((0==c?"\uc5f4\uad11\ud55c":"\ubb34\uc120 \uc804\ud654")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>\uc778\ud154 ® AMT \uc2dc\uc2a4\ud15c \ubc29\uc5b4 \uc815\ucc45\uc744 \uad00\ub9ac\ud569\ub2c8\ub2e4.<br><br>";
1126
+if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+="<div style=padding-left:15px><i>\uc2dc\uc2a4\ud15c \ubc29\uc5b4 \uc815\ucc45\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+
1127
+c+")><div style=padding-top:3px><b>"+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>\uc778\ud154 ® AMT \uc2dc\uc2a4\ud15c \ubc29\uc5b4 \ud544\ud130\ub97c \uad00\ub9ac\ud569\ub2c8\ub2e4.<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>\uc2dc\uc2a4\ud15c \ubc29\uc5b4 \ud544\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=
1128
+xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||(d="\ubaa8\ub4e0 \uc774\ub354\ub137 \ud504\ub85c\ud1a0\ucf5c"+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" ...\uc5d0\uc11c"+a.FilterProfileData+" \ud328\ud0b7 / \ucd08"),1==a.ActionEventOnMatch&&(d+=", \uacbd\uae30 \uc911 \uc774\ubca4\ud2b8"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?
1129
+"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=xxSystemDefense.AMT_IPHeadersFilter.responses[c];(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="\ubaa8\ub4e0 \uc774\ub354\ub137 \ud504\ub85c\ud1a0\ucf5c"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==a.FilterProfile&&(d+=" ...\uc5d0\uc11c"+a.FilterProfileData+" \ud328\ud0b7 / \ucd08");1==a.ActionEventOnMatch&&(d+=", \uacbd\uae30 \uc911 \uc774\ubca4\ud2b8");
1130
+var q=0;for(e in xxSystemDefenceFilters)a[e]&&q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("\ud544\ud130 \ucd94\uac00 ...","AddDefenseFilter()")+AddButton("\uc815\ucc45 \ucd94\uac00 ...","AddDefensePolicy()"));QH(59,b);
1131
+null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1132
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1133
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1134
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1135
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>\uc5c6\uc74c";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1136
+"\uae30\ubcf8 \uc2dc\uc2a4\ud15c \ubc29\uc5b4 \uc815\ucc45",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>\uae30\ubcf8 \uc815\ucc45</div></div>",b)}}
1137
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
1138
+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1139
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">\uc778\ud154 AMT \uc774\ub354\ub137 \ud3ec\ud2b8 '+
1140
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1141
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("\uae30\ubcf8 \uc2dc\uc2a4\ud15c \ubc29\uc5b4 \uc815\ucc45","\uc815\ucc45, \uc624\ub958\ub97c \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4"+d):PullSystemDefense()}
1142
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\uc774\ub984</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\uc774\ub354\ub137 IP \ud328\ud0b7 \ud544\ud130<option value=1>\uc774\ub354\ub137 ARP \ud328\ud0b7 \ud544\ud130<option value=2>IPv4 \ud328\ud0b7 \ud544\ud130<option value=3>IPv6 \ud328\ud0b7 \ud544\ud130</select><div style=padding-top:4px>\uc720\ud615</div></div>";b+=
1143
+'<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="\uc120\ud0dd\uc801 \uaddc\uce59" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\uc77c\uce58 \uaddc\uce59</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\uc544\uc6c3 \ubc14\uc6b4\ub4dc / \uc804\uc1a1<option value=1>\uc778\ubc14\uc6b4\ub4dc / \uc218\uc2e0</select><div style=padding-top:4px>\ubc29\ud5a5</div></div>";
1144
+b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\ud5c8\uc6a9, \uacc4\uc0b0<option value=1>\ub4dc\ub86d, \uce74\uc6b4\ud2b8<option value=2>\uc18d\ub3c4 \uc81c\ud55c<option value=3>\ud5c8\uc6a9\ud558\ub2e4<option value=4>\ud558\ub77d</select><div style=padding-top:4px>\ub3d9\uc791</div></div>";b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\ud328\ud0b7 / \ucd08</div></div>";
1145
+b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>\uc544\ubb34\uac83\ub3c4\ud558\uc9c0 \ub9c8\uc138\uc694<option value=1>\uacbd\uae30 \uc911 \uc774\ubca4\ud2b8</select><div style=padding-top:4px>\uc774\ubca4\ud2b8 \ub85c\uadf8</div></div>";setDialogMode(11,"\uc2dc\uc2a4\ud15c \ubc29\uc5b4 \ud544\ud130 \ucd94\uac00",3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1146
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1147
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="HDR"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1148
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1149
+function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("\uc2dc\uc2a4\ud15c \ubc29\uc5b4 \ud544\ud130 \ucd94\uac00","\ud544\ud130\ub97c \ucd94\uac00 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958 #"+d):PullSystemDefense()}
1150
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="\uc774\ub354\ub137 \ud2b8\ub798\ud53d",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="\ubaa8\ub4e0 \uc774\ub354\ub137 \ud504\ub85c\ud1a0\ucf5c"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="IP \ud2b8\ub798\ud53d",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="\ubaa8\ub4e0 IP \ud504\ub85c\ud1a0\ucf5c"+d.HdrIPVersion));
1151
+var p;p=""+addHtmlValue("\uc774\ub984",EscapeHtml(d.Name));p+=addHtmlValue("\uc720\ud615",e);p+=addHtmlValue("\uc77c\uce58\ud558\ub294 \ud2b8\ub798\ud53d",a);p+=addHtmlValue("\ubc29\ud5a5",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("\ud544\ud130"+
1152
+a,e));p+=addHtmlValue("\uacbd\uae30 \uc911 \uc774\ubca4\ud2b8",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,"\uc774\ub354\ub137 \ud544\ud130 #"+d.InstanceID,5,showFilterDetailsOk,p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}
1153
+function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("\ud544\ud130 \uc81c\uac70","\ud544\ud130\ub97c \uc81c\uac70 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9 \uc911\uc774 \uc544\ub2cc\uc9c0 \ud655\uc778\ud558\uc2ed\uc2dc\uc624."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1154
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>\uc774\ub984</div></div><div style=height:26px;margin-top:4px><select id=policytx title="\uc544\uc6c3 \ubc14\uc6b4\ub4dc \ud2b8\ub798\ud53d\uc5d0 \ub300\ud55c \uae30\ubcf8 \uc870\uce58" style=float:right;width:133px><option value=0>Allow<option value=1>\ud558\ub77d<option value=2>\ud5c8\uc6a9, \uce74\uc6b4\ud2b8<option value=3>\ub4dc\ub78d, \uce74\uc6b4\ud2b8<option value=4>\ud5c8\uc6a9, \uce74\uc6b4\ud2b8, \uc774\ubca4\ud2b8<option value=5>\ub4dc\ub78d, \uce74\uc6b4\ud2b8, \uc774\ubca4\ud2b8</select><select id=policyrx style=float:right;width:133px title="\uc778\ubc14\uc6b4\ub4dc \ud2b8\ub798\ud53d\uc5d0 \ub300\ud55c \uae30\ubcf8 \uc870\uce58"><option value=0>\ud5c8\uc6a9\ud558\ub2e4<option value=1>\ud558\ub77d<option value=2>\ud5c8\uc6a9, \uce74\uc6b4\ud2b8<option value=3>\ub4dc\ub78d, \uce74\uc6b4\ud2b8<option value=4>\ud5c8\uc6a9, \uce74\uc6b4\ud2b8, \uc774\ubca4\ud2b8<option value=5>\ub4dc\ub78d, \uce74\uc6b4\ud2b8, \uc774\ubca4\ud2b8</select><div style=padding-top:4px>\uae30\ubcf8 TX / RX</div></div>';b+=
1155
+"<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1156
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>\ud544\ud130 \ucd94\uac00</div></div>"}setDialogMode(11,"\uc2dc\uc2a4\ud15c \ubc29\uc5b4 \uc815\ucc45 \ucd94\uac00",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}
1157
+function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1158
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>\uc774 \uc815\ucc45\uc5d0\ub294 \ud544\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("\uc5c6\uc560\ub2e4","removeFilterButton("+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+
1159
+GetFilterById(xxAddDefensePolicyFilters[c]).Name+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1160
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1161
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("\uc2dc\uc2a4\ud15c \ubc29\uc5b4 \uc815\ucc45 \ucd94\uac00","\uc815\ucc45\uc744 \ucd94\uac00 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958 #"+d):PullSystemDefense()}
1162
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("\uc774\ub984",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("\uc0c1\uc704",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"\ud558\ub77d":"\ud5c8\uc6a9\ud558\ub2e4";1==c.TxDefaultCount&&(d+="\uce74\uc6b4\ud2b8");1==c.TxDefaultMatchEvent&&(d+=", \uc774\ubca4\ud2b8");a+=addHtmlValue("\uae30\ubcf8 TX \uc561\uc158",d);d=1==c.RxDefaultDrop?"Drop":"Allow";1==
1163
+c.RxDefaultCount&&(d+=", Count");1==c.RxDefaultMatchEvent&&(d+=", Event");a+=addHtmlValue("\uae30\ubcf8 RX \uc561\uc158",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=addHtmlValue("\ud544\ud130 #"+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("\uc218\ub2e8 #",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}
1164
+function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("\uc815\ucc45 \uc81c\uac70","\uc815\ucc45\uc744 \uc81c\uac70 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9 \uc911\uc774 \uc544\ub2cc\uc9c0 \ud655\uc778\ud558\uc2ed\uc2dc\uc624."):PullSystemDefense()}var xxWireless;function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}
1165
+function wifiRefresh(){xxdialogMode||PullWireless()}
1166
+var xxWifiState={3:"\ube44\ud65c\uc131\ud654",32768:"S0\uc5d0\uc11c \ud65c\uc131\ud654",32769:"S0, Sx / AC\uc5d0\uc11c \ud65c\uc131\ud654"},xxRadioState={2:"\uc5f0\uacb0\ub428",3:"\ub5a8\uc5b4\uc838\uc11c",6:"\ucf1c\uae30, \uc5f0\uacb0 \ub04a\uae30"},xxWifiAuthenticationMethod={1:"\ub2e4\ub978",2:"\uc5f4\ub2e4",3:"\uacf5\uc6a9 \uc5f4\uc1e0",4:"WPA PSK",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"\ub2e4\ub978",2:"WEP",3:"TKIP-RC4",4:"CCMP-AES",5:"\uc5c6\uc74c"};
1167
+function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1168
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>\ubb34\uc120 \ud504\ub85c\ud30c\uc77c</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>\uc778\ud154 ® AMT\uac00 \ub124\ud2b8\uc6cc\ud06c \uc5f0\uacb0\uc5d0 \uc0ac\uc6a9\ud560 \ubb34\uc120 \ud504\ub85c\ud30c\uc77c.<br><br>";for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&
1169
+d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("\uc5c6\uc560\ub2e4",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>\ubb34\uc120 \ud504\ub85c\ud30c\uc77c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4</i><br>");e+=
1170
+"<br><td class=r2>";e=xxAccountAdminName?e+TableEnd(AddButton("\uc0c8 \ud504\ub85c\ud544","showWifiNewProfile()")):e+TableEnd("");QH(22,e+"<br>")}}}function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"\ubb34\uc120 \uc0c1\ud0dc",3,wifiStateDlg,b)}}
1171
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1172
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("\ud504\ub85c\ud544 \uc774\ub984",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("\uc785\uc99d",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("\uc554\ud638\ud654",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("\uc6b0\uc120 \uc21c\uc704",b.Priority);messagebox("\ubb34\uc120 \ud504\ub85c\ud30c\uc77c",
1173
+c+"</div>")}}function wifiRemoveButton(b){xxdialogMode||(QH(66,format('\ubb34\uc120 \ud504\ub85c\ud544 "{0}"\uc744 (\ub97c) \uc81c\uac70 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"\ubb34\uc120 \ud504\ub85c\ud30c\uc77c",3,function(){removeWifiButtonEx(b)}))}
1174
+function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1175
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"\ubb34\uc120 \ud504\ub85c\ud30c\uc77c \ucd94\uac00",3,function(){addWifiProfile()});updateWifiDialog()}}
1176
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1177
+PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1178
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1179
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1180
+var DMTFCPUStatus="\uc54c \uc218 \uc5c6\ub294;\uac00\ub2a5;\uc0ac\uc6a9\uc790\uac00 \ube44\ud65c\uc131\ud654;BIOS\uc5d0 \uc758\ud574 \ube44\ud65c\uc131\ud654 \ub428 (POST \uc624\ub958);\uac8c\uc73c\ub978;\ub2e4\ub978".split(";"),DMTFMemType="\uc54c \uc218 \uc5c6\ub294;\ub2e4\ub978;\uc74c\uc8fc;\ub3d9\uae30\uc2dd DRAM;\uce90\uc2dc DRAM;\uc5d0\ub3c4;EDRAM;VRAM;\uc2a4\ub7a8;\ub7a8;ROM;\ud50c\ub798\uc2dc;EEPROM;FEPROM;EPROM;CDRAM;3DRAM;SDRAM;SGRAM;RDRAM;DDR;DDR-2;\ube0c\ub78c;FB-DIMM;DDR3;FBD2;DDR4;LPDDR;LPDDR2;LPDDR3;LPDDR4".split(";"),
1181
+DMTFMemFormFactor=";\ub2e4\ub978;\uc54c \uc218 \uc5c6\ub294;SIMM;\ud55c\ubaa8\uae08;\uce69;\ub2f4\uadf8\ub2e4;\uc9c0\ud37c;\ub3c5\uc810 \uce74\ub4dc;DIMM;TSOP;\uce69\uc758 \ud589;\ub9bc;SODIMM;\uc2a4\ub9bc;FB-DIM".split(";"),DMTFProcFamilly={191:"\uc778\ud154 ® \ucf54\uc5b4 ™ 2 \ub4c0\uc624 \ud504\ub85c\uc138\uc11c",192:"\uc778\ud154 ® \ucf54\uc5b4 ™ 2 \uc194\ub85c \ud504\ub85c\uc138\uc11c",193:"\uc778\ud154 ® \ucf54\uc5b4 ™ 2 \uc775\uc2a4\ud2b8\ub9bc \ud504\ub85c\uc138\uc11c",
1182
+194:"\uc778\ud154 ® \ucf54\uc5b4 ™ 2 \ucffc\ub4dc \ud504\ub85c\uc138\uc11c",195:"\uc778\ud154 ® \ucf54\uc5b4 ™ 2 \uc775\uc2a4\ud2b8\ub9bc \ubaa8\ubc14\uc77c \ud504\ub85c\uc138\uc11c",196:"\uc778\ud154 ® \ucf54\uc5b4 ™ 2 \ub4c0\uc624 \ubaa8\ubc14\uc77c \ud504\ub85c\uc138\uc11c",197:"\uc778\ud154 ® \ucf54\uc5b4 ™ 2 \uc194\ub85c \ubaa8\ubc14\uc77c \ud504\ub85c\uc138\uc11c",198:"\uc778\ud154 ® \ucf54\uc5b4 ™ i7 \ud504\ub85c\uc138\uc11c",199:"\ub4c0\uc5bc \ucf54\uc5b4 \uc778\ud154 ® \uc140\ub7ec\ub860 ® \ud504\ub85c\uc138\uc11c"},
1183
+HardwareInventory;
1184
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("\uc800\uc7a5...","SaveHardwareLog()")+" \ud558\ub4dc\uc6e8\uc5b4 \uc815\ubcf4\ub294 \uc2dc\uc2a4\ud15c \ubd80\ud305\uc2dc \uc218\uc9d1\ub429\ub2c8\ub2e4.");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+
1185
+"<br><h2>\ud50c\ub7ab\ud3fc</h2>"+FullTable({"\ucef4\ud4e8\ud130 \ubaa8\ub378":c.Model,"\uc81c\uc870\uc0ac":c.Manufacturer,"\ubc84\uc804":c.Version,"\uc77c\ub828 \ubc88\ud638":c.SerialNumber,"\uc2dc\uc2a4\ud15c ID":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>\ubca0\uc774\uc2a4 \ubcf4\ub4dc</h2>";b+=FullTable({"\uc81c\uc870\uc0ac":d.Manufacturer,"\uc0c1\ud488\uba85":d.Model,"\ubc84\uc804":d.Version,"\uc77c\ub828 \ubc88\ud638":d.SerialNumber,"\uc790\uc0b0 \ud0dc\uadf8":d.Tag,
1186
+"\uad50\uccb4 \uac00\ub2a5?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({"\uacf5\uae09 \uc5c5\uccb4":a.CIM_BIOSElement.response.Manufacturer,"\ubc84\uc804":q,"\ucd9c\uc2dc\uc77c":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>\ud504\ub85c\uc138\uc11c "+(parseInt(e)+1)+"</h2>",b+=FullTable({"\uc81c\uc870\uc0ac":trademarks(d.Manufacturer),
1187
+"\uac00\uc871":DMTFProcFamilly[c.Family],"\ubc84\uc804":trademarks(d.Version),"\ucd5c\ub300 \uc18c\ucf13 \uc18d\ub3c4":c.MaxClockSpeed+" MHz","\uc0c1\ud0dc":DMTFCPUStatus[c.CPUStatus]},"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=a.CIM_PhysicalMemory.responses[e],b+="<h2>\uba54\ubaa8\ub9ac \ubaa8\ub4c8 "+(+e+1)+"</h2>",b+=FullTable({"\uc740\ud589 \ub77c\ubca8":c.BankLabel,"\uc81c\uc870\uc0ac":c.Manufacturer,"\uc77c\ub828 \ubc88\ud638":c.SerialNumber,"\ud06c\uae30":parseInt(c.Capacity/1048576)+
1188
+" MB","\ud3fc \ud329\ud130":DMTFMemFormFactor[c.FormFactor],"\uc720\ud615":DMTFMemType[c.MemoryType],"\uc790\uc0b0 \ud0dc\uadf8":c.Tag,"\ubd80\ud488 \ubc88\ud638":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>\uc800\uc7a5 \ub9e4\uccb4 "+(parseInt(e)+1)+"</h2>",b+=FullTable({"\ubaa8\ub378":d.Model,"\uc77c\ub828 \ubc88\ud638":""==d.SerialNumber?"Unknown":d.SerialNumber,"\ud06c\uae30":parseInt(Math.round(1E3*
1189
+c.MaxMediaSize/1048576))+" MB"},"");b+="<br>";QH(18,b);updateSystemStatus()}}function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","\uc778\ud154 AMT \ud558\ub4dc\uc6e8\uc5b4 \uc815\ubcf4",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}
1190
+function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"\uc778\ud154 ® AMT \uc804\uc6d0 \uc815\ucc45",3,showPowerPolicyDlgOk,c)}}
1191
+function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1192
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1193
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1194
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1195
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>\uc774 \ucef4\ud4e8\ud130\uc758 \uc778\ud154 ® AMT \uc0ac\uc6a9\uc790 \uacc4\uc815\uc744 \uad00\ub9ac\ud558\uc2ed\uc2dc\uc624.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?
1196
+1:2);if(showHiddenAccounts||!e){var p="";if(999!=a.AccessPermission){2==q&&(p+="\uc7a5\uc560\uc778,");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a["\uc601\uc5ed"][c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="\uac10\uc0ac,");p=0<=a.Realms.indexOf(3)?p+"\uad00\ub9ac\uc790":1==k?p+"1 \uac1c \uc601\uc5ed":p+(k+" \uc601\uc5ed")}else p+="\uad00\ub9ac\uc790",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?
1197
+"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("\ud3b8\uc9d1\ud558\ub2e4...","changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="\uc228\uaca8\uc9c4 \uacc4\uc815 \uc804\ud658" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+
1198
+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");xxAccountAdminName&&(c+=AddButton("\uc0c8 \uacc4\uc815","newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1199
+function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1200
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"\uacc4\uc815 \ud3b8\uc9d1",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1201
+function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"\uc0c8 \uacc4\uc815",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1202
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("\uacc4\uc815 \uc624\ub958","\uc798\ubabb\ub41c \ub9e4\uac1c \ubcc0\uc218");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&
1203
+a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1204
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">\uad00\ub9ac\uc790</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1205
+function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["\uc9c0\uc5ed \ub9cc","\ub124\ud2b8\uc6cc\ud06c \ub9cc","\ubaa8\ub450 (\ub85c\uceec \ubc0f \ub124\ud2b8\uc6cc\ud06c)"];
1206
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("\uc774\ub984",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("\uc0c1\ud0dc",1==xxAccountEnabledInfo[b].Enabled?"\uac00\ub2a5":"\ube44\ud65c\uc131\ud654"));if(e==xxAccountAdminName)a+=addHtmlValue("\ud5c8\uac00","\uad00\ub9ac\uc790");else{var a=a+addHtmlValue("\ud5c8\uac00",xxUserPermissions[c.AccessPermission]),q=
1207
+"";if(0<=c.Realms.indexOf(3))q="\uad00\ub9ac\uc790",0<=c.Realms.indexOf(20)&&(q+="\uac10\uc0ac");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+=","),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="\uc5c6\uc74c");a+=addHtmlValue("\uc601\uc5ed","")+"<b>"+q+"</b>"}messagebox("\uacc4\uc815"+e,a+"</div>")}}
1208
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("\ube0c\ub77c\uc6b0\uc800",c,browserResponse,null,!0))}
1209
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>(\ube48)":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>\uc624\ub958 #"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1210
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1211
+function onTerminalStateChange(b,c){c4.value=0==c?"\uc787\ub2e4":"\ubd84\ub9ac";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1212
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["UTF8 \ud130\ubbf8\ub110","\ud655\uc7a5 ASCII","\uc778\ud154 ASCII"];
1213
+function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["\uc778\ud154 (F10 = ESC + [OM)","\ub300\uccb4 (F10 = ESC + 0)","VT100 + (F10 = ESC + [OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1214
+function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR + LF",terminal.m.lineFeed="\r\n")}
1215
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="\ucea1\ucc98 \uc911\uc9c0";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),
1216
+b+".txt")}delete terminal.m.capture;c3.value="\ucea1\ucc98 \uc2dc\uc791"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"\ud480",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1217
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1218
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1219
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1220
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1221
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("DataChannel",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1222
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1223
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1224
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1225
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1226
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1227
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1228
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1229
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"\uc787\ub2e4":"\ubd84\ub9ac";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("\uc6d0\uaca9 \ub370\uc2a4\ud06c\ud0d1","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("\uc6d0\uaca9 \ub370\uc2a4\ud06c\ud0d1","The device indicated that this type of connection of not supported."):
1230
+5E4==b.disconnectCode?messagebox("\uc6d0\uaca9 \ub370\uc2a4\ud06c\ud0d1","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1231
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b="\uc18c\ud504\ud2b8 -KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"\uc6d0\uaca9 \ub370\uc2a4\ud06c\ud1b1 \uc124\uc815",3,showDesktopSettingsChanged))}
1232
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1233
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1234
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1235
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1236
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1237
+"8px"),center()))}
1238
+function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"\uc6d0\uaca9 \ud0a4\ubcf4\ub4dc \uc785\ub825",3,showDeskTypeEx,'<div>\ud14d\uc2a4\ud2b8\ub97c \uc785\ub825\ud558\uace0 \ud655\uc778\uc744 \ud074\ub9ad\ud558\uc5ec \ubbf8\uad6d \uc601\uc5b4 \ud0a4\ubcf4\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc6d0\uaca9\uc73c\ub85c \uc785\ub825\ud558\uc2ed\uc2dc\uc624. \uacc4\uc18d\ud558\uae30 \uc804\uc5d0 \uc6d0\uaca9 \ucee4\uc11c\ub97c \uc62c\ubc14\ub978 \uc704\uce58\uc5d0 \ub193\uc73c\uc2ed\uc2dc\uc624.<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1239
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1240
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1241
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1242
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1243
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1244
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1245
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1246
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1247
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1248
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1249
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1250
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>\ubfcc\ub9ac</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+'">'+
1251
+EscapeHtml(r.substring(0,70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1252
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1253
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1254
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1255
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1256
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="\ubaa8\ub450 \uc120\ud0dd",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||
1257
+0==d));QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"\uc5c6\uc74c\uc744 \uc120\ud0dd\ud558\uc2ed\uc2dc\uc624":"\ubaa8\ub450 \uc120\ud0dd";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));
1258
+QE("p24PasteButton",(0<p24filetreelocation.length||0==d)&&null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}
1259
+function p24createfolder(){setDialogMode(11,"\uc0c8 \ud3f4\ub354",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}
1260
+function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"\uc9c0\uc6b0\ub2e4",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1261
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"\uc774\ub984 \ubc14\uafb8\uae30",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1262
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1263
+function p24uploadFile(){setDialogMode(11,"\ud30c\uc77c \uc5c5\ub85c\ub4dc",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;
1264
+function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1265
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"\ud480",3,p24pasteFileEx,b)}
1266
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1267
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1268
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1269
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24filetable"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1270
+function getFileSizeStr(b){return 1==b?"1 \ubc14\uc774\ud2b8":format("{0} \ubc14\uc774\ud2b8",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}
1271
+var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1272
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"\ud30c\uc77c \ub2e4\uc6b4\ub85c\ub4dc",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+a+" />"))}
1273
+function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1274
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1275
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"\ud30c\uc77c \uc5c5\ub85c\ub4dc",10,p24uploadFileCancel,"<div id=p24dfileName>\uc124\uc815...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1276
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1277
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1278
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1279
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1280
+function iderStart(b){if(!xxdialogMode){b="<div>\uc778\ud154 ® AMT \ucef4\ud4e8\ud130\uc5d0 \ub514\uc2a4\ud06c \uc774\ubbf8\uc9c0 \ub9c8\uc6b4\ud2b8-\uc2e4\ud5d8\uc6a9.</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+NoBreak("\ud50c\ub85c\ud53c (.img)")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+NoBreak("CDROM (.iso)")+"</div></div>";
1281
+setDialogMode(11,"\uc2a4\ud1a0\ub9ac\uc9c0 \ub9ac\ub514\ub809\uc158",3,iderStart2,b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>\ub2e4\uc74c \ubd80\ud305\uc2dc<option value=1>\uc6b0\uc544\ud55c<option value=2>\uc989\uc2dc</select><div>\uc138\uc158 \uc2dc\uc791</div></div>");b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=b.substring(1,b.length-1))}}
1282
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("\uc2a4\ud1a0\ub9ac\uc9c0 \ub9ac\ub514\ub809\uc158 \uc624\ub958","\ud558\ub098 \uc774\uc0c1\uc758 \ub514\uc2a4\ud06c \uc774\ubbf8\uc9c0 \ud30c\uc77c\uc744 \uc120\ud0dd\ud574\uc57c\ud569\ub2c8\ub2e4.");else if(1==Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("\uc2a4\ud1a0\ub9ac\uc9c0 \ub9ac\ub514\ub809\uc158 \uc624\ub958","\uc798\ubabb\ub41c .img \ud30c\uc77c\uc785\ub2c8\ub2e4.");
1283
+else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%2048)messagebox("\uc2a4\ud1a0\ub9ac\uc9c0 \ub9ac\ub514\ub809\uc158 \uc624\ub958","\uc798\ubabb\ub41c .iso \ud30c\uc77c\uc785\ub2c8\ub2e4.");else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,Q("iderStartType").value)}}
1284
+function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1285
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1286
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"\uc12c\uae30\ub294 \uc0ac\ub78c":"")+"IDE-R \uc138\uc158 </ b>, \uc5f0\uacb0\ub428,"+ider.m.bytesFromAmt+" \uc5d0,"+ider.m.bytesToAmt+" \ubc16.")}var heatMapWidth=600,heatMapDividor={};
1287
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CDROM </ b>\uc5d0\uc11c \ube14\ub85d\uc740 {0} \ubc14\uc774\ud2b8\uc785\ub2c8\ub2e4.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b> \ud50c\ub85c\ud53c </ b>, \ube14\ub85d\uc740 {0} \ubc14\uc774\ud2b8\uc785\ub2c8\ub2e4.",
1288
+512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=6*(Math.floor(a/(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1289
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"\uc2a4\ud1a0\ub9ac\uc9c0 \ub9ac\ub514\ub809\uc158",a?a:3,onIderDialogPromptOk,c.html)}
1290
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1291
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"\ube44\ud65c\uc131\ud654",32769:"BIOS \ud65c\uc131\ud654",32770:"OS \uc778 \uc5d0\uc774\ube14",32771:"BIOS \ubc0f OS \ud65c\uc131\ud654"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1292
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1293
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1294
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1295
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1296
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="\ube44\ud65c\uc131\ud654",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="\uc0ac\uc6a9,"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("\ud658\uacbd \uac10\uc9c0",addLink(c,"editEnvironmentDetection()"));
1297
+b+=TableEntry("\uc0ac\uc6a9\uc790 \uc2dc\uc791 \uc635\uc158",addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>\uc5c6\uc74c</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("\uc0ac\uc6a9\uc790 \uc2dc\uc791 \uc5f0\uacb0",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));
1298
+c="<i>\uc5c6\uc74c</i>";if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("\uacbd\uace0 \uc2dc\uc791 \uc5f0\uacb0",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>\uc5c6\uc74c</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");
1299
+var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName","\uc8fc\uae30\uc801");if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format("{0} \ucd08\ub9c8\ub2e4",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("\uc8fc\uae30\uc801 \uc5f0\uacb0",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>\uc778\ud154 ® AMT \uc6d0\uaca9 \uad00\ub9ac \uc11c\ubc84\ub97c \uad00\ub9ac\ud569\ub2c8\ub2e4.<br><br>";
1300
+if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>\uc6d0\uaca9 \uc11c\ubc84\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.</i></div><br>";else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>\uc5f0\uacb0 \uad00\ub9ac\uc5d0 \uc0ac\uc6a9\ub418\ub294 HTTP \ud504\ub85d\uc2dc\ub97c \uad00\ub9ac\ud569\ub2c8\ub2e4.<br><br>",
1301
+c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,0==c.length)b+="<div style=padding-left:15px><br><i>\ud504\ub85d\uc2dc\uac00 \uad6c\uc131\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4.</i></div><br>";else for(d in c)b+="<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("\uc11c\ubc84 \ucd94\uac00...","AddRemoteAccessServer()"),
1302
+a&&(d+=AddButton("\ud504\ub85d\uc2dc \ucd94\uac00 ...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+d);QH(58,b)}}var xxEditMpsPolicyType;
1303
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="\uc2dc\uc791\ub41c \uc0ac\uc6a9\uc790");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(\uc5c6\uc74c)",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?
1304
+" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>\uae30\ubcf8 \uc11c\ubc84</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA-\uc678\ubd80<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA-\ub0b4\ubd80</select><div>\uae30\ubcf8 MPS \uc720\ud615</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";
1305
+c+="<option value=-1>(\uc5c6\uc74c)";for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>\ubcf4\uc870 \uc11c\ubc84</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA-\uc678\ubd80<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA-\ub0b4\ubd80</select><div>\ubcf4\uc870 MPS \uc720\ud615</div></div>")}e=
1306
+0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>\ud130\ub110 \uc218\uba85 (\ucd08)</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">\uc8fc\uae30\uc801, \uc2dc\uac04 \uac04\uaca9<option value=1"+
1307
+(1==a?" selected":"")+">\ud558\ub8e8\uc5d0 \ud55c \ubc88 \uc2dc\uac04",c+="</select><div>\ud2b8\ub9ac\uac70 \ud0c0\uc785</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("{0} \uc5f0\uacb0",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1308
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1309
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"\ud2b8\ub9ac\uac70 \uac04\uaca9 (\ucd08)":"\uc2dc\uac04 (HH : MM)"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1310
+function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1311
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1312
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1313
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1314
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="\uc778\ud2b8\ub77c\ub137 \ub3c4\uba54\uc778 \uc811\ubbf8\uc0ac\ub97c \ucd5c\ub300 5 \uac1c\uae4c\uc9c0 \uc785\ub825\ud558\uc2ed\uc2dc\uc624. \ucef4\ud4e8\ud130\uac00\uc774 \ub3c4\uba54\uc778 \uc678\ubd80\uc5d0 \uc788\uc73c\uba74 \uc778\ud154 ® AMT \ub85c\uceec \ud3ec\ud2b8\uac00 \ub2eb\ud788\uace0 \uc6d0\uaca9 \uc11c\ubc84 \uc5f0\uacb0\uc774 \ud65c\uc131\ud654\ub429\ub2c8\ub2e4.<br><br>");
1315
+0==editEnvironmentDetectionTmp.length&&(c+="<i>\uc778\ud2b8\ub77c\ub137 \ub3c4\uba54\uc778\uc774 \uc5c6\uc73c\uba70 \ud658\uacbd \ud0d0\uc9c0\uac00 \ube44\ud65c\uc131\ud654\ub418\uc5c8\uc2b5\ub2c8\ub2e4.</i><br>");for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("\uc5c6\uc560\ub2e4","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+
1316
+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");1==b?QH(69,c):setDialogMode(11,"\ud658\uacbd \uac10\uc9c0",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}
1317
+function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1318
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("\ud658\uacbd \uac10\uc9c0",format("\uc11c\ubc84\ub97c \ucd94\uac00\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4 (\uc0c1\ud0dc {0}).",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("\ud658\uacbd \uac10\uc9c0",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}
1319
+function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}
1320
+function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"\uc0ac\uc6a9\uc790 \uc2dc\uc791 \ud130\ub110",3,editUserInitiatedCiraDlg,b)}}
1321
+function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1322
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("\uc561\uc138\uc2a4 \uc774\ub984",c.AccessInfo);c.Port&&(a+=addHtmlValue("\ud3ec\ud2b8",c.Port));c.CN&&(a+=addHtmlValue("\uacf5\ud1b5 \uc774\ub984",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,0<c.indexOf("Username")?(a+=addHtmlValue("\uc778\uc99d \uc720\ud615","\uc0ac\uc6a9\uc790 \ubc0f \ud328\uc2a4 / \uc11c\ubc84 \uc778\uc99d TLS"),
1323
+a+=addHtmlValue("\uc6d0\uaca9 ID",getInstance(xxMPSUserPass,c).RemoteID)):(a+=addHtmlValue("\uc778\uc99d \uc720\ud615","\uc778\uc99d\uc11c / \uc0c1\ud638 \uc778\uc99d TLS"),c=getInstance(xxCertificates,c),a+=addHtmlValue("\uc778\uc99d\uc11c \uc774\ub984",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"\uc6d0\uaca9 \uc11c\ubc84 \ubc88\ud638"+(b+1),c,showServerDetailsOk,a)}
1324
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1325
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}function showServerDetailsOk2(b,c,a,d){408==d?messagebox("\uc6d0\uaca9 \uc11c\ubc84 \uc81c\uac70","\uc11c\ubc84\ub97c \uc81c\uac70 \ud560 \uc218 \uc5c6\uc73c\uba70 \uc561\uc138\uc2a4\uac00 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4."):PullRemoteAccess()}
1326
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1327
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("\uc561\uc138\uc2a4 \uc774\ub984",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("DNS \uc811\ubbf8\uc0ac",c.NetworkDnsSuffix),a=a+addHtmlValue("\ud504\ub85d\uc2dc \uc720\ud615",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"HTTP \ud504\ub85d\uc2dc #"+(b+1),c,showProxyDetailsOk,a,b)}
1328
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("HTTP \ud504\ub85d\uc2dc \uc81c\uac70","HTTP \ud504\ub85d\uc2dc\ub97c \uc81c\uac70 \ud560 \uc218 \uc5c6\uc73c\uba70 \uc561\uc138\uc2a4\uac00 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4."):PullRemoteAccess()}
1329
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>\ud638\uc2a4\ud2b8 \uc774\ub984 FQDN<option value=3>IPv4 \uc8fc\uc18c<option value=4>IPv6 \uc8fc\uc18c</select><div>\uc5f0\uacb0 \ud0c0\uc785</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>\ud3ec\ud2b8</div></div>';b+=
1330
+"<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>DNS \uc811\ubbf8\uc0ac</div></div>";setDialogMode(11,"HTTP \ud504\ub85d\uc2dc \ucd94\uac00",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1331
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN / \ud638\uc2a4\ud2b8 \uc774\ub984","IPv4 \uc8fc\uc18c","IPv6 \uc8fc\uc18c"][Q("d2type").value])}
1332
+function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}
1333
+function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("\ud504\ub85d\uc2dc \uc11c\ubc84 \ucd94\uac00","\ud504\ub85d\uc2dc, \uc0c1\ud0dc\ub97c \ucd94\uac00\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4."+d):0!=a.Body.ReturnValue?messagebox("\ud504\ub85d\uc2dc \uc11c\ubc84 \ucd94\uac00",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1334
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>\ud638\uc2a4\ud2b8 \uc774\ub984 FQDN<option value=3>IPv4 \uc8fc\uc18c</select><div>\uc5f0\uacb0 \ud0c0\uc785</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";a+=
1335
+'<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>\uc11c\ubc84 \ud3ec\ud2b8</div></div>';a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\uc11c\ubc84 \uacf5\ud1b5 \uc774\ub984</div></div>";a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";
1336
+0<b.length&&(a+="<option value=1>\uc99d\uba85\uc11c");a+="<option value=2>\uc544\uc774\ub514 / \ube44\ubc00\ubc88\ud638</select><div>\uc778\uc99d \uc720\ud615</div></div>";a+="<span id=d2utype>";a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\uc0ac\uc6a9\uc790 \uc774\ub984</div></div>";a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\uac15\ub825\ud55c \ube44\ubc00\ubc88\ud638</div></div>";
1337
+a+="</span>";a+="<span id=d2ctype>";a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>\uc99d\uba85\uc11c</div></div></span>";setDialogMode(11,"\uc6d0\uaca9 \uc11c\ubc84 \ucd94\uac00",3,AddRemoteAccessServerOk,a);AddRemoteAccessServerUpdate()}
1338
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+Q("d2cert").value+
1339
+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1340
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("\uc778\ud130\ub137 \uc11c\ubc84 \ucd94\uac00",format("\uc11c\ubc84\ub97c \ucd94\uac00\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4 (\uc0c1\ud0dc {0}).",d)):0!=a.Body.ReturnValue?messagebox("\uc778\ud130\ub137 \uc11c\ubc84 \ucd94\uac00",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1341
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"\ud638\uc2a4\ud2b8 \uc774\ub984":"IPv4 \uc8fc\uc18c");QV("d2utype",2==
1342
+Q("d2auth").value);QV("d2ucn",3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1343
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>\uc774\ub984 \ubc0f \ub3c4\uba54\uc778</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+(b?
1344
+"selected":"")+'>OS\uc640 \ub3d9\uc77c<option value="false" '+(b?"":"selected")+">OS\uc640 \ub2e4\ub978 \uc804\uc6a9</select><div>\uc774\ub984 \uacf5\uc720</div></div>");setDialogMode(11,"\ucef4\ud4e8\ud130 \uc774\ub984",3,editNameDlgOk,c)}}
1345
+function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}
1346
+function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"\ub3d9\uc801 DNS \ud074\ub77c\uc774\uc5b8\ud2b8",3,showEditDnsDlgOk)}}
1347
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1348
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"\uc778\ud154 ® AMT \uae30\ub2a5",3,featuresDlgOk))}
1349
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("\uc624\ub958","RedirectionService, RequestStateChange \uc624\ub958"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,0,function(a,c,d,e){200!=e?messagebox("\uc624\ub958",
1350
+"KVMRedirectionSAP, RequestStateChange \uc624\ub958"+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("\uc624\ub958","\ub9ac\ub514\ub809\uc158 \uc11c\ube44\uc2a4 PUT \uc624\ub958"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}
1351
+function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"\uc0ac\uc6a9\uc790 \ub3d9\uc758",3,consentDlgOk)}}
1352
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="\ud604\uc9c0 \uc8fc\uc18c \uc5f0\uacb0;\ub124\ud2b8\uc6cc\ud06c \ub85c\uceec \uc8fc\uc18c;\uc804 \uc138\uacc4 \uc8fc\uc18c;\uc0ac\uc6a9\uc790 \uad6c\uc131;\ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc74c;\uc544\ube60\uac00 \uc9c4\ud589\uc911;\uc720\ud6a8\ud55c;\ub354 \uc774\uc0c1 \uc0ac\uc6a9\ub418\uc9c0 \uc54a\uc74c;\uc120\ud638 / \ube44\ucd94\ucc9c;\ub9cc\ub8cc;\ucda9\ub3cc;\ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc74c".split(";");
1353
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+","+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"\uc720\uc120 \uc778\ud130\ud398\uc774\uc2a4 \uc6a9 IPv6 \uc8fc\uc18c":"\ubb34\uc120 \uc778\ud130\ud398\uc774\uc2a4 \uc6a9 IPv6 \uc8fc\uc18c",1,null,a+TableEnd())}}
1354
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 \ube44\ud65c\uc131\ud654");QH("d21l1","IPv6 \uc0ac\uc6a9, \uc790\ub3d9");QH("d21l2","IPv6 \uc0ac\uc6a9, \uc790\ub3d9 + \uc218\ub3d9 \uc8fc\uc18c");d21o0.checked=
1355
+!c;d21o1.checked=c&&!ipv6manual;d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"\uc720\uc120 \uc778\ud130\ud398\uc774\uc2a4\uc5d0 \ub300\ud55c IPv6 \uc9c0\uc6d0":"\ubb34\uc120 \uc778\ud130\ud398\uc774\uc2a4\uc5d0 \ub300\ud55c IPv6 \uc9c0\uc6d0",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1356
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1357
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1358
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1359
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1360
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv6 \uc9c0\uc6d0",format("IPv6 \uc0c1\ud0dc\ub97c \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958 {0}",d))}
1361
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"\uc778\ud154 ® AMT \ud551 \uc751\ub2f5",3,showPingActionDlgOk)}}
1362
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1363
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","DHCP \uc11c\ubc84\ub97c \uc0ac\uc6a9\ud55c \uc790\ub3d9 \uad6c\uc131");QH("d21l2","\uc544\ub798 IPv4 \uc124\uc815\uc744 \uc0ac\uc6a9\ud55c \uc815\uc801 \uad6c\uc131");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=
1364
+!d21o1.checked;c30.value=isIpAddress(b.IPAddress,"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"IPv4 \uc124\uc815",3,showIPSetupDlgOk)}}
1365
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6 \uc0ac\uc6a9, \uc790\ub3d9 + \uc218\ub3d9 \uc8fc\uc18c"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1366
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1367
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv4 \uc124\uc815",format("\ub124\ud2b8\uc6cc\ud06c \ub9e4\uac1c \ubcc0\uc218\ub97c \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc624\ub958 {0}",d))}amtPowerBootCapabilities=null;
1368
+function showPowerActionDlg(){xxdialogMode||(statusbox("\ud30c\uc6cc \uc561\uc158","\uae30\ub2a5 \ud655\uc778 \uc911 ..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1369
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","\ud30c\uc6cc \uc5c5",2);b&1&&(addOption("d5actionSelect","\ucd08\uae30\ud654",10),addOption("d5actionSelect","\uc804\uc6d0 \uc0ac\uc774\ud074",5),addOption("d5actionSelect","\uc804\ub825 \ub2e4\uc6b4",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect",
1370
+"\uc9c4\ub2e8 \uc804\uc6d0 \ucf1c\uae30",300),b&1&&addOption("d5actionSelect","\uc9c4\ub2e8\uc73c\ub85c \uc7ac\uc124\uc815",301));9<amtversion&&b&1&&(addOption("d5actionSelect","\ub300\uae30 \ubaa8\ub4dc\uc5d0\uc11c OS \uc6e8\uc774\ud06c",500),addOption("d5actionSelect","OS \uc808\uc804",501),addOption("d5actionSelect","\uc18c\ud504\ud2b8 \uc624\ud504",12),addOption("d5actionSelect","\uc18c\ud504\ud2b8 \ub9ac\uc14b",14),addOption("d5actionSelect","\uc790\ub2e4",4),addOption("d5actionSelect","\ub3d9\uba74",
1371
+7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&addOption("d5actionSelect","BIOS \uc804\uc6d0",100),b&1&&addOption("d5actionSelect","BIOS\ub85c \uc7ac\uc124\uc815",101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","\uc548\uc804\ud55c \uc9c0\uc6b0\uae30 \uae30\ub2a5",104),b&1&&addOption("d5actionSelect","\uc548\uc804\ud55c \uc9c0\uc6b0\uae30\ub85c \uc7ac\uc124\uc815",105));b&1&&addOption("d5actionSelect","IDE-R \ud50c\ub85c\ud53c\ub85c \uc7ac\uc124\uc815",200);b&2&&addOption("d5actionSelect",
1372
+"IDE-R \ud50c\ub85c\ud53c \uc804\uc6d0 \ucf1c\uae30",201);b&1&&addOption("d5actionSelect","IDE-R CDROM\uc73c\ub85c \uc7ac\uc124\uc815",202);b&2&&addOption("d5actionSelect","IDE-R CDROM \uc804\uc6d0 \ucf1c\uae30",203);b&1&&addOption("d5actionSelect","PXE\ub85c \uc7ac\uc124\uc815",400);b&2&&addOption("d5actionSelect","PXE \uc804\uc6d0 \ucf1c\uae30",401);addOption("d5actionSelect","\ub9de\ucda4 \uc791\uc5c5 ...",999);5<amtversion&&addOption("d5actionSelect","\uc0ac\uc6a9\uc790 \ub3d9\uc758 ...",998);
1373
+setDialogMode(5,"\ud30c\uc6cc \uc561\uc158",3,powerActionDlgCheck)}else messagebox("\ud30c\uc6cc \uc561\uc158",format("\uc2dc\uc2a4\ud15c \uae30\ub2a5\uc744 \uac00\uc838\uc62c \uc218 \uc5c6\uc74c, \uc624\ub958 {0}",d))}
1374
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"\uc804\uc6d0 \uc791\uc5c5\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4."):QH(66,format("\uc804\uc6d0 \uc791\uc5c5 \uc624\ub958 # {0}.",e));setDialogMode(1,"\ud30c\uc6cc \uc561\uc158",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="Intel® Remote Secure Erase \uc2e4\ud589\uc744 \ud655\uc778 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?<br>\ud544\uc694\ud55c \uacbd\uc6b0 \ubcf4\uc548 \uc9c0\uc6b0\uae30 \ube44\ubc00\ubc88\ud638\ub97c \uc785\ub825\ud558\uc2ed\uc2dc\uc624.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>\uc554\ud638</div></div><br><div style=color:red><b> \uacbd\uace0 : </ b> \uc6d0\uaca9 \uc2dc\uc2a4\ud15c\uc758 \ub370\uc774\ud130\ub97c \uc9c0 \uc6c1\ub2c8\ub2e4.</div>",
1375
+rsepass=1,setDialogMode(11,"\ud30c\uc6cc \uc561\uc158",3,powerActionDlg,b)):powerActionDlg()}
1376
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("\ud30c\uc6cc \uc561\uc158","\uc0c1\ud0dc \ud655\uc778 \uc911 ...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&
1377
+(c=!1);c?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1378
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1379
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1380
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"\ucee4\uc2a4\ud140 \ud30c\uc6cc \uc561\uc158",
1381
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1382
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"\uc804\uc6d0 \uc791\uc5c5\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4."):QH(66,format("\uc804\uc6d0 \uc791\uc5c5 \uc624\ub958 # {0}.",e));setDialogMode(1,"\ud30c\uc6cc \uc561\uc158",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=
1383
+Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=Q("d24BiosSecureBoot").checked,AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=
1384
+Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=Q("d24LockSleepButton").checked,AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),
1385
+statusbox("\ud30c\uc6cc \uc561\uc158","\uc0c1\ud0dc \ud655\uc778 \uc911 ..."),amtstack.Get("IPS_OptInService",powerActionResponse0,0,1))}
1386
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("\ud30c\uc6cc \uc561\uc158",format("\uc624\ub958 # {0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"\uc0ac\uc6a9\uc790 \ub3d9\uc758",11,powerActionSendConsent),checkConsentDisplay(),consentChanged()):(statusbox("\ud30c\uc6cc \uc561\uc158","\uc635\ud2b8 \uc778 \uc2dc\uc791 \uc911 ..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,
1387
+0,1)):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("\uc0ac\uc6a9\uc790 \ub3d9\uc758","\uc0ac\uc6a9\uc790 \ub3d9\uc758\uac00 \ud544\uc694\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4."):(statusbox("\ud30c\uc6cc \uc561\uc158","\ubd80\ud305 \uc124\uc815 \uac00\uc838 \uc624\uae30 ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1388
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("\ud30c\uc6cc \uc561\uc158",format("\uc624\ub958 #",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("\uc0ac\uc6a9\uc790 \ub3d9\uc758 \uc624\ub958",a.Body.ReturnValueStr.replace(/_/g," ")):(d6ConsentText.value="",setDialogMode(6,"\uc0ac\uc6a9\uc790 \ub3d9\uc758",11,powerActionSendConsent),checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",
1389
+function(a,b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1390
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("\ud30c\uc6cc \uc561\uc158","\uc0ac\uc6a9\uc790 \ub3d9\uc758\ub97c \ubcf4\ub0b4\ub294 \uc911 ..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1391
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("\ud30c\uc6cc \uc561\uc158",format("\uc624\ub958 # {0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("\uc0ac\uc6a9\uc790 \ub3d9\uc758","\uc0ac\uc6a9\uc790 \ub3d9\uc758\uc5d0 \uc131\uacf5\ud588\uc2b5\ub2c8\ub2e4."):(statusbox("\ud30c\uc6cc \uc561\uc158","\uc0c1\ud0dc \ud655\uc778 \uc911 ..."),amtstack.Get("AMT_BootSettingData",
1392
+powerActionResponse1,0,1))}
1393
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("\ud30c\uc6cc \uc561\uc158",format("\uc624\ub958 # {0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=AvdPowerDlg.IDERBootDevice,
1394
+e.LockKeyboard=AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&
1395
+(e.RSEPassword=AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,
1396
+!0===e.SecureErase&&0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("\ubd80\ud305 \ub3d9\uc791 : "+b);console.log("\ubd80\ud305 \uc124\uc815 \uc124\uc815 : "+ObjectToString2(e));statusbox("\ud30c\uc6cc \uc561\uc158",
1397
+"\ubd80\ud305 \uc124\uc815 ...");amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,function(a,b,c,d){200!=d?messagebox("\ud30c\uc6cc \uc561\uc158",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1398
+function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("\ud30c\uc6cc \uc561\uc158",format("PUT AMT_BootSettingData, \uc624\ub958 # {0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("\ud30c\uc6cc \uc561\uc158","\ub2e4\uc74c \ubd80\ud305 \uc124\uc815 \uc911 ..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1399
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1400
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1401
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("\ud30c\uc6cc \uc561\uc158","\uc804\uc6d0 \uc791\uc5c5 \uc218\ud589 \uc911 ...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);
1402
+targetPowerAction=b;11==b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("\ud30c\uc6cc \uc561\uc158","\ub2e4\uc74c \ubd80\ud305 \ub3d9\uc791 \uc138\ud2b8")}}
1403
+function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"\uc804\uc6d0 \uc791\uc5c5\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4."),setDialogMode(1,"\ud30c\uc6cc \uc561\uc158",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}function consentChanged(){QE("c49",6==d6ConsentText.value.length)}
1404
+function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1405
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1406
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1407
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1408
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\uc774 \ucef4\ud4e8\ud130\uc758 \uc778\ud154 ® AMT \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \uad00\ub9ac\ud569\ub2c8\ub2e4.<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||
1409
+r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+" / "+r):e+"\ubfcc\ub9ac";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("\ub2e4\uc6b4\ub85c\ub4dc","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" \ubc14\uc774\ud2b8</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);
1410
+-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==n&&(wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>\ud30c\uc77c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+=
1411
+"<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+(q?AddButton("\uc5c5\ub85c\ub4dc ...","UploadToStorage()"):""));QH(61,a)}else QH(61,"\uc2a4\ud1a0\ub9ac\uc9c0 \ub370\uc774\ud130\ub97c\ub85c\ub4dc \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4 ...<br/>"+AddButton("\uc0c8\ub86d\uac8c \ud558\ub2e4","PullStorage()"))}
1412
+function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("\uacf5\uae09 \uc5c5\uccb4",b));""!=c&&(e+=addHtmlValue("\uc2e0\uccad",c));e+=addHtmlValue("\uc774\ub984",a);e+=addHtmlValue("\ud06c\uae30",q.size+" bytes");q.link&&(e+=addHtmlValue("\ub9c1\ud06c",q.link));setDialogMode(11,"\ubcf4\uad00 \uc544\uc774\ud15c",5,showStorageDetailsEx,e,d)}}
1413
+function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}function storageDeleteResponse(b,c){200!=c?messagebox("\uc800\uc7a5",format("\ud30c\uc77c (ERR {0})\uc744 \uc0ad\uc81c\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \ucef4\ud4e8\ud130 \uc804\uc6d0\uc774 \ucf1c\uc838 \uc788\ub294\uc9c0 \ud655\uc778\ud558\uc2ed\uc2dc\uc624.",c)):PullStorage()}
1414
+function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}
1415
+function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}
1416
+function PushToStorageResponse(b,c,a){200!=c?messagebox("\uc800\uc7a5",format("\ud30c\uc77c (ERR {0})\uc744 \ud478\uc2dc \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \ucef4\ud4e8\ud130 \uc804\uc6d0\uc774 \ucf1c\uc838 \uc788\ub294\uc9c0 \ud655\uc778\ud558\uc2ed\uc2dc\uc624.",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1417
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>\uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \uc5c5\ub85c\ub4dc \ud560 \uc791\uc740 \ud30c\uc77c\uc744 \uc120\ud0dd\ud558\uace0 \uacf5\uae09 \uc5c5\uccb4, \uc751\uc6a9 \ud504\ub85c\uadf8\ub7a8 \ubc0f \ud30c\uc77c \uc774\ub984\uc744 \uc785\ub825\ud558\uc2ed\uc2dc\uc624.<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>\ud30c\uc77c \uc5c5\ub85c\ub4dc</div></div>'):
1418
+a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+'<br><div style=height:16px><input id=mstoragevendor placeholder="\uacf5\uae09 \uc5c5\uccb4" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>\uacf5\uae09 \uc5c5\uccb4 \uc774\ub984</div></div>';a+='<br><div style=height:16px><input id=mstorageapplication placeholder="\uc571" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>\uc751\uc6a9 \ud504\ub85c\uadf8\ub7a8 \uc774\ub984</div></div>';
1419
+a+='<br><div style=height:16px><input id=mstoragefilename placeholder="\ud30c\uc77c \uc774\ub984" maxlength=11 style=float:right;width:240px><div>\ud30c\uc77c \uc774\ub984</div></div>';a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>MIME \uc720\ud615</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="\uc124\uc815\ub41c \uacbd\uc6b0 \uae30\ubcf8 \uc6f9 \ud398\uc774\uc9c0\uc5d0\uc11c\uc774 \ucf58\ud150\uce20\uc5d0 \ub300\ud55c \ub9c1\ud06c\ub97c \ub9cc\ub4ed\ub2c8\ub2e4.">\ub9c1\ud06c</div></div><br>';
1420
+a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';a+="</datalist>";a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"\uc2a4\ud1a0\ub9ac\uc9c0 \uc5c5\ub85c\ub4dc",3,UploadToStorageEx,
1421
+a,b);b&&SetStorageName(c)}}function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1422
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1423
+b}
1424
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1425
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1426
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," \uc77c").replace("H"," \uc2dc\uac04").replace("M"," \uc758\uc0ac\ub85d");b=b.replace(" 1 \uc77c"," 1 \uc77c").replace(" 1 \uc2dc\uac04"," 1 \uc2dc\uac04").replace(" 1 \ubd84"," 1 \ubd84");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1427
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\uc54c\ub78c \uae68\uc6b0\uae30\ub97c \uad00\ub9ac\ud569\ub2c8\ub2e4.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, \uc77c\uc5b4\ub098 "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," ...\uc5d0\uc11c"),void 0!=d[c].Interval&&(a+=" \uadf8\ub9ac\uace0 \uac01\uac01"+_fmtinterval(d[c].Interval.Interval)),
1428
+1==d[c].DeleteOnCompletion&&(a+="\uc644\ub8cc\ub418\uba74 \uc0ad\uc81c"),b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("\ud3b8\uc9d1\ud558\ub2e4...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>\ub4f1\ub85d \ub41c \uae68\uc6b0\uae30 \uacbd\ubcf4\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.</i></div><br>";
1429
+d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("\ubaa8\ub4e0 \uc54c\ub78c \uc81c\uac70","RemoveAllAlarms()")+AddButton("\ub354\ud558\ub2e4","showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1430
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1431
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"\ubaa8\ub4e0 \uc54c\ub78c \ud574\uc81c",3,RemoveAllAlarmsEx,"\ubaa8\ub4e0 \uc54c\ub78c \ud574\uc81c\ub97c \ud655\uc778 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1432
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1433
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1434
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"\uc0c8 \uc54c\ub78c \ucd94\uac00",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1435
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1436
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("\uc54c\ub78c \ucd94\uac00",format("\uc54c\ub78c\uc744 \ucd94\uac00\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uc0c1\ud0dc : {0}. <br/> \uc54c\ub78c\uc774 \ubbf8\ub798\uc778\uc9c0 \ud655\uc778\ud558\uc2ed\uc2dc\uc624.",d)):0!=c.Body.ReturnValue?messagebox("\uc54c\ub78c \ucd94\uac00",
1437
+format("\uc54c\ub78c {0}\uc744 (\ub97c) \ucd94\uac00\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. <br/> \ud5a5\ud6c4 \uc54c\ub78c\uc744 \ud655\uc778\ud558\uc2ed\uc2dc\uc624.",c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,
1438
+b,c,d){200!=d?messagebox("\uc54c\ub78c \ud3b8\uc9d1",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1439
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("\uc774\ub984",c.ElementName)+addHtmlValue("\uc6e8\uc774\ud06c \ud0c0\uc784",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("\ub0b4\ubd80\uc758",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("\uae68\uc5b4 \ub09c \ud6c4",1==c.DeleteOnCompletion?"\uc54c\ub78c \uc0ad\uc81c":"\uc54c\ub78c \uc720\uc9c0")+"</div>";messagebox(format("\uc54c\ub78c {0}",
1440
+c.ElementName),a);setDialogMode(11,"\uacbd\ubcf4"+c.ElementName,5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"\uc2a4\ud06c\ub9bd\ud2b8 \uc2e4\ud589",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1441
+function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1442
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1443
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("\uc2a4\ud06c\ub9bd\ud2b8 \uc2e4\ud589",
1444
+"\uc798\ubabb\ub41c \uc2a4\ud06c\ub9bd\ud2b8 \ud30c\uc77c\uc785\ub2c8\ub2e4.")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1445
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1446
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1447
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1448
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1449
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("{0} \ud3b8\uc9d1",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1450
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1451
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1452
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1453
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1454
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1455
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1456
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1457
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1458
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1459
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1460
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1461
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1462
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1463
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1464
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1465
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1466
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1467
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"\uc774\uc9c4 \ud30c\uc77c,"+script_BlockScript[c].vars[d].value.length+" \ubc14\uc774\ud2b8":"\ubbf8 \uc124\uc815");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+=
1468
+"<tr><td style=height:3px></table>"}b+="</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">\uc67c\ucabd\uc5d0\uc11c\uc774 \uc2a4\ud06c\ub9bd\ud305 \uc0c1\uc790\ub85c \ube14\ub85d\uc744 \ub04c\uc5b4\ub2e4 \ub193\uc544 \uc2a4\ud06c\ub9bd\ud2b8\ub97c \uc2dc\uc791\ud558\uc2ed\uc2dc\uc624.<div>');QH("scriptblocks",b+"<div style=height:80px></div>");for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1469
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1470
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}
1471
+function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"\uc0c8\ub85c\uc6b4 \uc2a4\ud06c\ub9bd\ud2b8",3,script_newScriptDlgOk,"<br>\uc2a4\ud06c\ub9bd\ud2b8 \ud3b8\uc9d1\uae30\ub97c \uc7ac\uc124\uc815\ud558\uace0 \uc9c0\uc6b0\uc2dc\uaca0\uc2b5\ub2c8\uae4c?")}
1472
+function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1473
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("\uc2a4\ud06c\ub9bd\ud2b8 \ucef4\ud30c\uc77c \uc624\ub958",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","\uc911\uc9c0");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,_mode:"Firmware"}),editscriptstate.wsstack=
1474
+wsstack,editscriptstate.amtstack=amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}
1475
+function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["\uc911\uc9c0","\ub2ec\ub9ac\ub294","\uc77c\uc2dc \uc911\uc9c0\ub428"];
1476
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="\uc911\uc9c0\ub428, \uc2a4\ud06c\ub9bd\ud2b8 \uc5c6\uc74c";b&&null!=b&&(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,
1477
+b.ip)));50<c.length&&(c=c.substring(0,50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1478
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"\uc2a4\ud06c\ub9bd\ud2b8 \ube14\ub85d",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1479
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1480
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1481
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1482
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1483
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1484
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1485
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}
1486
+var httpErrorTable={200:"\ud655\uc778",401:"\uc778\uc99d \uc624\ub958",408:"\ud0c0\uc784 \uc544\uc6c3 \uc5d0\ub7ec",601:"WSMAN \uad6c\ubb38 \ubd84\uc11d \uc624\ub958",602:"HTTP \uc751\ub2f5 \ud5e4\ub354\ub97c \uad6c\ubb38 \ubd84\uc11d \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4",603:"\uc608\uae30\uce58 \uc54a\uc740 HTTP \uc5f4\uac70 \ud615 \uc751\ub2f5",604:"\uc608\uae30\uce58 \uc54a\uc740 HTTP \ud480 \uc751\ub2f5",997:"\uc798\ubabb\ub41c \ub2e4\uc774\uc81c\uc2a4\ud2b8 \uc601\uc5ed"};
1487
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("\uc624\ub958 # {0}",b)),401==b&&QH(5,'\uc778\uc99d \uc624\ub958<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1488
+function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1489
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1490
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1491
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("\ud1b5\ud654 \uc624\ub958",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}
1492
+function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}
1493
+function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="\uc0c8\ub86d\uac8c \ud558\ub2e4" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}
1494
+function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}
1495
+function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}
1496
+function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1497
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1498
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1499
+</script>
\ No newline at end of file
public/commander-nl.htm
new
+1456
@@ -0,0 +1,1456 @@
1
+<!DOCTYPE html><html lang="nl" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=Aansluiten onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>Losgekoppeld</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>Systeem status</a><p id=go14 class=nav1 onclick=go(14)><a>Extern bureaublad</a><p id=go24 class=nav1 onclick=go(24)> <a>Bestanden</a><p id=go13 class=nav1 onclick=go(13)><a>Serieel via LAN</a><p id=go2 class=nav1 onclick=go(2)><a>Hardware-informatie</a><p id=go6 class=nav1 onclick=go(6)><a>Logboek</a><p id=go15 class=nav1 onclick=go(15)><a>Auditlogboek</a><p id=go21 class=nav1 onclick=go(21)><a>Opslag</a><p id=go8 class=nav1 onclick=go(8)><a>Netwerkinstellingen</a><p id=go17 class=nav1 onclick=go(17)><a>Internetinstellingen</a><p id=go16 class=nav1 onclick=go(16)><a>Veiligheidsinstellingen</a><p id=go19 class=nav1 onclick=go(19)><a>Aanwezigheid van agent</a><p id=go18 class=nav1 onclick=go(18)><a>Systeemverdediging</a><p id=go11 class=nav1 onclick=go(11)><a>Gebruikersaccounts</a><p id=go22 class=nav1 onclick=go(22)><a>Abonnementen</a><p id=go23 class=nav1 onclick=go(23)><a>Wekkeralarmen</a><p id=go20 class=nav1 onclick=go(20)><a>Scripteditor</a><p id=go12 class=nav1 onclick=go(12)><a>WSMAN-browser</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value=Schijfkaart onclick=iderToggleDiskMap()><input type=button value="Stop IDE-R-sessie" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>Floppy, blokken zijn 512 bytes.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CDROM, blokken zijn 2048 bytes.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="Stop script" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>Script uitvoeren</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>De firmware van deze computer moet worden bijgewerkt, <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>kijk hier</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>Bezig met laden...</h1></div><div id=p1 style=display:none><h1>Systeem status</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>Hardware-informatie</h1><span id=18></span></div><div id=p6 style=display:none><h1>Logboek</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>Netwerkinstellingen</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>Gebruikersaccounts</h1><span id=23></span></div><div id=p12 style=display:none><h1>WSMAN-browser</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=Vraag style=margin:4px onclick=wsmanQuery()><input type=button value=Doorzichtig style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=Filter style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Serieel-over-LAN-terminal</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Intel® AMT Redirection-poort of Serial-over-LAN-functie is uitgeschakeld<span id=28>, klik hier om het in te schakelen.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>De externe computer is niet ingeschakeld, klik hier om een aan / uit-commando te geven.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Stroomacties ..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="Start bediening op afstand op schijf" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Start Capture" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=Aansluiten onclick=connectTerminal(event) disabled="disabled"> <span id=31>Losgekoppeld.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR + LF" title="Schakel in wat de Return-toets verzendt" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="Schakel de grootte van de terminal in" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Intel (F10 = ESC + [OM)" title="Schakel het emulatietype van F1 naar F10" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Uitgebreide Ascii" title="Schakel het type terminalemulatie in" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Backspace onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=Plakken disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>Extern bureaublad</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Intel® AMT Redirection-poort of KVM-functie is uitgeschakeld<span id=43>, klik hier om het in te schakelen.</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>De externe computer is niet ingeschakeld, klik hier om een aan / uit-commando te geven.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="Draai naar links" onclick=drotate(-1)>↺</div><div class=rb title="Draai naar rechts" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="Schakel de modus Volledig scherm" onkeypress="return false" onkeydown="return false" value=Vol onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="Sla een schermafbeelding van het externe bureaublad op" onkeypress="return false" onkeydown="return false" value=Opslaan... onclick=deskSaveImage() style=margin-right:3px><input type=button value="Instellingen ..." title="Bewerk instellingen voor extern bureaublad" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="Start bediening op afstand op schijf" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="Wijzig de energiestatus van de externe machine" onkeypress="return false" onkeydown="return false" value="Stroomacties ..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=Aansluiten onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>Losgekoppeld.</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>Winnen<option value=1>Win + Down<option value=2>Win + Up<option value=3>Win + L<option value=4>Win + M<option value=20>Win + R<option value=23>Win + Links<option value=24>Win + Right<option value=5>Shift + Win + M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=Sturen onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=Type onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>Leeg scherm </span><span id=53><input id=54 type=checkbox>Alleen bekijken </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>Auditlogboek</h1><span id=56></span></div><div id=p16 style=display:none><h1>Veiligheidsinstellingen</h1><span id=57></span></div><div id=p17 style=display:none><h1>Internetinstellingen</h1><span id=58></span></div><div id=p18 style=display:none><h1>Systeemverdediging</h1><span id=59></span></div><div id=p19 style=display:none><h1>Aanwezigheid van agent</h1><span id=60></span></div><div id=p20 style=display:none><h1>Scripteditor</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>Gestopt</div><div><input type=button value="Bekijk Editor" title="Schakel over naar de editorweergave van de scriptregel" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="Bekijk Builder" title="Schakel over naar de weergave van de blokeditor" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=Nieuw... title="Wis de scripteditor" onclick=script_newScriptDlg()><input type=button value=Laden... title="Laad een script uit het bestand" onclick=script_runScriptDlg()><input type=button value=Opslaan... title="Sla een script op in een bestand" onclick=script_saveScript(event)><input type=button value=Herstarten title="Compileer het script en maak je klaar om het vanaf het begin uit te voeren" onclick=resetScriptButton()><input type=button value="Doorgaan met" title="Voer het script uit vanaf het huidige uitvoeringspunt" onclick=runScriptButton()><input type=button value=Breken title="Pauzeer de uitvoering van het script" onclick=breakScriptButton()><input type=button value=Stap title="Voer een stap van het script uit" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>Script Builder</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="Filterblokken ..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>Script</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>Gecompileerd script</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>Variabelen</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>Troosten</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>Opslag</h1><span id=61></span></div><div id=p22 style=display:none><h1>Event abonnementen</h1><span id=62></span></div><div id=p23 style=display:none><h1>Wekkeralarmen</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>Bestanden</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=Omhoog> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="Selecteer alles" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=Hernoemen onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=Verwijderen onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="Nieuwe map" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=Uploaden onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=Besnoeiing onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=Kopiëren onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=Plakken onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=Vernieuwen onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">Sorteren op naam<option value=2>Sorteer op maat<option value=3>Sorteren op datum<option value=4>Daal af op naam<option value=5>Daal af op maat<option value=6>Daal af op datum</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>Gebruikersnaam</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Wachtwoord*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>bevestig wachtwoord</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>Lokaal<option value=1>Netwerk<option value=2>Ieder</select><div>Toestemming</div></div><div>Verleende machtigingen</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>* Minimaal 8 tekens met hoofdletters, kleine letters, 0-9 en een van! @ # $% ^ & * () + -</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>Krachtige actie</div></div><div><span style=color:red>Waarschuwing:</span>Sommige stroomacties kunnen leiden tot gegevensverlies en kunnen de omleidingssessies van het bureaublad, de terminal of de schijf verbreken.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>Toestemmingscode</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>Primair beeldscherm<option value=1>Secundair beeldscherm<option id=d6ThirdDisplay value=2 style=display:none>Derde vertoning</select><div>Toestemming weergeven</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, Kleur<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>Beeldcodering</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>Toon lokale muiscursor</label><br><label><input type=checkbox id=d7showcad>Toon Ctrl-Alt-Del</label><br><label><input type=checkbox id=d7limitFrameRate>Framesnelheid beperken</label><br><label><input type=checkbox id=d7noMouseRotate>Draai de muis niet</label><br></div><div>Andere instellingen</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">Software KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>Kwaliteit</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87,5%<option value=768>75%<option value=640>62,5%<option value=512>50%<option value=384>37,5%<option value=256>25%<option value=128>12,5%</select><div style=height:20px>Schalen</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=beheerder style=float:right;width:220px><div style=height:20px>Gebruikersnaam</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>Wachtwoord</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>Omleidingspoort</label><label id=c15 style=display:block><input type=checkbox id=c16>KVM Extern bureaublad</label><label style=display:block><input type=checkbox id=c17>IDE-omleiding<br></label><label style=display:block><input type=checkbox id=c18>Serieel via LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>Niet verplicht<br></label><label><input type=radio name=d10 id=c20 value=1>Alleen vereist voor KVM<br></label><label><input type=radio name=d10 id=c21 value=4294967295>Altijd vereist<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Maximaal 32 tekens"><div title="Maximaal 32 tekens">Profielnaam</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Maximaal 32 tekens"><div title="Maximaal 32 tekens">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>Prioriteit</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>Verificatie</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>Geen</select><div>Versleuteling</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Lengte tussen 8 en 63 tekens"><div title="Lengte tussen 8 en 63 tekens">Wachtwoord*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Lengte tussen 8 en 63 tekens"><div title="Lengte tussen 8 en 63 tekens">bevestig wachtwoord</div></div></div><div id=dialog19 style=margin:auto;margin:3px>Hiermee wordt de volledige staat van Intel® AMT voor deze machine in het bestand opgeslagen. Wachtwoorden worden niet opgeslagen, maar er kunnen enkele gevoelige gegevens worden opgenomen.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>Gehandicapt<br><input type=radio name=d20 id=d20b value=1>ICMP-reactie<br><input type=radio name=d20 id=d20c value=2>RMCP-reactie<br><input type=radio name=d20 id=d20d value=3>ICMP & RMCP-reactie<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>Besturingssysteem IP-adres synchronisatie</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>IP adres</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Subnetmarkering</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>poort</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Primaire DNS</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Alternatieve DNS</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>Gehandicapt<option value=1>Uitgeschakeld, DHCP-update<option value=2>Ingeschakeld</select><div>Dynamische DNS-client</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>Interval bijwerken (minuten)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (seconden)</div></div><div style=font-size:10px><br>Defaut Interval is 1440 minuten, standaard TTL is 900 seconden.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>Opstarten<option value=10>Reset<option value=5>Power cyclus<option value=8>Stroomstoring<option id=d24p500 value=500>OS Wake from Standby<option id=d24p501 value=501>OS energiebesparing<option value=999>Stel opstartopties in</select><div>Afstandsbediening</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>BIOS Pauze</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>Dwing Secure Boot af</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>BIOS-instellingen</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>Forceer voortgangsgebeurtenissen</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>Aan / uit-knop vergrendelen</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>Reset-knop vergrendelen</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>Slaapknop vergrendelen</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>Toetsenbord vergrendelen</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>BIOS-wachtwoord omzeilen</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>Reflash BIOS</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>Veilige modus</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>Gebruik IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Serieel via LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>Intel® Remote Secure Erase</label><br></div></div><div>Opstartinstellingen</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Geen<option id=ForceDVDBootOption value=1>Forceer CD / DVD Boot<option id=ForcePXEBootOption value=2>Forceer PXE Boot<option id=ForceHDBootOption value=3>Forceer harde schijf opstarten<option id=ForceDiagBootOption value=4>Forceer diagnostisch opstarten</select><div>Opstartbron</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Geen<option value=1>Index 1<option value=2>Index 2<option value=3>Index 3<option value=3>Index 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Start op naar floppy<option value=1>Start op naar CDROM</select><div>IDER opstartapparaat</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Systeemfout<option id=c45 value=1>Rustig<option id=c46 value=2>Uitgebreid<option id=c47 value=3>Leeg scherm</select><div>Verbocity</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>RSE-wachtwoord</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>Alarmnaam</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Wekdatum (jaar-maand-dag)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>Wektijd (uur: min: sec)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Interval (dagen-uren-min)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>Houd alarm<option value=1>Na voltooiing verwijderen</select></div><div style=padding-top:4px>Na het ontwaken</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=annuleren style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=OK style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=Verwijderen style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"Onjuiste data":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",
92
+v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"Agent waakhond"+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... veranderd in"+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"Case inbraak";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"Er is een externe Serial Over LAN-sessie tot stand gebracht.";if(1==c[2])return"Remote Serial Over LAN-sessie be\u00ebindigd. Gebruikerscontrole is hersteld.";
93
+if(2==c[2])return"Er is een externe IDE-omleidingssessie opgezet.";if(3==c[2])return"Remote IDE-Redirection-sessie voltooid. Gebruikerscontrole is hersteld."}if(36==a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="bedrade"),4294967293==a?"Alle ontvangen pakketfilter is gematcht"+b+" koppel.":4294967292==a?"Alle uitgaande pakketfilters zijn gematcht"+b+" koppel.":4294967290==a?"Er werd op een vervalst pakketfilter gezocht"+b+" koppel.":"Filter"+a+" werd gematcht op"+b+" koppel.";
94
+if(192==a)return 0==c[2]?"Beveiligingsbeleid ingeroepen. Een deel van of al het netwerkverkeer (TX) is gestopt.":2==c[2]?"Beveiligingsbeleid ingeroepen. Sommige of al het netwerkverkeer (RX) werd gestopt.":"Beveiligingsbeleid ingeroepen.";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"Gebruikersverzoek voor externe verbinding.";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"EAC-fout: probeer houding te krijgen terwijl NAC in Intel\ufffd AMT is uitgeschakeld.";if(170==c[0]&&32==c[1]&&
95
+4==c[2]&&0==c[3])return"HWA-fout: algemene fout"}return 6==a?"Verificatie mislukt"+(c[1]+(c[2]<<8))+" keer. Het systeem wordt mogelijk aangevallen.":30==a?"Geen opstartbare media":32==a?"Vergrendeling van besturingssysteem of stroomonderbreking":35==a?"Systeem opstartfout":37==a?"Systeemfirmware is gestart (ten minste \u00e9\u00e9n CPU wordt correct uitgevoerd).":"Onbekend sensortype #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=
96
+MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,
97
+10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>Lokaal</i>",g=5);3==b.InitiatorType&&(b.Initiator="<i>KVM-standaardpoort</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],
98
+e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/","http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,
99
+b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),
100
+b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,
101
+A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==
102
+a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
103
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
104
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
105
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
106
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
107
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
108
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
109
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
110
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
111
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
112
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
113
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
114
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
115
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
116
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
117
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
118
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
119
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
120
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
121
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
122
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
123
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
124
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
125
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
126
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
127
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
128
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
129
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
130
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
131
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
132
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
133
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
134
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
135
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
136
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
137
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
138
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
139
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
140
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
141
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
142
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
143
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
144
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
145
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
146
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
147
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
148
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
149
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
150
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
151
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
152
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
153
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="Niet gespecificeerd. ; Er is geen fysiek systeemgeheugen ge\u00efnstalleerd in het systeem. ; Geen bruikbaar systeemgeheugen, al het ge\u00efnstalleerde geheugen heeft een onherstelbare fout ervaren. ; Onherstelbare storing op de harde schijf / ATAPI / IDE-apparaat. ; Onherstelbare systeemkaartfout. ; Onherstelbare diskette subsysteemfout. ; Onherstelbare storing van harde schijfcontroller. ; Onherstelbare PS / 2- of USB-toetsenbordfout. ; Verwijderbare opstartmedia niet gevonden. ; Onherstelbare videocontrollerfout. ; Geen videoapparaat gedetecteerd. ; Firmware (BIOS) ROM-corruptie gedetecteerd. ; CPU-spanning komt niet overeen (processoren die dezelfde voeding delen hebben niet-overeenkomende spanningsvereisten) ; Fout bij het matchen van de CPU-snelheid".split(";"),
154
+h="Niet gespecificeerd. ; Geheugeninitialisatie. ; Initialisatie en test van harde schijf starten ; Secundaire processor (s) initialisatie ; Gebruikersauthenticatie ; Door gebruiker ge\u00efnitieerde systeemconfiguratie ; USB-bronconfiguratie ; PCI-bronconfiguratie ; Optie ROM-initialisatie ; Video-initialisatie ; Cache-initialisatie ; SM Businitialisatie ; Initialisatie toetsenbordcontroller ; Ge\u00efntegreerde controller / beheercontroller-initialisatie ; Dockingstation-bevestiging ; Dockingstation inschakelen ; Uitwerpen dockingstation ; Dockingstation uitschakelen ; Oproepvector voor besturingssysteem aanroepen ; Opstartproces voor besturingssysteem starten ; Initialisatie van moederbord of moederbord ; gereserveerd ; Floppy initialisatie ; Toetsenbordtest ; Testapparaat aanwijsapparaat ; Initialisatie van primaire processor".split(";"),
155
+g="Niet gespecificeerd ; Overige ; Onbekend ; Processor ; Schijf ; Randapparatuur ; Systeembeheermodule ; Moederbord ; Geheugenmodule ; Processormodule ; Voeding ; Insteekkaart ; Voorpaneelbord ; Achterpaneelbord ; Voedingssysteembord ; Schijfbackplane ; Interne systeemuitbreiding kaart ; Andere moederbord ; Processor board ; Power unit ; Power module ; Power management board ; Chassis achterpaneel board ; Systeem chassis ; Sub chassis ; Andere chassis board ; Disk drive bay ; Perifere bay ; Device bay ; Ventilator koeling ; Koeleenheid ; Kabelverbinding ; Geheugenapparaat ; Systeembeheersoftware ; BIOS ; Intel (r) ME ; Systeembus ; Groep ; Intel (r) ME ; Externe omgeving ; Batterij ; Verwerkingsblad ; Connectiviteitsschakelaar ; Processor / geheugenmodule ; I / O-module ; Processor I / O-module ; Beheercontrollerfirmware ; IPMI-kanaal ; PCI-bus ; PCI-expressbus ; SCSI-bus ; SATA / SAS-bus ; Processor voorkant bus".split(";");
156
+l.RealmNames=";; Redirection ;; Hardware Asset ; Remote Control ; Storage ; Event Manager ; Storage Admin ; Agent Presence Local ; Agent Presence Remote ; Circuit Breaker ; Network Time ; General Information ; Firmware Update ; EIT ; LocalUN ; Endpoint Access Control ; Endpoint Access Control Beheerder ; Gebeurtenislogboeklezer ; Auditlogboek ; ACL-domein ;;; Lokaal systeem".split(";");l.WatchdogCurrentStates={1:"Niet begonnen",2:"Gestopt",4:"Rennen",8:"Niet meer geldig",16:"Geschorst"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),
157
+F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),D={1:"",2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"Beveiligingsbeheerder",17:"RCO",18:"Redirection Manager",19:"Firmware Update Manager",20:"Beveiligingsauditlogboek",21:"Netwerktijd",22:"Netwerk administratie",23:"Opslagbeheer",24:"Event Manager",25:"Circuit Breaker Manager",
158
+26:"Agent Presence Manager",27:"Draadloze configuratie",28:"EAC",29:"KVM",30:"Gebruikersaanmeldingsgebeurtenissen",32:"Scherm leegmaken",33:"Watchdog-evenementen",1600:"Bevoorrading gestart",1601:"Provisioning voltooid",1602:"ACL-vermelding toegevoegd",1603:"ACL-vermelding gewijzigd",1604:"ACL-vermelding verwijderd",1605:"ACL-toegang met ongeldige referenties",1606:"ACL-status van binnenkomst",1607:"TLS-status gewijzigd",1608:"TLS-servercertificaatset",1609:"TLS-servercertificaat verwijderen",1610:"TLS Trusted Root Certificate toegevoegd",
159
+1611:"TLS Trusted Root Certificate verwijderd",1612:"TLS vooraf gedeelde sleutelset",1613:"Kerberos-instellingen gewijzigd",1614:"Kerberos hoofdsleutel gewijzigd",1615:"Flash Versleten tellers Reset",1616:"Power Package gewijzigd",1617:"Stel Realm Authentication Mode in",1618:"Upgrade Client naar Admin Control Mode",1619:"Unprovisioning Begonnen",1700:"Power Up uitgevoerd",1701:"Uitschakelen uitgevoerd",1702:"Power Cycle uitgevoerd",1703:"Reset uitgevoerd",1704:"Stel opstartopties in",1800:"IDER-sessie geopend",
160
+1801:"IDER-sessie gesloten",1802:"IDER ingeschakeld",1803:"IDER uitgeschakeld",1804:"SoL-sessie geopend",1805:"SoL-sessie gesloten",1806:"SoL ingeschakeld",1807:"SoL uitgeschakeld",1808:"KVM-sessie gestart",1809:"KVM-sessie be\u00ebindigd",1810:"KVM ingeschakeld",1811:"KVM uitgeschakeld",1812:"VNC-wachtwoord 3 keer mislukt",1900:"Firmware bijgewerkt",1901:"Firmware-update mislukt",2E3:"Beveiligingsauditlogboek gewist",2001:"Beveiligingsauditbeleid gewijzigd",2002:"Beveiligingsauditlogboek uitgeschakeld",
161
+2003:"Beveiligingsauditlogboek ingeschakeld",2004:"Beveiligingsauditlogboek ge\u00ebxporteerd",2005:"Beveiligingsauditlogboek hersteld",2100:"Intel® ME Time Set",2200:"TCPIP-parameters ingesteld",2201:"Hostnaam ingesteld",2202:"Domeinnaam ingesteld",2203:"VLAN-parameterset",2204:"Linkbeleid instellen",2205:"IPv6-parameters ingesteld",2300:"Global Storage Attributes Set",2301:"Opslag EACL gewijzigd",2302:"Opslag FPACL gewijzigd",2303:"Opslag schrijven",2400:"Waarschuwing geabonneerd",2401:"Melding afgemeld",
162
+2402:"Gebeurtenislogboek gewist",2403:"Gebeurtenislogboek bevroren",2500:"CB-filter toegevoegd",2501:"CB-filter verwijderd",2502:"CB-beleid toegevoegd",2503:"CB-beleid verwijderd",2504:"CB Standaardbeleid ingesteld",2505:"CB Heuristics Option Set",2506:"CB Heuristics State Cleared",2600:"Agent Watchdog toegevoegd",2601:"Agent Watchdog verwijderd",2602:"Agent Watchdog-actieset",2700:"Draadloos profiel toegevoegd",2701:"Draadloos profiel verwijderd",2702:"Draadloos profiel bijgewerkt",2800:"EAC Posture Signer SET",
163
+2801:"EAC ingeschakeld",2802:"EAC uitgeschakeld",2803:"EAC Posture State",2804:"EAC-opties instellen",2900:"KVM-aanmelding ingeschakeld",2901:"KVM-aanmelding uitgeschakeld",2902:"KVM-wachtwoord gewijzigd",2903:"KVM-toestemming geslaagd",2904:"KVM-toestemming mislukt",3E3:"Opt-in beleidswijziging",3001:"Toestemmingscode-gebeurtenis verzenden",3002:"Start opt-in geblokkeerde gebeurtenis"};l.GetAuditLogExtendedDataStr=function(a,b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,2+b.charCodeAt(1));
164
+if(1603==a)return 0==b.charCodeAt(1)?b.substring(3):null;if(1605==a)return["Ongeldige ME-toegang","Ongeldige MEBx-toegang"][b.charCodeAt(0)];if(1606==a){var c=["Gehandicapt","Ingeschakeld"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+=","+b.substring(3));return c}return 1607==a?"Afgelegen"+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(0)]+", Lokaal"+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+","+["NoAuth","Auth","Gehandicapt"][b.charCodeAt(4)]:1619==a?
165
+["BIOS","MEBx","Lokale MEI","Lokale WSMAN","Externe WSAMN"][b.charCodeAt(0)]:1900==a?"Van"+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" naar"+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"Van"+["Geen","KVM","Allemaal"][b.charCodeAt(0)]+" naar"+["Geen","KVM","Allemaal"][b.charCodeAt(1)]:3001==a?["Succes","3 keer mislukt"][b.charCodeAt(0)]:
166
+null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
167
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
168
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
169
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
170
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
171
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
172
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
173
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
174
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
175
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
176
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
177
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
178
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
179
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
180
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
181
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
182
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
183
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
184
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
185
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
186
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
187
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
188
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
189
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
190
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
191
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
192
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
193
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
194
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
195
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
196
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
197
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
198
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
199
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
200
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
201
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
202
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
203
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
204
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
205
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
206
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
207
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
208
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
209
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
210
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
211
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
212
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
213
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
214
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
215
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
216
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
217
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
218
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
219
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
220
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
221
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
222
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
223
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
224
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
225
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
226
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
227
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
228
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
229
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
230
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
231
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
232
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
233
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
234
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
235
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
236
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
237
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
238
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
239
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
240
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
241
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
242
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
243
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
244
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
245
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
246
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
247
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
248
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
249
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
250
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
251
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
252
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
253
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
254
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
255
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
256
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
257
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
258
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
259
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
260
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
261
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
262
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
263
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
264
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
265
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
266
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
267
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
268
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
269
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
270
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
271
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
272
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
273
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
274
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
275
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
276
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
277
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
278
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
279
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
280
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
281
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
282
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
283
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
284
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
285
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
286
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
287
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
288
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
289
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
290
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
291
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
292
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
293
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
294
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
295
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
296
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
297
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
298
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
299
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
300
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
301
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
302
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
303
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
304
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
305
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
306
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
307
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
308
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
309
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
310
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
311
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
312
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
313
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
314
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
315
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
316
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
317
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
318
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
319
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
320
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
321
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
322
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
323
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
324
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
325
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
326
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
327
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
328
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
329
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
330
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
331
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
332
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
333
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
334
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
335
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
336
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
337
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
338
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
339
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
340
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
341
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
342
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
343
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
344
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
345
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
346
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
347
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
348
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
349
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
350
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
351
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
352
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
353
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
354
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
355
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
356
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
357
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
358
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
359
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
360
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
361
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
362
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
363
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
364
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
365
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
366
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
367
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
368
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
369
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
370
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
371
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
372
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
373
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
374
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
375
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
376
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
377
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
378
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
379
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
380
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
381
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
382
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
383
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
384
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
385
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
386
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
387
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
388
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
389
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
390
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
391
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
392
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
393
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
394
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
395
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
396
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
397
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
398
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
399
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
400
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
401
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
402
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
403
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
404
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
405
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
406
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
407
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
408
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
409
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
410
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
411
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
412
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
413
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
414
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
415
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
416
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
417
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
418
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
419
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
420
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
421
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
422
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
423
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
424
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
425
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
426
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
427
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
428
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
429
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
430
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
431
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
432
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
433
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
434
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
435
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
436
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
437
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
438
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
439
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
440
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
441
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
442
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
443
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
444
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
445
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
446
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
447
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
448
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
449
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
450
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
451
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
452
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
453
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
454
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
455
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
456
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
457
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
458
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
459
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
460
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
461
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
462
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
463
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
464
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
465
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
466
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
467
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
468
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
469
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
470
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
471
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
472
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
473
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
474
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
475
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
476
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
477
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
478
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
479
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
480
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
481
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
482
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
483
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
484
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
485
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
486
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
487
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
488
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
489
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
490
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
491
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
492
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
493
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
494
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
495
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
496
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
497
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
498
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
499
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
500
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
501
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
502
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
503
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
504
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
505
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
506
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
507
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
508
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
509
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
510
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
511
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
512
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
513
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
514
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
515
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
516
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
517
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
518
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
519
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
520
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
521
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
522
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
523
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
524
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
525
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
526
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
527
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
528
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
529
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
530
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
531
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
532
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
533
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
534
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
535
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
536
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
537
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
538
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
539
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
540
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
541
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
542
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
543
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
544
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
545
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
546
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
547
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
548
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
549
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
550
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
551
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
552
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
553
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
554
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
555
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
556
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
557
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
558
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
559
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
560
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
561
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
562
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
563
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
564
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
565
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
566
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
567
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
568
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
569
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
570
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
571
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
572
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
573
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
574
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
575
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
576
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
577
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
578
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
579
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
580
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
581
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
582
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
583
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
584
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
585
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
586
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
587
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
588
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
589
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
590
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
591
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
592
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
593
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
594
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
595
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
596
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
597
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
598
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
599
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
600
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
601
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
602
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
603
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
604
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
605
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
606
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
607
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
608
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
609
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
610
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
611
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
612
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
613
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
614
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
615
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
616
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
617
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
618
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
619
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
620
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
621
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
622
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
623
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
624
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
625
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
626
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
627
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
628
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
629
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
630
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
631
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
632
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
633
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
634
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
635
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
636
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
637
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
638
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
639
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
640
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
641
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
642
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
643
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
644
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
645
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
646
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
647
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
648
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
649
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
650
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
651
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
652
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
653
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
654
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
655
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
656
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
657
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
658
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
659
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
660
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
661
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
662
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
663
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
664
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
665
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
666
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
667
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
668
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
669
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
670
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
671
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
672
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
673
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
674
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
675
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
676
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
677
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
678
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
679
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
680
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
681
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
682
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
683
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
684
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
685
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
686
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
687
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
688
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
689
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
690
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
691
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
692
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
693
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
694
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
695
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
696
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
697
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
698
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
699
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
700
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
701
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
702
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
703
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
704
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
705
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
706
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
707
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
708
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
709
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
710
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
711
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
712
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
713
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
714
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
715
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
716
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
717
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
718
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
719
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
720
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
721
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
722
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
723
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
724
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
725
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
726
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
727
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
728
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
729
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
730
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
731
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
732
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
733
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
734
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
735
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
736
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
737
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
738
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
739
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
740
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
741
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
742
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
743
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
744
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
745
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
746
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
747
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
748
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
749
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
750
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
751
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
752
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
753
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
754
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
755
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
756
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
757
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
758
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
759
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
760
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
761
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
762
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
763
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
764
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
765
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
766
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
767
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
768
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
769
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
770
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
771
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
772
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
773
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
774
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
775
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
776
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
777
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
778
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
779
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
780
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
781
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
782
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
783
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
784
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
785
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
786
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
787
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
788
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
789
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
790
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
791
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
792
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
793
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
794
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
795
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
796
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
797
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
798
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
799
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
800
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
801
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
802
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
803
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
804
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
805
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
806
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
807
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
808
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
809
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
810
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
811
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
812
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
813
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
814
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
815
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
816
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
817
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
818
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
819
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
820
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
821
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
822
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
823
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
824
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
825
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
826
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
827
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
828
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
829
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
830
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
831
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
832
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
833
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
834
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
835
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
836
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
837
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
838
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
839
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
840
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
841
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
842
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
843
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
844
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
845
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
846
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
847
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
848
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
849
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
850
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
851
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
852
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
853
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
854
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
855
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
856
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
857
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
858
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
859
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
860
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
861
+k.Init();return k},ZLIB=ZLIB||{};
862
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
863
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
864
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
865
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
866
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
867
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
868
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
869
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
870
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
871
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
872
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
873
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
874
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
875
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
876
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
877
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
878
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
879
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
880
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
881
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
882
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
883
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
884
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
885
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
886
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
887
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
888
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
889
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
890
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
891
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
892
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
893
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
894
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
895
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
896
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
897
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
898
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
899
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
900
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
901
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
902
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
903
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
904
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
905
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
906
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
907
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
908
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
909
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
910
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
911
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
912
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
913
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
914
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
915
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
916
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
917
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
918
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
919
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
920
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
921
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
922
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
923
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
924
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
925
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
926
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
927
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
928
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
929
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
930
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
931
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
932
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
933
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
934
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
935
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
936
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
937
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
938
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
939
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
940
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
941
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>Bezig met laden...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
942
+StatusStrs=["Losgekoppeld","Verbinden...","Opstelling...","Verbonden"],scriptstate,t,t2,rsepass=null;
943
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
944
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR + LF":"LF";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
945
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
946
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
947
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
948
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
949
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="verbinding verbreken"}function getCurrentMeshNode(){return currentMeshNode}
950
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="Start Capture";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
951
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
952
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
953
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
954
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
955
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
956
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
957
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
958
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="Aansluiten";QH(5,"Losgekoppeld");go(100)}
959
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
960
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
961
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
962
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
963
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
964
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
965
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
966
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
967
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
968
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
969
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"Synchroniseer klok",3,syncClockEx,"Intel AMT-klok synchroniseren met deze computer?")}
970
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","Kan tijd niet instellen, status ="+d):0!=a.Body.ReturnValue?messagebox("","Kan tijd niet instellen, fout: "+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}var DMTFPowerStates=";;Zet aan;Lichte slaap;Diepe slaap;Power cycle (Soft uit);Uit - Moeilijk;Slaapstand (zacht);Zacht uit;Power cycle (Off-hard);Reset hoofdbus;Diagnostische onderbreking (NMI);Niet toepasbaar;Uit - Zacht sierlijk;Uit - Hard sierlijk;Hoofdbus reset sierlijk;Power cycle (Off - Soft gracieus);Power cycle (Off - Hard gracieus);Diagnostische onderbreking (INIT)".split(";");
971
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>Onbekend</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"Zet aan"==a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&
972
+3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=[", Ingeplugd",", Op batterij"][q.PowerSource]);d+=TableEntry("Kracht",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>Geen</i>":EscapeHtml(c);d+=TableEntry("Naam & domein",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?d+=
973
+TableEntry("Systeem-ID",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("Systeem-ID",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" geactiveerd in Admin Control Mode (ACM)",4==k.ProvisioningMode&&(p=" geactiveerd in Client Control Mode (CCM)",b=9));d+=TableEntry("Intel® ME","v"+
974
+getItem(amtlogicalelements,"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,
975
+n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);
976
+r&&(e+=", Omleidingspoort");n&&(e+=", Serieel via LAN");p&&(e+=", IDE-omleiding");w&&(e+=", KVM");""==e&&(e=" Geen");d+=TableEntry("Actieve functies",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="Primair beeldscherm",7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["Primair beeldscherm","Secundair beeldscherm",
977
+"3e scherm"][p.DefaultScreen]),e='<span title="'+format("De standaard externe weergave is {0}",e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+=", Poort 5900 ingeschakeld"),1==p.OptInPolicy&&(e+=","+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"seconden opt-in":"tweede opt-in")),e+=","+p.SessionTimeout+" minuut"+(0<p.SessionTimeout?"s":"")+" sessie-time-out",9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService?((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&
978
+1))&&(e+=", Blanking toegestaan"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("Extern bureaublad",addLinkConditional(e,"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="Onbekende staat",r=amtsysstate.IPS_OptInService.response.OptInRequired,
979
+0==r&&(e="Niet verplicht"),1==r&&(e="Alleen vereist voor KVM"),4294967295==r&&(e="Altijd vereist"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("Toestemming van de gebruiker",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(r=
980
+e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==r&&(d+=TableEntry("Energiebeleid",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&(d+=TableEntry("Datum Tijd",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";
981
+e+=AddButton("Stroomacties ...","showPowerActionDlg()")+" ";e+=AddButton("Staat opslaan ...","saveEntireAmtState()")+" ";e+=AddButton("Script uitvoeren ...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");QH(17,d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+
982
+" Het wijzigen van netwerkinstellingen kan ertoe leiden dat deze pagina niet meer beschikbaar is.");d=d+"<br><h2>Algemene instellingen</h2>"+TableStart();e="";"<i>Geen</i>"!=c&&(1==q.SharedFQDN&&(e=", gedeeld met OS"),0==q.SharedFQDN&&(e=", verschillend van OS"));d+=TableEntry("Naam & domein",addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));c="Gehandicapt";1==q.DDNSUpdateEnabled?c="Elk ingeschakeld"+q.DDNSPeriodicUpdateInterval+" minuten, TTL is"+q.DDNSTTL+" minuten":1==q.DDNSUpdateByDHCPServerEnabled&&
983
+(c="Update door DHCP-server");d+=TableEntry("Dynamische DNS",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"Draadloze interface":"Bekabelde interface")+"</h2>";d+=TableStart();d+=TableEntry("Linkstatus",1==c.LinkIsUp?
984
+"Link is up":"Link is verbroken");if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 / AC"),14==c.LinkPolicy[l]&&e.push("Sx / AC"),16==c.LinkPolicy[l]&&e.push("S0 / DC"),224==c.LinkPolicy[l]&&e.push("Sx / DC");0==e.length&&e.push("");d+=TableEntry("Linkbeleid",addLinkConditional(0==e.length?"Niet beschikbaar":"Beschikbaar in: "+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("Mac adres",
985
+c.MACAddress));amtwirelessif==a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("Staat",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("Radio State",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+", SSID: "+(s?s:"<i>Geen</i>")));amtwirelessif!=a&&(d+=TableEntry("Reageer op ping",addLinkConditional(["Gehandicapt","ICMP-reactie",
986
+"RMCP-reactie","ICMP & RMCP-reactie"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"Automatisch met DHCP-server":"Statisch IP-adres",1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("IPv4-status",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("IPv4-adres",isIpAddress(c.IPAddress,"Geen"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("IPv4-gateway / masker",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,
987
+"Geen")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("IPv4-domeinnaamserver",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r="Gehandicapt",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||
988
+isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?"Ingeschakelde, automatische en handmatige adressen":"Ingeschakeld, automatische adressen");d+=TableEntry("IPv6-status",addLinkConditional(r,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=","),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];
989
+d+=TableEntry("IPv6-adres",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("IPv6-adres","Geen");isIpAddress(c.CurrentDefaultRouter)&&(d+=TableEntry("IPv6 standaardrouter",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("IPv6-domeinnaamserver",e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&
990
+PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<amtversion||11==amtversion&&5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
991
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
992
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"Linkbeleid",3,showLinkPolicyDlgEx,a,b)}}
993
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
994
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Linkbeleid",format("Kan nieuw linkbeleid niet instellen, fout {0}",d))}
995
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>Geen</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
996
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>Vertrouwd</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+" bytes,<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+
997
+c+")>Downloaden</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" bytes,<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>Downloaden</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
998
+function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
999
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"Bewaar de volledige Intel® AMT-status",3,saveEntireAmtStateOk)}}
1000
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"Bewaar de volledige Intel® AMT-status",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1001
+function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1002
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>Primair beeldscherm</option><option value=1>Secundair beeldscherm</option>";9<amtversion&&(c+="<option value=2>3e scherm</option>");c+='</select><div style=padding-top:4px>Standaardweergave</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Sessietime-out (minuten)</div></div>';
1003
+1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Time-out voor aanmelding (seconden)</div></div>');c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Uitgeschakeld, aanbevolen</option><option value=1>Ingeschakelde, oude KVM-kijkers</option></select><div style=padding-top:4px>Poort 5900</div></div>";
1004
+c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>5900 wachtwoord (8 tekens)</div></div>";9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+='<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Gehandicapt</option><option value=1>Ingeschakeld</option></select><div style=padding-top:4px title="Deze functie wordt niet vaak ondersteund">Scherm leegmaken</div></div>');
1005
+c+="</div>";setDialogMode(11,"Instellingen voor extern bureaublad",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}
1006
+function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1007
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1008
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("Instellingen voor extern bureaublad",format("Fout {0}, kan geen waarden instellen.",d))}
1009
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("Fout",format("Schermblindering kon niet worden ingesteld, blanco wordt mogelijk niet ondersteund op dit systeem ({0}).",d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}
1010
+function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1011
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("Un-freeze Log","FreezeLog(0)"):AddButton("Logboek bevriezen","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="Filter" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1012
+AddRefreshButton("PullEventLog(1)")+AddButton("Logboek opschonen","ClearLog()")+AddButton("Opslaan...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1013
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>Bron</b><td class=r1><b>Omschrijving</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1014
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1015
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"Gebeurtenislogboek wissen?"),setDialogMode(1,"Logboek",3,ClearLogEx))}function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("Logboek","Kan niet wissen, fout: "+d):PullEventLog()})}
1016
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("Tijd",c.Time.toLocaleString());a+=addHtmlValue("Bron",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("Omschrijving",c.Desc);a+=MoreStart();a+=addHtmlValue("Apparaatadres",c.DeviceAddress);a+=addHtmlValue("Entiteit",c.Entity);a+=addHtmlValue("Entiteitsinstantie",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];a+=addHtmlValue("Gegevens",
1017
+d);a+=addHtmlValue("Offset",c.EventOffset);a+=addHtmlValue("Sensortype",c.EventSensorType);a+=addHtmlValue("Ernst",c.EventSeverity);a+=addHtmlValue("Bron Type",c.EventSourceType);a+=addHtmlValue("Type",c.EventType);a+=addHtmlValue("Sensor nummer",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("Event # {0} Details",b+1),a)}}
1018
+function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1019
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1020
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Beheer evenementabonnees.<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],
1021
+b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>Geen abonnementen gevonden.</i></div><br>");e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("Nieuw abonnement","newSubscriptionButton()"));b+="<br><td class=r1>"+
1022
+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"Duwen",3:"Duw met ACK",4:"Evenementen",5:"Trekken"};
1023
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("Bestemming",a.Destination);d+=addHtmlValue("Filter",c);d+=addHtmlValue("Bezorgingsmodus",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"Abonnement"+(b+1),xxAccountAdminName?
1024
+5:1,deleteSubscriptionButton,d+"</div>",b)}}
1025
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
1026
+Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1027
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>Duwen</option><option value=PushWithAck>Duw met ACK</option></select><div style=padding-top:4px>Type</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+='<option value="'+subscriptionsFilters[c].InstanceID+'">'+subscriptionsFilters[c].CollectionName.substring(13)+
1028
+"</option>";b+="</select><div style=padding-top:4px>Filter</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>URL</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>Geen</option><option value=1>Verteren</option></select><div style=padding-top:4px>Verificatie</div></div>";
1029
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Gebruikersnaam</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Wachtwoord</div></div>";b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>Argumenten</div></div>";
1030
+setDialogMode(11,"Event-abonnement toevoegen",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1031
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1032
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="Onbekend;Andere;Ingeschakeld;Gehandicapt;Afsluiten;Niet toepasbaar;Ingeschakeld maar offline;In Test;Uitgesteld;Rustig;Beginnend".split(";");
1033
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"Gehandicapt":"Ingeschakeld",c&2&&(b+=", Op slot"),c&4&&(b+=", Bijna vol"),c&8&&(b+=", Vol"),c&16&&(b+=", Geen sleutel"),c="<h1>Instellingen auditlogboek</h1>"+TableStart(),c+=TableEntry("Staat",b),c+=TableEntry("Opslag",a[0].CurrentNumberOfRecords+" record (s),"+a[0].PercentageFree+"% vrij"),c+=TableEntry("Overschrijf beleid",2==a[0].OverwritePolicy?"Verpakt wanneer vol":"Overschrijft nooit"),c+=TableEnd(),QH(55,
1034
+c),amtstack.GetAuditLog(processAuditLog1))}
1035
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="Filter" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("Opslaan...","SaveAuditLog()")+AddButton("Logboek opschonen","ClearAuditLog()"))+"<br>");if(0==c.length)d="Geen controlelogboekgebeurtenissen gevonden.";else{var e=0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>Tijd</b><td class=r1 style=width:260px><b>Initiator</b><td class=r1><b>Action</b>";
1036
+for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+=","+q.Event);null!=q.ExStr&&(p+=","+q.ExStr);""!=k&&""!=r&&(k+=",");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",
1037
+minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","Intel AMT-auditlogboek",auditLog)}
1038
+function ClearAuditLog(b){QH(66,"Auditlogboek wissen?");setDialogMode(1,"Auditlogboek",3,ClearAuditLogEx)}function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}
1039
+function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("Auditlogboek","Fout: "+d)}
1040
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("Tijd",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("Initiator",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("Adres",a.NetAddress));d+=addHtmlValue("Toepassing",a.AuditApp);d+=addHtmlValue("Evenement",a.Event);if(null!=a.ExStr)d+=addHtmlValue("Uitgebreide gegevens",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<e.length&&(e+=","),e+=a.Ex.charCodeAt(c);""!=e&&
1041
+(d+=addHtmlValue("Gegevenswaarden",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("Gegevensreeks",a.Ex.substring(2)))}messagebox("Auditgebeurtenis #"+(b+1)+" Details",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;
1042
+function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1043
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1044
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1045
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1046
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"Gehandicapt";var c=(1==xxTlsSettings[b].MutualAuthentication?"Wederzijdse verificatie TLS":"TLS voor serververificatie")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" en niet-TLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1047
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("Externe TLS-beveiliging",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("Lokale TLS-beveiliging",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Beheer Intel® AMT-certificaten voor deze computer.<br><br>");
1048
+if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>Geen certificaten gevonden.</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b=", Trusted Root"),xxCertificates[d].XPrivateKey&&(b=", Prive sleutel"),d==xxTlsCurrentCert&&(b+=", TLS cert"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+b+"</i></div></div>";for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||
1049
+(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>Niet-toegewezen priv\u00e9sleutelpaar #"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("Certificaat toevoegen ...","addCertButton()")+AddButton("Certificaat afgeven ...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1050
+function showKeyPairDetails(b){setDialogMode(11,"Sleutelpaar #"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"Dit is een openbaar / priv\u00e9-certificaatsleutelpaar dat niet bij certificaten hoort. Deze invoer moet tijdelijk zijn.")}var xxCertSubjectNames={CN:"Gemeenschappelijke naam",O:"Organisatie",OU:"Organisatie-eenheid",S:"Staat / provincie",ST:"Staat / provincie",L:"Plaats",C:"Land",SN:"Achternaam",GN:"Gegeven naam"};
1051
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("Certificaat",c.X509Certificate.length+" bytes,<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>Downloaden</a>");a+=addHtmlValue("Vertrouwde root",c.TrustedRootCertficate?"Ja":"Nee");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("Prive sleutel","Cadeau"));a+='<br><div style="border-bottom:1px solid gray"><i>Certificaatonderwerp</i></div><br>';for(var d in c.XSubject)c.XSubject[d]&&
1052
+(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>Certificaat van uitgever</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"Certificaat -"+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},
1053
+function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}var xxDragDropCertFiles=null;
1054
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>Certificaatbestand</div></div>")+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>Trusted Root Certificate</option><option value=0>Kettingcertificaat</option></select><div style=padding-top:4px>Certificaattype</div></div>",
1055
+setDialogMode(11,"Certificaat toevoegen",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1056
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1057
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>Certificaat wachtwoord</div></div>",
1058
+b+='<br><div style="border-bottom:1px solid gray"><i>Intel® AMT-certificaat</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>Gemeenschappelijke naam</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>Organisatie</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>Staat / provincie</div></div>",
1059
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>Land</div></div>",b+='<div>Certificaatgebruik</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',b+="<li><label><input type=checkbox id=d11_cu4 checked>TLS-server (HTTPS)</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>TLS-client (HTTPS)</label></li>",
1060
+b+="<li><label><input type=checkbox id=d11_cu6>E-mailbeveiliging</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>Code ondertekening</label></li>",b+="<li><label><input type=checkbox id=d11_cu8>Tijdstempel</label></li>",b+="</ul>",setDialogMode(11,"Certificaat afgeven",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1061
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1062
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("Certificaat afgeven","Kan certificaat niet decoderen / decoderen.")}
1063
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1064
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("Certificaat afgeven","Kan sleutelpaar niet genereren. Toestand: "+d):0!=a.Body.ReturnValue?messagebox("Certificaat afgeven","Kan sleutelpaar niet genereren,"+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1065
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("Certificaat afgeven","Kan sleutelpaar niet genereren. Toestand: "+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"Niet-vertrouwd basiscertificaat"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=
1066
+xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("Certificaat afgeven","Kan certificaat niet ondertekenen."):(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,
1067
+q.length-25),GenerateKeyPairResponse4))}}function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("Certificaat afgeven","Kan sleutelpaar niet genereren. Toestand: "+d):PullCertificates()}function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("Certificaat toevoegen","Kan certificaat, fout niet toevoegen"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}
1068
+function certificateRemoved(b,c,a,d){200!=d?messagebox("Certificaat verwijderen","Kan certificaat, fout niet verwijderen"+d):PullCertificates()}function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1069
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>Geen certificaat, TLS uitgeschakeld</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>Certificaat</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
1070
+b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="Door komma\'s gescheiden lijst met algemene namen van certificaten die op afstand verbinding kunnen maken."><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="naam1, naam2"><div style=padding-top:4px>Externe CN\'s</div></div>';setDialogMode(11,"TLS-instellingen",
1071
+3,showSetTlsSecurityDlgOk,b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);getSelectElement("tlsremote").value=(1==xxTlsSettings[c].MutualAuthentication?
1072
+2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1073
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1074
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1075
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1076
+b,c,d){200!=d?messagebox("","Kan tijd niet instellen, status ="+d):0!=c.Body.ReturnValue?messagebox("","Kan tijd niet instellen, fout: "+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,0,1,a[1]);statusbox("TLS-instellingen",
1077
+"Nieuwe beveiligingsinstellingen toepassen ...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1078
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","Kan TLS-beveiliging niet instellen, status ="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1079
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","Kan TLS-beveiliging niet instellen, status ="+d):0!=a.Body.ReturnValue?messagebox("","Kan TLS-beveiliging niet instellen, fout: "+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1080
+function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1081
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1082
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1083
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1084
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}var watchdogEnabledStates="Onbekend;Andere;Ingeschakeld;Gehandicapt;Afsluiten;Niet toepasbaar;Ingeschakeld maar offline;In Test;Uitgesteld;Rustig;Beginnend".split(";"),watchdogMonitoredEntity="Onbekend;Andere;Besturingssysteem;Besturingssysteem opstartproces;Besturingssysteem afsluiten;Firmware-opstartproces;BIOS-opstartproces;Toepassing;Serviceprocessor".split(";");
1085
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("Maximale waakhonden",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" waakhonden");b+=TableEntry("Maximaal totaal aantal acties",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" acties");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Beheer Intel® AMT-agentwaakhonden.<br><br>";if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||
1086
+0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>Geen waakhond voor aanwezigheid van agenten gevonden.</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="Actie toevoegen ..." onclick=addWatchdogAction(event,'+
1087
+c+")>";a.transitions&&(b+='<input type=button style=float:right value="Acties verwijderen ..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+=": Te loggen gebeurtenis")}""!=d&&(b+="<div style=padding:12px>"+
1088
+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("Watchdog toevoegen ...","AddWatchdog()"));b+="<br>";QH(60,b)}}function getWatchdogTransitionStr(b){if(31==b)return"Elke staat";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1089
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("Omschrijving",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("Gecontroleerde entiteit",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("Huidige toestand",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("Ingeschakelde staat",watchdogEnabledStates[b.EnabledState]);c+=addHtmlValue("Opstartinterval",
1090
+b.StartupInterval+" seconde (n)");c+=addHtmlValue("Time-outinterval",b.TimeoutInterval+" seconde (n)");setDialogMode(11,format("Waakhond {0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1091
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Naam</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="Genereer willekeurige DeviceID">'+addLink("Apparaat ID","GenerateWatchdogGuid()")+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Opstarten (seconden)</div></div>";
1092
+b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Time-out (seconden)</div></div>";setDialogMode(11,"Watchdog toevoegen",3,AddWatchdogOk,b);AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}
1093
+function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1094
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1095
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("Waakhond","Kan watchdog niet toevoegen, fout #"+d):PullWatchdog()}
1096
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>Van<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>Naar<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"Watchdog-actie toevoegen",
1097
+3,addWatchdogActionOk,d+"</table><br>Actie ondernemen<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>Schrijf naar gebeurtenislogboek<br />",a);addWatchdogActionUpdate();haltEvent(b)}function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1098
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Watchdog-actie","Kan watchdog-actie niet toevoegen, fout #"+d):PullWatchdog()}
1099
+function deleteWatchdogActions(b,c){setDialogMode(11,"Verwijder Watchdog-acties",3,deleteWatchdogActionsOk,"Alle acties voor deze waakhond verwijderen?",xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1100
+function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Watchdog-actie","Kan watchdog-acties niet verwijderen, fout #"+d):PullWatchdog()}
1101
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"Alle IP-pakketten",2054:"Alle ARP-pakketten"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"Sta toe, graaf",1:"Laten vallen, tellen",2:"Tarieflimiet",3:"Toestaan",4:"Laten vallen"},xxSystemDefenceFilters={HdrProtocolID:1,HdrDestAddress:2,HdrDestMask:2,HdrSrcAddress:2,
1102
+HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,TCPFlagsOn:3,TCPFlagsOff:3};function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}
1103
+function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1104
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1105
+a}b+=TableStart();c="<i>Geen</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("Standaard bekabeld beleid",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d=1==d?d+" pakket":d+" pakketten",b+=TableEntry((0==c?"Bedrade":"Draadloze")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>Beheer Intel® AMT-systeembeschermingsbeleid.<br><br>";if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+=
1106
+"<div style=padding-left:15px><i>Geen systeembeschermingsbeleid gevonden.</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+c+")><div style=padding-top:3px><b>"+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";
1107
+b+="<tr><td class=r1 style=padding-left:15px><br>Beheer Intel® AMT-systeembeschermingsfilters.<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>Geen systeembeschermingsfilters gevonden.</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||(d="Geheel Ethernet-protocol"+
1108
+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" Bij"+a.FilterProfileData+" pakket / sec"),1==a.ActionEventOnMatch&&(d+=", Evenement op wedstrijd"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=xxSystemDefense.AMT_IPHeadersFilter.responses[c];(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||
1109
+(d="Geheel Ethernet-protocol"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==a.FilterProfile&&(d+=" Bij"+a.FilterProfileData+" pakket / sec");1==a.ActionEventOnMatch&&(d+=", Evenement op wedstrijd");var q=0;for(e in xxSystemDefenceFilters)a[e]&&q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+
1110
+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("Filter toevoegen ...","AddDefenseFilter()")+AddButton("Beleid toevoegen ...","AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}
1111
+function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1112
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1113
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1114
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1115
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>Geen";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1116
+"Standaard systeembeschermingsbeleid",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>Standaardbeleid</div></div>",b)}}
1117
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
1118
+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1119
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">Intel (r) AMT Ethernet-poort '+
1120
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1121
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("Standaard systeembeschermingsbeleid","Kan beleid, fout niet instellen"+d):PullSystemDefense()}
1122
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Naam</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Ethernet IP-pakketfilter<option value=1>Ethernet ARP-pakketfilter<option value=2>IPv4-pakketfilter<option value=3>IPv6-pakketfilter</select><div style=padding-top:4px>Type</div></div>";b+=
1123
+'<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="Optionele regels" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Overeenkomende regels</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Uitgaand / verzonden<option value=1>Inkomend / ontvangen</select><div style=padding-top:4px>Richting</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Sta toe, graaf<option value=1>Laten vallen, tellen<option value=2>Tarieflimiet<option value=3>Toestaan<option value=4>Laten vallen</select><div style=padding-top:4px>Actie</div></div>";
1124
+b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Pakketten / seconde</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>Niets doen<option value=1>Evenement op wedstrijd</select><div style=padding-top:4px>Logboek</div></div>";setDialogMode(11,"Voeg System Defense Filter toe",
1125
+3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1126
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1127
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="Hdr"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1128
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1129
+function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("Voeg System Defense Filter toe","Kan filter niet toevoegen, fout #"+d):PullSystemDefense()}
1130
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="Ethernet-verkeer",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="Geheel Ethernet-protocol"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="IP-verkeer",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="Alle IP-protocol"+d.HdrIPVersion));var p;p=""+addHtmlValue("Naam",EscapeHtml(d.Name));p+=addHtmlValue("Type",e);p+=
1131
+addHtmlValue("Overeenkomend verkeer",a);p+=addHtmlValue("Richting",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("Filter"+a,e));p+=addHtmlValue("Evenement op wedstrijd",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,"Ethernet-filter #"+
1132
+d.InstanceID,5,showFilterDetailsOk,p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("Filter verwijderen","Kan filter niet verwijderen, zorg ervoor dat het niet in gebruik is."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1133
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>Naam</div></div><div style=height:26px;margin-top:4px><select id=policytx title="Standaardactie die moet worden ondernomen voor uitgaand verkeer" style=float:right;width:133px><option value=0>Allow<option value=1>Laten vallen<option value=2>Sta toe, graaf<option value=3>Laten vallen, tellen<option value=4>Toestaan, tellen, evenement<option value=5>Laten vallen, tellen, evenement</select><select id=policyrx style=float:right;width:133px title="Standaardactie voor inkomend verkeer"><option value=0>Toestaan<option value=1>Laten vallen<option value=2>Sta toe, graaf<option value=3>Laten vallen, tellen<option value=4>Toestaan, tellen, evenement<option value=5>Laten vallen, tellen, evenement</select><div style=padding-top:4px>Standaard TX / RX</div></div>';b+=
1134
+"<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1135
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>Filter toevoegen</div></div>"}setDialogMode(11,"Voeg systeembeschermingsbeleid toe",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}
1136
+function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1137
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>Dit beleid bevat geen filters.</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Verwijderen","removeFilterButton("+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+GetFilterById(xxAddDefensePolicyFilters[c]).Name+
1138
+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1139
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1140
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("Voeg systeembeschermingsbeleid toe","Kan beleid niet toevoegen, fout #"+d):PullSystemDefense()}
1141
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("Naam",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("Voorrang",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"Laten vallen":"Toestaan";1==c.TxDefaultCount&&(d+=", Graaf");1==c.TxDefaultMatchEvent&&(d+=", Evenement");a+=addHtmlValue("Standaard TX-actie",d);d=1==c.RxDefaultDrop?"Drop":"Allow";1==c.RxDefaultCount&&(d+=", Count");1==c.RxDefaultMatchEvent&&
1142
+(d+=", Event");a+=addHtmlValue("Standaard RX-actie",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=addHtmlValue("Filter #"+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("Het beleid #",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}
1143
+function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("Beleid verwijderen","Kan het beleid niet verwijderen, zorg ervoor dat het niet in gebruik is."):PullSystemDefense()}var xxWireless;function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}function wifiRefresh(){xxdialogMode||PullWireless()}
1144
+var xxWifiState={3:"Gehandicapt",32768:"Ingeschakeld in S0",32769:"Ingeschakeld in S0, Sx / AC"},xxRadioState={2:"Aan, verbonden",3:"Uit",6:"Aan, niet verbonden"},xxWifiAuthenticationMethod={1:"Andere",2:"Open",3:"Gedeelde sleutel",4:"WPA PSK",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"Andere",2:"WEP",3:"TKIP-RC4",4:"CCMP-AES",5:"Geen"};function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1145
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>Draadloze profielen</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>Draadloze profielen die Intel® AMT zal gebruiken voor netwerkconnectiviteit.<br><br>";for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+
1146
+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("Verwijderen",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>Geen draadloze profielen aanwezig</i><br>");e+="<br><td class=r2>";e=xxAccountAdminName?e+TableEnd(AddButton("Nieuw profiel","showWifiNewProfile()")):e+
1147
+TableEnd("");QH(22,e+"<br>")}}}function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"Draadloze status",3,wifiStateDlg,b)}}
1148
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1149
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("Profielnaam",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("Verificatie",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("Versleuteling",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("Prioriteit",b.Priority);messagebox("Draadloos profiel",c+"</div>")}}
1150
+function wifiRemoveButton(b){xxdialogMode||(QH(66,format('Draadloos profiel "{0}" verwijderen?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"Draadloos profiel",3,function(){removeWifiButtonEx(b)}))}function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}
1151
+function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1152
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"Voeg draadloos profiel toe",3,function(){addWifiProfile()});updateWifiDialog()}}
1153
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1154
+PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1155
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1156
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1157
+var DMTFCPUStatus="Onbekend;Ingeschakeld;Uitgeschakeld door gebruiker;Uitgeschakeld door BIOS (POST-fout);Inactief;Andere".split(";"),DMTFMemType="Onbekend;Andere;DRAM;Synchrone DRAM;DRAM in cache opslaan;EDO;EDRAM;VRAM;SRAM;RAM;rom;Flash;EEPROM;FEPROM;EPROM;CDRAM;3DRAM;SDRAM;SGRAM;RDRAM;DDR;DDR-2;BRAM;FB-DIMM;DDR3;FBD2;DDR4;LPDDR;LPDDR2;LPDDR3;LPDDR4".split(";"),DMTFMemFormFactor=";Andere;Onbekend;SIMM;slokje;Chip;DIP;ZIP;Eigen kaart;DIMM;TSOP;Rij van chips;RIMM;SODIMM;SRIMM;FB-DIM".split(";"),DMTFProcFamilly=
1158
+{191:"Intel® Core ™ 2 Duo-processor",192:"Intel® Core ™ 2 Solo-processor",193:"Intel® Core ™ 2 Extreme-processor",194:"Intel® Core ™ 2 Quad-processor",195:"Intel® Core ™ 2 Extreme mobiele processor",196:"Intel® Core ™ 2 Duo mobiele processor",197:"Intel® Core ™ 2 Solo mobiele processor",198:"Intel® Core ™ i7-processor",199:"Dual-core Intel® Celeron®-processor"},HardwareInventory;
1159
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("Opslaan...","SaveHardwareLog()")+" Hardware-informatie wordt verzameld tijdens het opstarten van het systeem.");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>Platform</h2>"+FullTable({Computermodel:c.Model,
1160
+Fabrikant:c.Manufacturer,Versie:c.Version,Serienummer:c.SerialNumber,"Systeem-ID":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>Plint</h2>";b+=FullTable({Fabrikant:d.Manufacturer,Productnaam:d.Model,Versie:d.Version,Serienummer:d.SerialNumber,Itemtag:d.Tag,"Vervangbaar?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({Verkoper:a.CIM_BIOSElement.response.Manufacturer,Versie:q,"Datum van publicatie":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",
1161
+{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>Processor "+(parseInt(e)+1)+"</h2>",b+=FullTable({Fabrikant:trademarks(d.Manufacturer),Familie:DMTFProcFamilly[c.Family],Versie:trademarks(d.Version),"Maximale socketsnelheid":c.MaxClockSpeed+" MHz",Toestand:DMTFCPUStatus[c.CPUStatus]},"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=a.CIM_PhysicalMemory.responses[e],b+="<h2>Geheugenmodule "+(+e+1)+"</h2>",b+=
1162
+FullTable({"Bank Label":c.BankLabel,Fabrikant:c.Manufacturer,Serienummer:c.SerialNumber,Grootte:parseInt(c.Capacity/1048576)+" MB",Vormfactor:DMTFMemFormFactor[c.FormFactor],Type:DMTFMemType[c.MemoryType],Itemtag:c.Tag,"Onderdeel nummer":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>Opslag media "+(parseInt(e)+1)+"</h2>",b+=FullTable({Model:d.Model,Serienummer:""==d.SerialNumber?"Unknown":
1163
+d.SerialNumber,Grootte:parseInt(Math.round(1E3*c.MaxMediaSize/1048576))+" MB"},"");b+="<br>";QH(18,b);updateSystemStatus()}}function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","Informatie over Intel AMT-hardware",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}
1164
+function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"Intel® AMT-energiebeleid",3,showPowerPolicyDlgOk,c)}}
1165
+function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1166
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1167
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1168
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1169
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>Beheer de Intel® AMT-gebruikersaccounts voor deze computer.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=a.AccessPermission){2==
1170
+q&&(p+="Gehandicapt,");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a.Rijken[c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="Accountant,");p=0<=a.Realms.indexOf(3)?p+"Beheerder":1==k?p+"1 rijk":p+(k+" rijken")}else p+="Beheerder",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("Bewerk...",
1171
+"changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="Schakel verborgen accounts in" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");xxAccountAdminName&&(c+=AddButton("Nieuw account",
1172
+"newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1173
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"Bewerk account",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1174
+function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"Nieuw account",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1175
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("Accountfout","Ongeldige parameters");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,
1176
+k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1177
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">Beheerder</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1178
+function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["Alleen lokaal","Alleen netwerk","Alles (lokaal en netwerk)"];
1179
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("Naam",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("Staat",1==xxAccountEnabledInfo[b].Enabled?"Ingeschakeld":"Gehandicapt"));if(e==xxAccountAdminName)a+=addHtmlValue("Toestemming","Beheerder");else{var a=a+addHtmlValue("Toestemming",xxUserPermissions[c.AccessPermission]),q="";if(0<=c.Realms.indexOf(3))q="Beheerder",
1180
+0<=c.Realms.indexOf(20)&&(q+=", Auditor");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+=","),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="Geen");a+=addHtmlValue("Rijken","")+"<b>"+q+"</b>"}messagebox("Account"+e,a+"</div>")}}
1181
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("Browser",c,browserResponse,null,!0))}
1182
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>(Leeg)":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>Fout #"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1183
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1184
+function onTerminalStateChange(b,c){c4.value=0==c?"Aansluiten":"verbinding verbreken";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1185
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["UTF8-terminal","Uitgebreide ASCII","Intel ASCII"];
1186
+function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["Intel (F10 = ESC + [OM)","Alternatief (F10 = ESC + 0)","VT100 + (F10 = ESC + [OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1187
+function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR + LF",terminal.m.lineFeed="\r\n")}
1188
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="Stop Capture";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),b+".txt")}delete terminal.m.capture;
1189
+c3.value="Start Capture"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"Plakken",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1190
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1191
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1192
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1193
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1194
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("Datakanaal",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1195
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1196
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1197
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1198
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1199
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1200
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1201
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1202
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"Aansluiten":"verbinding verbreken";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("Extern bureaublad","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("Extern bureaublad","The device indicated that this type of connection of not supported."):
1203
+5E4==b.disconnectCode?messagebox("Extern bureaublad","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1204
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b=", Soft-KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"Instellingen voor extern bureaublad",3,showDesktopSettingsChanged))}
1205
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1206
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1207
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1208
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1209
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1210
+"8px"),center()))}function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"Externe toetsenbordinvoer",3,showDeskTypeEx,'<div>Voer tekst in en klik op OK om deze op afstand te typen met een Amerikaans Engels toetsenbord. Zorg ervoor dat u de externe cursor op de juiste positie plaatst voordat u doorgaat.<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1211
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1212
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1213
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1214
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1215
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1216
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1217
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1218
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1219
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1220
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1221
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1222
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>Wortel</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+'">'+EscapeHtml(r.substring(0,
1223
+70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1224
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1225
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1226
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1227
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1228
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="Selecteer alles",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||0==
1229
+d));QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"Selecteer Geen":"Selecteer alles";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24PasteButton",(0<p24filetreelocation.length||0==
1230
+d)&&null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}
1231
+function p24createfolder(){setDialogMode(11,"Nieuwe map",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}
1232
+function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"Verwijderen",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1233
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"Hernoemen",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1234
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1235
+function p24uploadFile(){setDialogMode(11,"Upload bestand",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;
1236
+function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1237
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"Plakken",3,p24pasteFileEx,b)}
1238
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1239
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1240
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1241
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24filetable"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1242
+function getFileSizeStr(b){return 1==b?"1 byte":format("{0} bytes",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();
1243
+function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1244
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"Download bestand",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+a+" />"))}
1245
+function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1246
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1247
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"Upload bestand",10,p24uploadFileCancel,"<div id=p24dfileName>Opzetten...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1248
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1249
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1250
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1251
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1252
+function iderStart(b){if(!xxdialogMode){b="<div>Mount disk images op een Intel® AMT computer - Experimenteel.</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+NoBreak("Floppy (.img)")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+NoBreak("CDROM (.iso)")+"</div></div>";setDialogMode(11,"Opslagomleiding",3,iderStart2,b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>Bij de volgende keer opstarten<option value=1>Bevallig<option value=2>Onmiddellijk</select><div>Sessie start</div></div>");
1253
+b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=b.substring(1,b.length-1))}}
1254
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("Fout opslagomleiding","Er moet ten minste \u00e9\u00e9n schijfimagebestand worden geselecteerd.");else if(1==Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("Fout opslagomleiding","Ongeldig .img-bestand.");else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%2048)messagebox("Fout opslagomleiding","Ongeldig .iso-bestand.");
1255
+else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,Q("iderStartType").value)}}
1256
+function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1257
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1258
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"Server":"")+"IDE-R-sessie </b>, verbonden,"+ider.m.bytesFromAmt+" in,"+ider.m.bytesToAmt+" uit.")}var heatMapWidth=600,heatMapDividor={};
1259
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CDROM </b>, blokken zijn {0} bytes.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b> Floppy </b>, blokken zijn {0} bytes.",512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=6*(Math.floor(a/
1260
+(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1261
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"Opslagomleiding",a?a:3,onIderDialogPromptOk,c.html)}
1262
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1263
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"Gehandicapt",32769:"BIOS ingeschakeld",32770:"OS inschakelen",32771:"BIOS & OS ingeschakeld"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1264
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1265
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1266
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1267
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1268
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="Gehandicapt",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="Ingeschakeld,"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("Omgevingsdetectie",addLink(c,"editEnvironmentDetection()"));b+=TableEntry("Opties voor gebruikersinitiatie",
1269
+addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>Geen</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("Door gebruiker gestarte verbinding",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));c="<i>Geen</i>";if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<
1270
+c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("Door waarschuwing ge\u00efnitieerde verbinding",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>Geen</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",
1271
+"Periodiek");if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format(", elke {0} seconden",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("Periodieke verbinding",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Beheer Intel® AMT servers voor extern beheer.<br><br>";if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>Geen externe servers gevonden.</i></div><br>";
1272
+else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>Beheer HTTP-proxy's die worden gebruikt voor beheerverbindingen.<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,0==c.length)b+="<div style=padding-left:15px><br><i>Geen proxy's geconfigureerd.</i></div><br>";else for(d in c)b+=
1273
+"<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("Server toevoegen...","AddRemoteAccessServer()"),a&&(d+=AddButton("Proxy toevoegen ...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+d);QH(58,b)}}var xxEditMpsPolicyType;
1274
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="Gebruiker gestart");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(Geen)",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;
1275
+c+="</select><div>Primaire server</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Extern<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA - Intern</select><div>Primair MPS-type</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";c+="<option value=-1>(Geen)";for(e in xxCiraServers)c+=
1276
+"<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>Secundaire server</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Extern<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA - Intern</select><div>Secundair MPS-type</div></div>")}e=0;d&&(e=d.TunnelLifeTime);c+=
1277
+"<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>Tunnel levensduur (seconden)</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">Periodiek, tijdsinterval<option value=1"+(1==
1278
+a?" selected":"")+">Dagelijks, eenmaal per dag",c+="</select><div>Type trigger</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("{0} Verbinding",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1279
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1280
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"Triggerinterval (seconden)":"Tijd van de dag (UU: MM)"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1281
+function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1282
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1283
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1284
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1285
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="Voer maximaal 5 domeinachtervoegsels in. Als de computer zich buiten deze domeinen bevindt, worden de lokale Intel® AMT-poorten gesloten en zijn externe serververbindingen actief.<br><br>");0==editEnvironmentDetectionTmp.length&&(c+="<i>Geen intranetdomeinen, omgevingsdetectie uitgeschakeld.</i><br>");
1286
+for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Verwijderen","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");
1287
+1==b?QH(69,c):setDialogMode(11,"Omgevingsdetectie",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1288
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("Omgevingsdetectie",format("Kan server, status {0} niet toevoegen",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("Omgevingsdetectie",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}
1289
+function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"Door gebruiker gestarte tunnel",3,editUserInitiatedCiraDlg,b)}}
1290
+function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1291
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("Toegangsnaam",c.AccessInfo);c.Port&&(a+=addHtmlValue("Haven",c.Port));c.CN&&(a+=addHtmlValue("Gemeenschappelijke naam",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,0<c.indexOf("Username")?(a+=addHtmlValue("Verificatietype","Gebruiker & Pass / Server-Auth TLS"),a+=addHtmlValue("Externe ID",getInstance(xxMPSUserPass,
1292
+c).RemoteID)):(a+=addHtmlValue("Verificatietype","TLS voor certificaat / wederzijdse verificatie"),c=getInstance(xxCertificates,c),a+=addHtmlValue("Certificaatnaam",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Externe server #"+(b+1),c,showServerDetailsOk,a)}
1293
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1294
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}function showServerDetailsOk2(b,c,a,d){408==d?messagebox("Externe server verwijderen","Kan server niet verwijderen, toegang geweigerd."):PullRemoteAccess()}function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1295
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("Toegangsnaam",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("DNS-suffex",c.NetworkDnsSuffix),a=a+addHtmlValue("Proxy-type",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Http-proxy #"+(b+1),c,showProxyDetailsOk,a,b)}
1296
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("HTTP-proxy verwijderen","Kan HTTP-proxy niet verwijderen, toegang geweigerd."):PullRemoteAccess()}
1297
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>Hostnaam FQDN<option value=3>IPv4-adres<option value=4>IPv6-adres</select><div>Connectie type</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>Haven</div></div>';b+=
1298
+"<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>DNS-achtervoegsel</div></div>";setDialogMode(11,"Voeg HTTP-proxy toe",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1299
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN / hostnaam","IPv4-adres","IPv6-adres"][Q("d2type").value])}function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}
1300
+function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("Voeg proxyserver toe","Kan proxy, status niet toevoegen"+d):0!=a.Body.ReturnValue?messagebox("Voeg proxyserver toe",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1301
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>Hostnaam FQDN<option value=3>IPv4-adres</select><div>Connectie type</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";a+='<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>Server poort</div></div>';
1302
+a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Server algemene naam</div></div>";a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";0<b.length&&(a+="<option value=1>Certificaat");a+="<option value=2>Gebruikersnaam wachtwoord</select><div>Verificatietype</div></div>";a+="<span id=d2utype>";a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Gebruikersnaam</div></div>";
1303
+a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Sterk wachtwoord</div></div>";a+="</span>";a+="<span id=d2ctype>";a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>Certificaat</div></div></span>";setDialogMode(11,"Voeg externe server toe",3,AddRemoteAccessServerOk,
1304
+a);AddRemoteAccessServerUpdate()}
1305
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+Q("d2cert").value+
1306
+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1307
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("Voeg internetserver toe",format("Kan server, status {0} niet toevoegen",d)):0!=a.Body.ReturnValue?messagebox("Voeg internetserver toe",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1308
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"Hostnaam":"IPv4-adres");QV("d2utype",2==Q("d2auth").value);QV("d2ucn",
1309
+3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1310
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>Naam & domein</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+(b?"selected":"")+'>Gedeeld, hetzelfde als OS<option value="false" '+
1311
+(b?"":"selected")+">Toegewijd, anders dan besturingssysteem</select><div>Naam delen</div></div>");setDialogMode(11,"Computer naam",3,editNameDlgOk,c)}}function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1312
+function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"Dynamische DNS-client",3,showEditDnsDlgOk)}}
1313
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1314
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"Intel® AMT-functies",3,featuresDlgOk))}
1315
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("Fout","RedirectionService, RequestStateChange-fout"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,0,function(a,c,d,e){200!=e?messagebox("Fout","KVMRedirectionSAP, RequestStateChange-fout"+
1316
+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("Fout","RedirectionService PUT-fout"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}
1317
+function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"Toestemming van de gebruiker",3,consentDlgOk)}}
1318
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="Koppel het lokale adres;Lokaal netwerkadres;Wereldwijd adres;Door gebruiker geconfigureerd;Niet toegestaan;DAD in uitvoering;Geldig;verouderd;voorkeur / verouderd;niet meer geldig;botsing;niet toegestaan".split(";");
1319
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+","+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"IPv6-adressen voor bedrade interface":"IPv6-adressen voor draadloze interface",1,null,a+TableEnd())}}
1320
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 uitgeschakeld");QH("d21l1","IPv6 ingeschakeld, automatisch");QH("d21l2","IPv6 ingeschakeld, automatisch + handmatig adres");d21o0.checked=!c;d21o1.checked=c&&
1321
+!ipv6manual;d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"IPv6-ondersteuning voor bedrade interface":"IPv6-ondersteuning voor draadloze interface",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1322
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1323
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1324
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1325
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1326
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv6-ondersteuning",format("Kan IPv6-status niet instellen, fout {0}",d))}
1327
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"Intel® AMT Ping-reactie",3,showPingActionDlgOk)}}
1328
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1329
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","Automatische configuratie met DHCP-server");QH("d21l2","Statische configuratie met onderstaande IPv4-instellingen");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=!d21o1.checked;c30.value=isIpAddress(b.IPAddress,
1330
+"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"IPv4-instellingen",3,showIPSetupDlgOk)}}
1331
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6 ingeschakeld, automatisch + handmatig adres"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1332
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1333
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv4-instellingen",format("Kan netwerkparameters niet instellen, fout {0}",d))}amtPowerBootCapabilities=null;function showPowerActionDlg(){xxdialogMode||(statusbox("Krachtige acties","Mogelijkheden controleren ..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1334
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","Opstarten",2);b&1&&(addOption("d5actionSelect","Reset",10),addOption("d5actionSelect","Power cyclus",5),addOption("d5actionSelect","Stroomstoring",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect","Schakel diagnostisch in",300),b&1&&
1335
+addOption("d5actionSelect","Reset naar diagnose",301));9<amtversion&&b&1&&(addOption("d5actionSelect","OS Wake from Standby",500),addOption("d5actionSelect","OS energiebesparing",501),addOption("d5actionSelect","Soft-off",12),addOption("d5actionSelect","Zachte reset",14),addOption("d5actionSelect","Slaap",4),addOption("d5actionSelect","Slaapstand",7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&addOption("d5actionSelect","Schakel naar BIOS",100),b&1&&addOption("d5actionSelect","Reset naar BIOS",
1336
+101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","Schakel in op Secure Erase",104),b&1&&addOption("d5actionSelect","Reset naar Secure Erase",105));b&1&&addOption("d5actionSelect","Reset naar IDE-R Floppy",200);b&2&&addOption("d5actionSelect","Schakel de IDE-R-diskette in",201);b&1&&addOption("d5actionSelect","Reset naar IDE-R CDROM",202);b&2&&addOption("d5actionSelect","Schakel in op IDE-R CDROM",203);b&1&&addOption("d5actionSelect","Reset naar PXE",400);b&2&&addOption("d5actionSelect",
1337
+"Schakel PXE in",401);addOption("d5actionSelect","Maatwerk actie ...",999);5<amtversion&&addOption("d5actionSelect","Toestemming van de gebruiker ...",998);setDialogMode(5,"Krachtige acties",3,powerActionDlgCheck)}else messagebox("Krachtige actie",format("Kan systeemmogelijkheden niet krijgen, fout {0}",d))}
1338
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Krachtactie voltooid."):QH(66,format("Power action error # {0}.",e));setDialogMode(1,"Krachtige actie",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="Uitvoering van Intel® Remote Secure Erase bevestigen?<br>Voer indien nodig Secure Erase-wachtwoord in.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>Wachtwoord</div></div><br><div style=color:red><b> WAARSCHUWING: </b> Hierdoor worden gegevens op het externe systeem gewist.</div>",
1339
+rsepass=1,setDialogMode(11,"Krachtige acties",3,powerActionDlg,b)):powerActionDlg()}
1340
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("Krachtige actie","Status controleren ...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&(c=!1);c?amtstack.Get("IPS_OptInService",
1341
+powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1342
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1343
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1344
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"Aangepaste krachtactie",
1345
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1346
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Krachtactie voltooid."):QH(66,format("Power action error # {0}.",e));setDialogMode(1,"Krachtige actie",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=Q("d24BiosSecureBoot").checked,
1347
+AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=Q("d24LockSleepButton").checked,
1348
+AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),statusbox("Krachtige actie","Status controleren ..."),amtstack.Get("IPS_OptInService",
1349
+powerActionResponse0,0,1))}
1350
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("Krachtige actie",format("Fout # {0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"Toestemming van de gebruiker",11,powerActionSendConsent),checkConsentDisplay(),consentChanged()):(statusbox("Krachtige actie","Aanmelden starten ..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,0,1)):connectDesktopConsent?
1351
+(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Toestemming van de gebruiker","Geen toestemming van de gebruiker nodig."):(statusbox("Krachtige actie","Opstartinstellingen ophalen ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1352
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Krachtige actie",format("Fout #",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Fout met toestemming van gebruiker",a.Body.ReturnValueStr.replace(/_/g," ")):(d6ConsentText.value="",setDialogMode(6,"Toestemming van de gebruiker",11,powerActionSendConsent),checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",
1353
+function(a,b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1354
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("Krachtige actie","Gebruikers toestemming sturen ..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1355
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("Krachtige actie",format("Fout # {0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Toestemming van de gebruiker","Toestemming van gebruiker geslaagd."):(statusbox("Krachtige actie","Status controleren ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1356
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("Krachtige actie",format("Fout # {0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=AvdPowerDlg.IDERBootDevice,e.LockKeyboard=
1357
+AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&(e.RSEPassword=
1358
+AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,!0===e.SecureErase&&
1359
+0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("Opstartactie: "+b);console.log("Opstartinstellingen instellen: "+ObjectToString2(e));statusbox("Krachtige actie","Opstartinstellingen instellen ...");
1360
+amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,function(a,b,c,d){200!=d?messagebox("Krachtige actie",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1361
+function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("Krachtige actie",format("PUT AMT_BootSettingData, fout # {0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("Krachtige actie","Volgende opstart instellen ..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1362
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1363
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1364
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("Krachtige actie","Krachtactie uitvoeren ...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);targetPowerAction=b;11==
1365
+b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("Krachtige actie","Volgende opstartactieset.")}}function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"Krachtactie voltooid."),setDialogMode(1,"Krachtige actie",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}
1366
+function consentChanged(){QE("c49",6==d6ConsentText.value.length)}function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1367
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1368
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1369
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1370
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Beheer Intel® AMT-opslag voor deze computer.<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+" / "+r):e+
1371
+"Wortel";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("Downloaden","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" bytes</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==n&&(wsstack.comm.PerformAjax("",
1372
+function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>Geen bestanden gevonden.</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+(q?AddButton("Uploaden...","UploadToStorage()"):
1373
+""));QH(61,a)}else QH(61,"Kan opslaggegevens niet laden ...<br/>"+AddButton("Vernieuwen","PullStorage()"))}function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("Verkoper",b));""!=c&&(e+=addHtmlValue("Toepassing",c));e+=addHtmlValue("Naam",a);e+=addHtmlValue("Grootte",q.size+" bytes");q.link&&(e+=addHtmlValue("Koppeling",q.link));setDialogMode(11,"Opslagitem",5,showStorageDetailsEx,e,d)}}
1374
+function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}function storageDeleteResponse(b,c){200!=c?messagebox("Opslag",format("Kan bestand (ERR {0}) niet verwijderen, controleer of de computer is ingeschakeld.",c)):PullStorage()}function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}
1375
+function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}
1376
+function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}function PushToStorageResponse(b,c,a){200!=c?messagebox("Opslag",format("Kan bestand (ERR {0}) niet pushen, controleer of de computer is ingeschakeld.",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1377
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>Selecteer een klein bestand om naar de opslag te uploaden en voer een leverancier, applicatie en bestandsnaam in.<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>Upload bestand</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+
1378
+'<br><div style=height:16px><input id=mstoragevendor placeholder="Verkoper" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>Naam van de leverancier</div></div>';a+='<br><div style=height:16px><input id=mstorageapplication placeholder="App" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>Naam van de toepassing</div></div>';a+='<br><div style=height:16px><input id=mstoragefilename placeholder="Bestandsnaam" maxlength=11 style=float:right;width:240px><div>Bestandsnaam</div></div>';
1379
+a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>Mime type</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="Indien ingesteld, maakt u een link naar deze inhoud vanaf de hoofdwebpagina">Koppeling</div></div><br>';a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';a+="</datalist>";
1380
+a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"Opslag uploaden",3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}
1381
+function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1382
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1383
+b}
1384
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1385
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," dagen").replace("H"," uren").replace("M"," minuten");b=b.replace(" 1 dag"," 1 dag").replace(" 1 uur"," 1 uur").replace(" 1 minuut"," 1 minuut");return b.substring(0,b.length-1)}
1386
+function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1387
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Beheer wekalarmen.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, wakker worden "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," Bij"),void 0!=d[c].Interval&&(a+=" en elk"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&(a+=", verwijder wanneer u klaar bent"),
1388
+b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("Bewerk...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>Geen wekkeralarmen geregistreerd.</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("Verwijder alle alarmen","RemoveAllAlarms()")+AddButton("Toevoegen",
1389
+"showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1390
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1391
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"Verwijder alle wekalarmen",3,RemoveAllAlarmsEx,"Verwijderen van alle wekalarmen bevestigen?")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1392
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1393
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1394
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"Voeg een nieuw alarm toe",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1395
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1396
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("Alarm toevoegen",format("Alarm toevoegen mislukt. Status: {0}. <br/> Controleer of het alarm voor de toekomst is.",d)):0!=c.Body.ReturnValue?messagebox("Alarm toevoegen",format("Kan alarm niet toevoegen {0}. <br/> Controleer of het alarm voor de toekomst is.",c.Body.ReturnValueStr)):
1397
+PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("Alarm bewerken",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1398
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("Naam",c.ElementName)+addHtmlValue("Wakker worden",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("Intern",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("Na het ontwaken",1==c.DeleteOnCompletion?"Alarm verwijderen":"Houd alarm")+"</div>";messagebox(format("Alarm {0}",c.ElementName),a);setDialogMode(11,"Alarm"+c.ElementName,
1399
+5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"Script uitvoeren",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1400
+function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1401
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1402
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("Script uitvoeren",
1403
+"Ongeldig scriptbestand.")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1404
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1405
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1406
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1407
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1408
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("{0} bewerken",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1409
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1410
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1411
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1412
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1413
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1414
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1415
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1416
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1417
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1418
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1419
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1420
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1421
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1422
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1423
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1424
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1425
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1426
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"Binair bestand,"+script_BlockScript[c].vars[d].value.length+" bytes":"Niet ingesteld");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+="<tr><td style=height:3px></table>"}b+=
1427
+"</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">Start uw script door blokken vanaf de linkerkant naar dit scriptvak te slepen en neer te zetten.<div>');QH("scriptblocks",b+"<div style=height:80px></div>");for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1428
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1429
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"Nieuw script",3,script_newScriptDlgOk,"<br>De scripteditor resetten en wissen?")}
1430
+function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1431
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("Scriptcompileerfout",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","Gestopt");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,_mode:"Firmware"}),editscriptstate.wsstack=wsstack,editscriptstate.amtstack=
1432
+amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}
1433
+function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["Gestopt","Rennen","Onderbroken"];
1434
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="Gestopt, geen script";b&&null!=b&&(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,b.ip)));50<c.length&&(c=c.substring(0,
1435
+50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1436
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"Scriptblok",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1437
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1438
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1439
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1440
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1441
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1442
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1443
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}var httpErrorTable={200:"OK",401:"Authenticatiefout",408:"Time-outfout",601:"WSMAN-parseerfout",602:"Kan HTTP-antwoordkop niet parseren",603:"Onverwachte HTTP-opsomming",604:"Onverwachte HTTP-pull-reactie",997:"Ongeldig verteringsrijk"};
1444
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("Fout # {0}",b)),401==b&&QH(5,'Authenticatiefout<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1445
+function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1446
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1447
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1448
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("Oproepfout",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}
1449
+function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}
1450
+function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="Vernieuwen" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}
1451
+function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}
1452
+function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}
1453
+function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1454
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1455
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1456
+</script>
\ No newline at end of file
public/commander-pt.htm
new
+1469
@@ -0,0 +1,1469 @@
1
+<!DOCTYPE html><html lang="pt" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAEZ0FNQQAAsY58+1GTAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAMISURBVHjadJPPb9t0GMY//rbJaEKSxoPFQQ1WxhQ7RaGoIDEpTBMqgk7iBvwNKJdJXDnssEMl7pMGfwOH9YBYh0AglYiBBNKa0cSGNpiRxs7aJE2aH7aTmkPXqTvwXt7L8z56pef5SEEQcHYMwyjWarX3rLr1tu3YOQAlpZhqVv1J1/VvNU0rn9VLpwbtdlspb5ZLNdNcuZBKF1NKmuS8DECn28axm7ScZlnP5b4vXinelmXZfmrQbreVjbsbN3r9YSmTLbA/Ps92K8FgFAbAdYcsLXRRk10af/9BPBa5vXpt9aYsy7YAKG+WS73+sJS+eJmKneZe5QWEiHHreoJb1xNEInHu/Bzw3cM45zNv0usPS+XNcglAGIZRrJnmSiZbYOtRhF93ZvHcHoPRlN3GkL4Ho5HHeOxRqbv8sHVM+uVFaqa5YhhGUVpfXw+6hwP86DJ3fgkzK44hOGZuLkH7KIQIxuw9dkk812Hqu0wmPh9djZIKG8wnogirbpFS0jy0YOqPcMcurjvh3Vc7fPHpHF9//iLLyja75p/sNWxazj73t9qklDRW3ULYjk1yXmb3Xw/P9fA9n35/AMD0yAIgGQ8zOtxnMhFM/ClG/YjkvIzt2Mye5un5Lr4HY9el5RwA2tOsY9FzCCFBICCYOdlPRigphU63jZKEwWDAweMDJt7kmXINBhOkIEAQQiLMpczzJzcpBaFmVRy7iZ4RdA/7TKcBknTymOd5APT6PiAhghlmpHO8ocdw7CZqVkXour7Ycppriwsuy7koEgKQANDy+dPCIokQkhTiciFG4aJPy2mu6bq+OKtpWlXPmZWGtc2H77yOhOD+gxE7//T45sdHzEjQ7Y0IgmPeKszxwdUwTuM39Fyuomla9bTKyY27Gx/3+sMvlYU8lXqI36sef+1UkCS4pMZZyuu89oqL09gmHot8snpt9StZljtnYUqWN8vv10yzcCGV/ux/YFrTc7lK8UrxnizLnWdoPINzvlarLVl1K2879ktPcN5Ts2pV1/UHmqZVz+r/GwBWYYCoNUz0KwAAAABJRU5ErkJggg==");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=Conectar onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>Desconectado</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>Status do sistema</a><p id=go14 class=nav1 onclick=go(14)><a>Área de trabalho remota</a><p id=go24 class=nav1 onclick=go(24)> <a>arquivos</a><p id=go13 class=nav1 onclick=go(13)><a>Serial-over-LAN</a><p id=go2 class=nav1 onclick=go(2)><a>Informações hardware</a><p id=go6 class=nav1 onclick=go(6)><a>Registro de Eventos</a><p id=go15 class=nav1 onclick=go(15)><a>Log de auditoria</a><p id=go21 class=nav1 onclick=go(21)><a>Armazenamento</a><p id=go8 class=nav1 onclick=go(8)><a>Configurações de rede</a><p id=go17 class=nav1 onclick=go(17)><a>Configurações da Internet</a><p id=go16 class=nav1 onclick=go(16)><a>Configurações de segurança</a><p id=go19 class=nav1 onclick=go(19)><a>Presença de agente</a><p id=go18 class=nav1 onclick=go(18)><a>Defesa do sistema</a><p id=go11 class=nav1 onclick=go(11)><a>Contas de usuário</a><p id=go22 class=nav1 onclick=go(22)><a>Assinaturas</a><p id=go23 class=nav1 onclick=go(23)><a>Wake Alarms</a><p id=go20 class=nav1 onclick=go(20)><a>Editor de scripts</a><p id=go12 class=nav1 onclick=go(12)><a>Navegador WSMAN</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value="Mapa de disco" onclick=iderToggleDiskMap()><input type=button value="Parar sessão do IDE-R" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>Os disquetes são blocos de 512 bytes.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CDROM, os blocos são 2048 bytes.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="Script de parada" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>Script em execução</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>O firmware deste computador deve ser atualizado, <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>por favor verifique aqui</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>Carregando...</h1></div><div id=p1 style=display:none><h1>Status do sistema</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>Informações hardware</h1><span id=18></span></div><div id=p6 style=display:none><h1>Registro de Eventos</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>Configurações de rede</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>Contas de usuário</h1><span id=23></span></div><div id=p12 style=display:none><h1>Navegador WSMAN</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=Inquerir style=margin:4px onclick=wsmanQuery()><input type=button value=Claro style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=Filtro style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Terminal serial sobre LAN</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Porta de redirecionamento Intel® AMT ou o recurso Serial-over-LAN está desativado<span id=28>, clique aqui para habilitá-lo.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>O computador remoto não está ligado, clique aqui para emitir um comando de energia.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Ações de poder ..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="Iniciar operação de montagem remota de disco" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Começar captura" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=Conectar onclick=connectTerminal(event) disabled="disabled"> <span id=31>Desconectado.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR + LF" title="Alterne o que a chave de retorno enviará" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="Alternar tamanho do terminal" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Intel (F10 = ESC + [OM)" title="Alterna o tipo de emulação de teclas F1 a F10" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Ascii estendido" title="Alternar tipo de emulação de terminal" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Backspace onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=Colar disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>Área de trabalho remota</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Porta de redirecionamento Intel® AMT ou recurso KVM desativado<span id=43>, clique aqui para habilitá-lo.</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>O computador remoto não está ligado, clique aqui para emitir um comando de energia.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="Vire à esquerda" onclick=drotate(-1)>↺</div><div class=rb title="Vire à direita" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="Alternar modo de tela cheia" onkeypress="return false" onkeydown="return false" value=Cheio onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="Salvar uma captura de tela da área de trabalho remota" onkeypress="return false" onkeydown="return false" value="Salve ..." onclick=deskSaveImage() style=margin-right:3px><input type=button value=Definições... title="Editar configurações da área de trabalho remota" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="Iniciar operação de montagem remota de disco" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="Alterar o estado de energia da máquina remota" onkeypress="return false" onkeydown="return false" value="Ações de poder ..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=Conectar onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>Desconectado.</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>Ganhar<option value=1>Win + Down<option value=2>Win + Up<option value=3>Win + L<option value=4>Win + M<option value=20>Win + R<option value=23>Vitória + Esquerda<option value=24>Vitória + Direita<option value=5>Shift + Vitória + M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=Enviar onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=Tipo onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>Tela em branco </span><span id=53><input id=54 type=checkbox>Apenas visualização </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>Log de auditoria</h1><span id=56></span></div><div id=p16 style=display:none><h1>Configurações de segurança</h1><span id=57></span></div><div id=p17 style=display:none><h1>Configurações da Internet</h1><span id=58></span></div><div id=p18 style=display:none><h1>Defesa do sistema</h1><span id=59></span></div><div id=p19 style=display:none><h1>Presença de agente</h1><span id=60></span></div><div id=p20 style=display:none><h1>Editor de scripts</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>Parado</div><div><input type=button value="View Editor" title="Alternar para a visualização do editor de linha de script" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="View Builder" title="Alternar para bloquear a visualização do editor" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=Novo... title="Limpe o editor de scripts" onclick=script_newScriptDlg()><input type=button value=Carga... title="Carregar um script do arquivo" onclick=script_runScriptDlg()><input type=button value="Salve ..." title="Salvar um script no arquivo" onclick=script_saveScript(event)><input type=button value=Reiniciar title="Compile o script e prepare-se para executá-lo desde o início" onclick=resetScriptButton()><input type=button value=Continuar title="Execute o script a partir do ponto de execução atual" onclick=runScriptButton()><input type=button value=Quebrar title="Pausar a execução do script" onclick=breakScriptButton()><input type=button value=Degrau title="Execute uma etapa do script" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>Construtor de scripts</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="Blocos de filtro ..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>Roteiro</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>Script compilado</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>Variáveis</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>Console</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>Armazenamento</h1><span id=61></span></div><div id=p22 style=display:none><h1>Assinaturas de Eventos</h1><span id=62></span></div><div id=p23 style=display:none><h1>Wake Alarms</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>arquivos</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=Acima> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="Selecionar tudo" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=Renomear onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=Excluir onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="Nova pasta" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=Envio onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=Cortar onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value="cópia de" onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=Colar onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=Atualizar onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">Classificar por nome<option value=2>Ordenar por tamanho<option value=3>Classificar por data<option value=4>Descender por nome<option value=5>Desça por tamanho<option value=6>Desça por data</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>Nome do usuário</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Senha*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Confirme a Senha</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>Local<option value=1>Rede<option value=2>Qualquer</select><div>Permissão</div></div><div>Permissões concedidas</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>* Mínimo de 8 caracteres com maiúsculas, minúsculas, 0-9 e um dos! @ # $% ^ & * () + -</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>Ação de poder</div></div><div><span style=color:red>Atenção:</span>Algumas ações de energia podem resultar em perda de dados e desconectar as sessões de redirecionamento da área de trabalho, do terminal ou do disco.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>Código de consentimento</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>Visor principal<option value=1>Visor secundário<option id=d6ThirdDisplay value=2 style=display:none>Terceira exibição</select><div>Exibição de consentimento</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, Cor<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>Codificação de Imagem</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>Mostrar Cursor do Mouse Local</label><br><label><input type=checkbox id=d7showcad>Mostrar Ctrl-Alt-Del</label><br><label><input type=checkbox id=d7limitFrameRate>Taxa de quadros de limite</label><br><label><input type=checkbox id=d7noMouseRotate>Não gire o mouse</label><br></div><div>Outros ajustes</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">Software KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>Qualidade</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87,5%<option value=768>75%<option value=640>62,5%<option value=512>50%<option value=384>37,5%<option value=256>25%<option value=128>12,5%</select><div style=height:20px>Dimensionamento</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=admin style=float:right;width:220px><div style=height:20px>Nome do usuário</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>Senha</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>Porta de redirecionamento</label><label id=c15 style=display:block><input type=checkbox id=c16>Área de trabalho remota KVM</label><label style=display:block><input type=checkbox id=c17>Redirecionamento de IDE<br></label><label style=display:block><input type=checkbox id=c18>Serial-over-LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>Não requerido<br></label><label><input type=radio name=d10 id=c20 value=1>Necessário apenas para KVM<br></label><label><input type=radio name=d10 id=c21 value=4294967295>Sempre necessário<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Máximo de 32 caracteres"><div title="Máximo de 32 caracteres">Nome do perfil</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Máximo de 32 caracteres"><div title="Máximo de 32 caracteres">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>Prioridade</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>Autenticação</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>Nenhum</select><div>Criptografia</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Comprimento entre 8 e 63 caracteres"><div title="Comprimento entre 8 e 63 caracteres">Senha*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Comprimento entre 8 e 63 caracteres"><div title="Comprimento entre 8 e 63 caracteres">Confirme a Senha</div></div></div><div id=dialog19 style=margin:auto;margin:3px>Isso salvará todo o estado do Intel® AMT desta máquina em arquivo. As senhas não serão salvas, mas alguns dados confidenciais podem ser incluídos.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>Desativado<br><input type=radio name=d20 id=d20b value=1>Resposta ICMP<br><input type=radio name=d20 id=d20c value=2>Resposta RMCP<br><input type=radio name=d20 id=d20d value=3>Resposta ICMP e RMCP<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>Sincronização de endereço IP do sistema operacional</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>endereço de IP</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Marca de sub-rede</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Porta de entrada</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>DNS primário</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>DNS alternativo</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>Desativado<option value=1>Desativado, atualização DHCP<option value=2>ativado</select><div>Cliente DNS dinâmico</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>Intervalo de atualização (minutos)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (segundos)</div></div><div style=font-size:10px><br>O intervalo padrão é 1440 minutos, o TTL padrão é 900 segundos.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>Energizar<option value=10>Redefinir<option value=5>Ciclo de energia<option value=8>Desligar<option id=d24p500 value=500>Despertar do sistema operacional em modo de espera<option id=d24p501 value=501>Economia de energia do SO<option value=999>Definir opções de inicialização</select><div>Comando Remoto</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>Pausa no BIOS</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>Impor inicialização segura</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>Configuração da BIOS</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>Forçar eventos de progresso</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>Bloquear botão liga / desliga</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>Bloquear botão de reset</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>Bloquear botão de suspensão</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>Bloquear teclado</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>Ignorar a senha do BIOS</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>BIOS do Reflash</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>Modo de segurança</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>Use IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Serial-over-LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>Apagar seguro Intel® remoto</label><br></div></div><div>Configurações de inicialização</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Nenhum<option id=ForceDVDBootOption value=1>Forçar inicialização de CD / DVD<option id=ForcePXEBootOption value=2>Forçar inicialização PXE<option id=ForceHDBootOption value=3>Forçar inicialização do disco rígido<option id=ForceDiagBootOption value=4>Forçar inicialização de diagnóstico</select><div>Fonte de Inicialização</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Nenhum<option value=1>Índice 1<option value=2>Índice 2<option value=3>Índice 3<option value=3>Índice 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Inicializar em disquete<option value=1>Inicialize no CDROM</select><div>Dispositivo de inicialização IDER</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Sistema padrão<option id=c45 value=1>Quieto<option id=c46 value=2>Verbose<option id=c47 value=3>Tela em branco</select><div>Verbocidade</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>Senha do RSE</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>Nome do alarme</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Data de vigília (ano-mês-dia)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>Tempo de vigília (hora: min: seg)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Intervalo (dias-horas-min)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>Mantenha o alarme<option value=1>Excluir ao concluir</select></div><div style=padding-top:4px>Depois de acordar</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=Cancelar style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value="Está bem" style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=Excluir style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"Dados inv\u00e1lidos":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",
92
+v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"C\u00e3o de guarda do agente"+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... alterado para"+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"Intrus\u00e3o de caso";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"Uma sess\u00e3o remota Serial Over LAN foi estabelecida.";if(1==c[2])return"Sess\u00e3o Remota Serial Over LAN conclu\u00edda. O controle do usu\u00e1rio foi restaurado.";
93
+if(2==c[2])return"Uma sess\u00e3o remota de redirecionamento de IDE foi estabelecida.";if(3==c[2])return"Sess\u00e3o remota de redirecionamento de IDE conclu\u00edda. O controle do usu\u00e1rio foi restaurado."}if(36==a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="com fio"),4294967293==a?"Todos os filtros de pacotes recebidos foram correspondidos em"+b+" interface.":4294967292==a?"Todos os filtros de pacotes de sa\u00edda foram correspondidos em"+b+" interface.":4294967290==
94
+a?"O filtro de pacotes falsificados foi correspondido em"+b+" interface.":"Filtro"+a+" foi combinado em"+b+" interface.";if(192==a)return 0==c[2]?"Pol\u00edtica de seguran\u00e7a invocada. Algum ou todo o tr\u00e1fego de rede (TX) foi interrompido.":2==c[2]?"Pol\u00edtica de seguran\u00e7a invocada. Algum ou todo o tr\u00e1fego de rede (RX) foi interrompido.":"Pol\u00edtica de seguran\u00e7a invocada.";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"Solicita\u00e7\u00e3o do usu\u00e1rio para conex\u00e3o remota.";
95
+if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"Erro EAC: tentativa de obter postura enquanto o NAC no IntelTM AMT est\u00e1 desativado.";if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"Erro HWA: erro geral"}return 6==a?"Falha na autentica\u00e7\u00e3o"+(c[1]+(c[2]<<8))+" vezes. O sistema pode estar sob ataque.":30==a?"Nenhuma m\u00eddia inicializ\u00e1vel":32==a?"Bloqueio do sistema operacional ou interrup\u00e7\u00e3o de energia":35==a?"Falha na inicializa\u00e7\u00e3o do sistema":37==a?"Firmware do sistema iniciado (pelo menos uma CPU est\u00e1 sendo executada corretamente).":
96
+"Tipo de sensor desconhecido #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);
97
+0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>Local</i>",g=5);3==b.InitiatorType&&(b.Initiator="<i>Porta padr\u00e3o KVM</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);
98
+b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/","http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,
99
+C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,
100
+A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),
101
+g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=
102
+function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
103
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
104
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
105
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
106
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
107
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
108
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
109
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
110
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
111
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
112
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
113
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
114
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
115
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
116
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
117
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
118
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
119
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
120
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
121
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
122
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
123
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
124
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
125
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
126
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
127
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
128
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
129
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
130
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
131
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
132
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
133
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
134
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
135
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
136
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
137
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
138
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
139
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
140
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
141
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
142
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
143
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
144
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
145
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
146
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
147
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
148
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
149
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
150
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
151
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
152
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
153
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="N\u00e3o especificado. ; Nenhuma mem\u00f3ria do sistema est\u00e1 fisicamente instalada no sistema. ; Nenhuma mem\u00f3ria utiliz\u00e1vel do sistema, toda a mem\u00f3ria instalada sofreu uma falha irrecuper\u00e1vel. ; Falha irrecuper\u00e1vel no disco r\u00edgido / dispositivo ATAPI / IDE. ; Falha irrecuper\u00e1vel na placa do sistema. ; Disquete irrecuper\u00e1vel falha no subsistema. ; Falha irrecuper\u00e1vel no controlador de disco r\u00edgido. ; Falha irrecuper\u00e1vel no teclado PS / 2 ou USB. ; M\u00eddia de inicializa\u00e7\u00e3o remov\u00edvel n\u00e3o encontrada. ; Falha irrecuper\u00e1vel no controlador de v\u00eddeo. ; Nenhum dispositivo de v\u00eddeo detectado. ; Detectada corrup\u00e7\u00e3o de ROM de firmware (BIOS). ; Incompatibilidade de tens\u00e3o da CPU (processadores que compartilham a mesma fonte t\u00eam requisitos de tens\u00e3o incompat\u00edveis) ; Falha na correspond\u00eancia da velocidade da CPU".split(";"),
154
+h="N\u00e3o especificado. ; Inicializa\u00e7\u00e3o da mem\u00f3ria. ; Iniciando a inicializa\u00e7\u00e3o e o teste do disco r\u00edgido ; Inicializa\u00e7\u00e3o do (s) processador (es) secund\u00e1rio ; Autentica\u00e7\u00e3o do usu\u00e1rio ; Configura\u00e7\u00e3o do sistema iniciado pelo usu\u00e1rio ; Configura\u00e7\u00e3o do recurso USB ; Configura\u00e7\u00e3o do recurso PCI ; Configura\u00e7\u00e3o do recurso PCI ; Inicializa\u00e7\u00e3o da ROM opcional ; Inicializa\u00e7\u00e3o da ROM ; Inicializa\u00e7\u00e3o do v\u00eddeo ; Inicializa\u00e7\u00e3o do cache ; SM Inicializa\u00e7\u00e3o de barramento ; Inicializa\u00e7\u00e3o do controlador do teclado ; Inicializa\u00e7\u00e3o do controlador incorporado / controlador de gerenciamento ; Conex\u00e3o da esta\u00e7\u00e3o de acoplamento ; Habilitando a esta\u00e7\u00e3o de acoplamento ; Eje\u00e7\u00e3o da esta\u00e7\u00e3o de acoplamento ; Desabilitando a esta\u00e7\u00e3o de acoplamento ; Esta\u00e7\u00e3o de acoplamento desativada ; Chamada do vetor de ativa\u00e7\u00e3o do sistema operacional ; Iniciando o processo de inicializa\u00e7\u00e3o do sistema ; Inicializa\u00e7\u00e3o do rodap\u00e9 ou da placa-m\u00e3e ; reservada ; Inicializa\u00e7\u00e3o de disquete ; Teste do teclado ; Teste do dispositivo apontador ; Inicializa\u00e7\u00e3o do processador prim\u00e1rio".split(";"),
155
+g="N\u00e3o especificado ; Outros ; Desconhecido ; Processador ; Disco ; Perif\u00e9rico ; M\u00f3dulo de gerenciamento do sistema ; Placa do sistema ; M\u00f3dulo de mem\u00f3ria ; M\u00f3dulo do processador ; Fonte de alimenta\u00e7\u00e3o ; Fonte de alimenta\u00e7\u00e3o ; Adicione um cart\u00e3o ; Placa do painel frontal ; Placa do painel traseiro ; Placa do painel traseiro ; Placa do sistema de energia ; Placa de acionamento ; Painel traseiro da unidade ; Expans\u00e3o interna do sistema placa ; Outra placa de sistema ; Placa processadora ; Unidade de pot\u00eancia ; M\u00f3dulo de pot\u00eancia ; Placa de gerenciamento de energia ; Placa do painel traseiro do chassi ; Chassis do sistema ; Sub-chassi ; Outra placa do chassi ; Compartimento de unidades de disco ; Compartimento de perif\u00e9ricos ; Compartimento de dispositivos ; Compartimento de refrigera\u00e7\u00e3o ; Ventilador ; Unidade de refrigera\u00e7\u00e3o ; Interconex\u00e3o por cabo ; Dispositivo de mem\u00f3ria ; Software de gerenciamento do sistema ; BIOS ; Intel (r) ME ; Barramento do sistema ; Grupo ; Intel (r) ME ; Ambiente externo ; Bateria ; L\u00e2mina de processamento ; Interruptor de conectividade ; Interruptor de conectividade ; Processador / m\u00f3dulo de mem\u00f3ria ; M\u00f3dulo de E / S ; M\u00f3dulo de E / S do processador ; Firmware do controlador de gerenciamento ; Canal IPMI ; Barramento PCI ; Barramento PCI Express ; Barramento SCSI ; Barramento SATA / SAS ; Barramento frontal do processador".split(";");
156
+l.RealmNames=";; Redirecionamento ;; Ativo de hardware ; Controle remoto ; Armazenamento ; Gerenciador de eventos ; Administrador de armazenamento ; Presen\u00e7a local do agente ; Presen\u00e7a remota do agente ; Disjuntor ; Tempo de rede ; Informa\u00e7\u00f5es gerais ; Atualiza\u00e7\u00e3o de firmware ; EIT ; LocalUN ; Endpoint Access Control ; Endpoint Access Control Admin ; Leitor de log de eventos ; Log de auditoria ; Regi\u00e3o da ACL ;;; Sistema local".split(";");l.WatchdogCurrentStates=
157
+{1:"n\u00e3o foi iniciado",2:"Parado",4:"Corrida",8:"Expirado",16:"Suspenso"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),
158
+D={1:"",2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"Admin de seguran\u00e7a",17:"RCO",18:"Gerenciador de redirecionamento",19:"Gerenciador de Atualiza\u00e7\u00e3o de Firmware",20:"Log de auditoria de seguran\u00e7a",21:"Hora da rede",22:"Administra\u00e7\u00e3o de rede",23:"Administra\u00e7\u00e3o de armazenamento",24:"Gerente de eventos",25:"Gerente do disjuntor",26:"Gerenciador de presen\u00e7a do agente",27:"Configura\u00e7\u00e3o sem fio",28:"EAC",29:"KVM",30:"Eventos de aceita\u00e7\u00e3o do usu\u00e1rio",
159
+32:"Tela em branco",33:"Eventos Watchdog",1600:"Aprovisionamento iniciado",1601:"Aprovisionamento conclu\u00eddo",1602:"Entrada ACL adicionada",1603:"Entrada da ACL modificada",1604:"Entrada da ACL removida",1605:"Acesso ACL com credenciais inv\u00e1lidas",1606:"Estado de entrada da ACL",1607:"Estado do TLS alterado",1608:"Conjunto de certificados do servidor TLS",1609:"Remover certificado de servidor TLS",1610:"Adicionado certificado raiz confi\u00e1vel TLS",1611:"Certificado raiz confi\u00e1vel TLS removido",
160
+1612:"Conjunto de chaves pr\u00e9-compartilhadas TLS",1613:"Configura\u00e7\u00f5es do Kerberos modificadas",1614:"Chave principal do Kerberos modificada",1615:"Redefini\u00e7\u00e3o de contadores de desgaste do flash",1616:"Pacote de energia modificado",1617:"Definir modo de autentica\u00e7\u00e3o de regi\u00e3o",1618:"Atualizar cliente para o modo de controle de administrador",1619:"Desprovisionamento iniciado",1700:"Power Up realizado",1701:"Desativa\u00e7\u00e3o realizada",1702:"Ciclo de energia realizado",
161
+1703:"Reset realizado",1704:"Definir op\u00e7\u00f5es de inicializa\u00e7\u00e3o",1800:"Sess\u00e3o IDER aberta",1801:"Sess\u00e3o IDER encerrada",1802:"IDER ativado",1803:"IDER desativado",1804:"Sess\u00e3o SoL aberta",1805:"Sess\u00e3o SoL Encerrada",1806:"SoL ativado",1807:"SoL desativado",1808:"Sess\u00e3o KVM iniciada",1809:"Sess\u00e3o KVM encerrada",1810:"KVM ativado",1811:"KVM desativado",1812:"Senha do VNC falhou 3 vezes",1900:"Firmware Atualizado",1901:"Falha na atualiza\u00e7\u00e3o do firmware",
162
+2E3:"Log de auditoria de seguran\u00e7a limpo",2001:"Diretiva de auditoria de seguran\u00e7a modificada",2002:"Log de auditoria de seguran\u00e7a desativado",2003:"Log de auditoria de seguran\u00e7a ativado",2004:"Log de auditoria de seguran\u00e7a exportado",2005:"Log de auditoria de seguran\u00e7a recuperado",2100:"Conjunto de horas do Intel® ME",2200:"Conjunto de par\u00e2metros TCPIP",2201:"Conjunto de nomes de host",2202:"Conjunto de nomes de dom\u00ednio",2203:"Conjunto de par\u00e2metros da VLAN",
163
+2204:"Conjunto de Pol\u00edticas de Link",2205:"Conjunto de par\u00e2metros IPv6",2300:"Conjunto de atributos de armazenamento global",2301:"EACL de armazenamento modificado",2302:"FPACL de armazenamento modificado",2303:"Opera\u00e7\u00e3o de grava\u00e7\u00e3o de armazenamento",2400:"Alerta Inscrito",2401:"Alerta cancelado",2402:"Log de eventos limpo",2403:"Log de eventos congelado",2500:"CB Filter Added",2501:"Filtro CB removido",2502:"CB Policy Added",2503:"Pol\u00edtica de CB removida",2504:"Conjunto de pol\u00edticas padr\u00e3o do CB",
164
+2505:"Conjunto de op\u00e7\u00f5es de CB Heuristics",2506:"CB Heuristics State Cleared",2600:"Agent Watchdog Adicionado",2601:"C\u00e3o de guarda do agente removido",2602:"Conjunto de a\u00e7\u00f5es do agente de vigil\u00e2ncia",2700:"Wireless Profile Added",2701:"Perfil sem fio removido",2702:"Perfil sem fio atualizado",2800:"EAC Posture Signer SET",2801:"EAC ativado",2802:"EAC desativado",2803:"Estado da postura da EAC",2804:"Op\u00e7\u00f5es de conjunto de EAC",2900:"Ativa\u00e7\u00e3o KVM ativada",
165
+2901:"Desativa\u00e7\u00e3o da KVM desativada",2902:"Senha KVM alterada",2903:"Consentimento da KVM com \u00eaxito",2904:"Falha no consentimento da KVM",3E3:"Altera\u00e7\u00e3o da pol\u00edtica de aceita\u00e7\u00e3o",3001:"Enviar evento de c\u00f3digo de consentimento",3002:"Iniciar evento bloqueado de aceita\u00e7\u00e3o"};l.GetAuditLogExtendedDataStr=function(a,b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,2+b.charCodeAt(1));if(1603==a)return 0==b.charCodeAt(1)?b.substring(3):
166
+null;if(1605==a)return["Acesso ME inv\u00e1lido","Acesso MEBx inv\u00e1lido"][b.charCodeAt(0)];if(1606==a){var c=["Desativado","ativado"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+=","+b.substring(3));return c}return 1607==a?"Controlo remoto"+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(0)]+", Local"+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+","+["NoAuth","Auth","Desativado"][b.charCodeAt(4)]:1619==a?["BIOS","MEBx","MEI local","WSMAN local","WSAMN remoto"][b.charCodeAt(0)]:
167
+1900==a?"De"+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" para"+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"De"+["Nenhum","KVM","Todos"][b.charCodeAt(0)]+" para"+["Nenhum","KVM","Todos"][b.charCodeAt(1)]:3001==a?["Sucesso","Falhou 3 vezes"][b.charCodeAt(0)]:null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};
168
+return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
169
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
170
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
171
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
172
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
173
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
174
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
175
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
176
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
177
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
178
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
179
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
180
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
181
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
182
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
183
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
184
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
185
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
186
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
187
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
188
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
189
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
190
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
191
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
192
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
193
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
194
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
195
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
196
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
197
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
198
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
199
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
200
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
201
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
202
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
203
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
204
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
205
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
206
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
207
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
208
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
209
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
210
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
211
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
212
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
213
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
214
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
215
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
216
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
217
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
218
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
219
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
220
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
221
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
222
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
223
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
224
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
225
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
226
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
227
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
228
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
229
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
230
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
231
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
232
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
233
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
234
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
235
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
236
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
237
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
238
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
239
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
240
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
241
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
242
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
243
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
244
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
245
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
246
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
247
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
248
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
249
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
250
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
251
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
252
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
253
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
254
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
255
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
256
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
257
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
258
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
259
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
260
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
261
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
262
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
263
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
264
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
265
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
266
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
267
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
268
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
269
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
270
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
271
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
272
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
273
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
274
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
275
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
276
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
277
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
278
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
279
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
280
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
281
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
282
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
283
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
284
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
285
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
286
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
287
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
288
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
289
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
290
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
291
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
292
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
293
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
294
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
295
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
296
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
297
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
298
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
299
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
300
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
301
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
302
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
303
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
304
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
305
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
306
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
307
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
308
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
309
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
310
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
311
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
312
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
313
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
314
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
315
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
316
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
317
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
318
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
319
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
320
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
321
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
322
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
323
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
324
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
325
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
326
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
327
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
328
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
329
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
330
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
331
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
332
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
333
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
334
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
335
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
336
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
337
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
338
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
339
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
340
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
341
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
342
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
343
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
344
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
345
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
346
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
347
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
348
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
349
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
350
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
351
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
352
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
353
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
354
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
355
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
356
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
357
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
358
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
359
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
360
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
361
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
362
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
363
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
364
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
365
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
366
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
367
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
368
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
369
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
370
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
371
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
372
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
373
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
374
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
375
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
376
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
377
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
378
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
379
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
380
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
381
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
382
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
383
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
384
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
385
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
386
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
387
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
388
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
389
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
390
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
391
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
392
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
393
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
394
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
395
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
396
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
397
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
398
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
399
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
400
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
401
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
402
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
403
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
404
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
405
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
406
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
407
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
408
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
409
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
410
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
411
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
412
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
413
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
414
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
415
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
416
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
417
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
418
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
419
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
420
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
421
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
422
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
423
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
424
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
425
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
426
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
427
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
428
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
429
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
430
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
431
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
432
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
433
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
434
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
435
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
436
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
437
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
438
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
439
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
440
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
441
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
442
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
443
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
444
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
445
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
446
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
447
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
448
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
449
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
450
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
451
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
452
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
453
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
454
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
455
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
456
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
457
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
458
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
459
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
460
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
461
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
462
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
463
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
464
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
465
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
466
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
467
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
468
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
469
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
470
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
471
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
472
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
473
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
474
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
475
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
476
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
477
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
478
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
479
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
480
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
481
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
482
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
483
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
484
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
485
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
486
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
487
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
488
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
489
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
490
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
491
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
492
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
493
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
494
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
495
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
496
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
497
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
498
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
499
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
500
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
501
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
502
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
503
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
504
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
505
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
506
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
507
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
508
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
509
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
510
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
511
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
512
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
513
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
514
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
515
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
516
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
517
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
518
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
519
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
520
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
521
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
522
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
523
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
524
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
525
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
526
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
527
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
528
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
529
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
530
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
531
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
532
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
533
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
534
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
535
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
536
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
537
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
538
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
539
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
540
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
541
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
542
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
543
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
544
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
545
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
546
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
547
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
548
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
549
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
550
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
551
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
552
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
553
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
554
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
555
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
556
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
557
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
558
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
559
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
560
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
561
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
562
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
563
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
564
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
565
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
566
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
567
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
568
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
569
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
570
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
571
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
572
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
573
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
574
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
575
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
576
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
577
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
578
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
579
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
580
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
581
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
582
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
583
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
584
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
585
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
586
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
587
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
588
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
589
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
590
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
591
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
592
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
593
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
594
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
595
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
596
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
597
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
598
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
599
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
600
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
601
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
602
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
603
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
604
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
605
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
606
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
607
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
608
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
609
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
610
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
611
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
612
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
613
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
614
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
615
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
616
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
617
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
618
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
619
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
620
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
621
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
622
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
623
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
624
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
625
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
626
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
627
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
628
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
629
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
630
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
631
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
632
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
633
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
634
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
635
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
636
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
637
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
638
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
639
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
640
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
641
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
642
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
643
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
644
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
645
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
646
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
647
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
648
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
649
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
650
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
651
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
652
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
653
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
654
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
655
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
656
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
657
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
658
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
659
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
660
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
661
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
662
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
663
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
664
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
665
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
666
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
667
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
668
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
669
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
670
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
671
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
672
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
673
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
674
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
675
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
676
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
677
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
678
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
679
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
680
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
681
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
682
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
683
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
684
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
685
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
686
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
687
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
688
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
689
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
690
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
691
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
692
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
693
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
694
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
695
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
696
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
697
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
698
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
699
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
700
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
701
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
702
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
703
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
704
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
705
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
706
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
707
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
708
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
709
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
710
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
711
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
712
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
713
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
714
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
715
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
716
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
717
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
718
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
719
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
720
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
721
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
722
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
723
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
724
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
725
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
726
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
727
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
728
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
729
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
730
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
731
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
732
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
733
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
734
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
735
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
736
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
737
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
738
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
739
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
740
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
741
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
742
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
743
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
744
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
745
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
746
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
747
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
748
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
749
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
750
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
751
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
752
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
753
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
754
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
755
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
756
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
757
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
758
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
759
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
760
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
761
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
762
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
763
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
764
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
765
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
766
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
767
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
768
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
769
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
770
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
771
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
772
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
773
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
774
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
775
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
776
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
777
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
778
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
779
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
780
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
781
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
782
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
783
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
784
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
785
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
786
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
787
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
788
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
789
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
790
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
791
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
792
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
793
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
794
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
795
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
796
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
797
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
798
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
799
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
800
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
801
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
802
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
803
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
804
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
805
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
806
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
807
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
808
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
809
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
810
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
811
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
812
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
813
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
814
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
815
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
816
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
817
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
818
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
819
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
820
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
821
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
822
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
823
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
824
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
825
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
826
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
827
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
828
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
829
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
830
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
831
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
832
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
833
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
834
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
835
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
836
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
837
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
838
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
839
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
840
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
841
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
842
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
843
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
844
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
845
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
846
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
847
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
848
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
849
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
850
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
851
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
852
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
853
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
854
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
855
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
856
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
857
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
858
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
859
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
860
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
861
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
862
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
863
+k.Init();return k},ZLIB=ZLIB||{};
864
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
865
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
866
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
867
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
868
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
869
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
870
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
871
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
872
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
873
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
874
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
875
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
876
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
877
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
878
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
879
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
880
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
881
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
882
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
883
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
884
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
885
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
886
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
887
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
888
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
889
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
890
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
891
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
892
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
893
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
894
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
895
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
896
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
897
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
898
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
899
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
900
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
901
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
902
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
903
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
904
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
905
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
906
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
907
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
908
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
909
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
910
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
911
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
912
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
913
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
914
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
915
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
916
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
917
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
918
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
919
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
920
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
921
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
922
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
923
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
924
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
925
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
926
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
927
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
928
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
929
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
930
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
931
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
932
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
933
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
934
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
935
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
936
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
937
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
938
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
939
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
940
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
941
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
942
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
943
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>Carregando...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
944
+StatusStrs=["Desconectado","A ligar ...","Configura\u00e7\u00e3o...","Conectado"],scriptstate,t,t2,rsepass=null;
945
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
946
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR + LF":"LF";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
947
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
948
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
949
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
950
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
951
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="desconectar"}function getCurrentMeshNode(){return currentMeshNode}
952
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="Come\u00e7ar captura";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
953
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
954
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
955
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
956
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
957
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
958
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
959
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
960
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="Conectar";QH(5,"Desconectado");go(100)}
961
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
962
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
963
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
964
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
965
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
966
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
967
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
968
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
969
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
970
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
971
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"Sincronizar rel\u00f3gio",3,syncClockEx,"Sincronizar o rel\u00f3gio Intel AMT com este computador?")}
972
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","Falha ao definir a hora, status ="+d):0!=a.Body.ReturnValue?messagebox("","Falha ao definir hora, erro: "+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}var DMTFPowerStates=";;Ligar;Sono leve;Sono profundo;Ciclo de energia (desligamento suave);Desligado - Dif\u00edcil;Hiberna\u00e7\u00e3o (desativado suave);Soft off;Ciclo de energia (Off-hard);Redefini\u00e7\u00e3o do barramento principal;Interrup\u00e7\u00e3o de diagn\u00f3stico (MNI);N\u00e3o aplic\u00e1vel;Desligado - suave e gracioso;Desligado - Dif\u00edcil gracioso;Redefini\u00e7\u00e3o do barramento mestre graciosa;Ciclo de energia (desligado - suave suave);Ciclo de energia (desligado - com for\u00e7a);Interrup\u00e7\u00e3o de diagn\u00f3stico (INIT)".split(";");
973
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>Desconhecido</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"Ligar"==a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&
974
+3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=[", Conectado",", Com bateria"][q.PowerSource]);d+=TableEntry("Poder",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>Nenhum</i>":EscapeHtml(c);d+=TableEntry("Nome e dom\u00ednio",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?
975
+d+=TableEntry("ID do sistema",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("ID do sistema",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" ativado no modo de controle de administrador (ACM)",4==k.ProvisioningMode&&(p=" ativado no modo de controle de cliente (CCM)",b=9));d+=TableEntry("Intel® ME",
976
+"v"+getItem(amtlogicalelements,"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,
977
+n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);
978
+r&&(e+=", Porta de redirecionamento");n&&(e+=", Serial-over-LAN");p&&(e+=", Redirecionamento de IDE");w&&(e+=", KVM");""==e&&(e=" Nenhum");d+=TableEntry("Recursos ativos",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="Visor principal",7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["Visor principal",
979
+"Visor secund\u00e1rio","3\u00aa exibi\u00e7\u00e3o"][p.DefaultScreen]),e='<span title="'+format("O visor remoto padr\u00e3o \u00e9 {0}",e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+="Porta 5900 ativada"),1==p.OptInPolicy&&(e+=","+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"segundos de aceita\u00e7\u00e3o":"segunda inscri\u00e7\u00e3o")),e+=","+p.SessionTimeout+" minuto"+(0<p.SessionTimeout?"s":"")+" sess\u00e3o expirada",9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService?
980
+((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&1))&&(e+=", Supress\u00e3o permitida"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("\u00c1rea de trabalho remota",addLinkConditional(e,"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&
981
+void 0!=amtsysstate.IPS_OptInService.response&&(e="Estado desconhecido",r=amtsysstate.IPS_OptInService.response.OptInRequired,0==r&&(e="N\u00e3o requerido"),1==r&&(e="Necess\u00e1rio apenas para KVM"),4294967295==r&&(e="Sempre necess\u00e1rio"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("Consentimento do Usu\u00e1rio",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,
982
+l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(r=e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==r&&(d+=TableEntry("Pol\u00edtica de energia",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&
983
+(d+=TableEntry("Data hora",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";e+=AddButton("A\u00e7\u00f5es de poder ...","showPowerActionDlg()")+" ";e+=AddButton("Estado salvo...","saveEntireAmtState()")+" ";e+=AddButton("Executar script ...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");
984
+QH(17,d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+" Alterar as configura\u00e7\u00f5es de rede pode fazer com que esta p\u00e1gina fique indispon\u00edvel.");d=d+"<br><h2>Configura\u00e7\u00f5es Gerais</h2>"+TableStart();e="";"<i>Nenhum</i>"!=c&&(1==q.SharedFQDN&&(e=", compartilhado com o SO"),0==q.SharedFQDN&&(e=", diferente do SO"));d+=TableEntry("Nome e dom\u00ednio",addLinkConditional(c+
985
+e,"showEditNameDlg(1)",xxAccountAdminName));c="Desativado";1==q.DDNSUpdateEnabled?c="Ativado cada"+q.DDNSPeriodicUpdateInterval+" minutos, TTL \u00e9"+q.DDNSTTL+" minutos":1==q.DDNSUpdateByDHCPServerEnabled&&(c="Atualiza\u00e7\u00e3o pelo servidor DHCP");d+=TableEntry("DNS din\u00e2mico",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||
986
+1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"Interface sem fio":"Interface com fio")+"</h2>";d+=TableStart();d+=TableEntry("Estado do link",1==c.LinkIsUp?"O link est\u00e1 ativo":"Link desativado");if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 / AC"),14==c.LinkPolicy[l]&&e.push("Sx / AC"),16==c.LinkPolicy[l]&&e.push("S0 / DC"),224==c.LinkPolicy[l]&&e.push("Sx / DC");
987
+0==e.length&&e.push("");d+=TableEntry("Pol\u00edtica de links",addLinkConditional(0==e.length?"N\u00e3o dispon\u00edvel":"Dispon\u00edvel em: "+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("Endere\u00e7o MAC",c.MACAddress));amtwirelessif==a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("Estado",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),
988
+s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("Estado da R\u00e1dio",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+", SSID: "+(s?s:"<i>Nenhum</i>")));amtwirelessif!=a&&(d+=TableEntry("Responder ao ping",addLinkConditional(["Desativado","Resposta ICMP","Resposta RMCP","Resposta ICMP e RMCP"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"Autom\u00e1tico usando servidor DHCP":"Endere\u00e7o IP est\u00e1tico",
989
+1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("Estado IPv4",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("Endere\u00e7o IPv4",isIpAddress(c.IPAddress,"Nenhum"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("Gateway IPv4 / M\u00e1scara",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"Nenhum")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("Servidor de nomes de dom\u00ednio IPv4",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&
990
+5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r="Desativado",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?"Endere\u00e7os ativados, autom\u00e1ticos e manuais":"Habilitado, Endere\u00e7os autom\u00e1ticos");
991
+d+=TableEntry("Estado IPv6",addLinkConditional(r,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=","),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("Endere\u00e7o IPv6",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("Endere\u00e7o IPv6",
992
+"Nenhum");isIpAddress(c.CurrentDefaultRouter)&&(d+=TableEntry("Roteador IPv6 padr\u00e3o",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("Servidor de nomes de dom\u00ednio IPv6",e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&
993
+8)&&(11<amtversion||11==amtversion&&5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
994
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
995
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"Pol\u00edtica de Links",3,showLinkPolicyDlgEx,a,b)}}
996
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
997
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Pol\u00edtica de Links",format("N\u00e3o foi poss\u00edvel definir a nova pol\u00edtica de link, erro {0}",d))}
998
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>Nenhum</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
999
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>Confi\u00e1vel</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+" bytes,<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+
1000
+c+")>Baixar</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" bytes,<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>Baixar</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
1001
+function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
1002
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"Salvar todo o estado Intel® AMT",3,saveEntireAmtStateOk)}}
1003
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"Salvar todo o estado Intel® AMT",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1004
+function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1005
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>Visor principal</option><option value=1>Visor secund\u00e1rio</option>";9<amtversion&&(c+="<option value=2>3\u00aa exibi\u00e7\u00e3o</option>");c+='</select><div style=padding-top:4px>Exibi\u00e7\u00e3o padr\u00e3o</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Tempo limite da sess\u00e3o (minutos)</div></div>';
1006
+1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Tempo limite de ativa\u00e7\u00e3o (segundos)</div></div>');c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Desativado, Recomendado</option><option value=1>Habilitado, visualizadores KVM herdados</option></select><div style=padding-top:4px>Porta 5900</div></div>";
1007
+c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>Senha do 5900 (8 caracteres)</div></div>";9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+='<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Desativado</option><option value=1>ativado</option></select><div style=padding-top:4px title="Esse recurso n\u00e3o \u00e9 frequentemente suportado">Tela em branco</div></div>');
1008
+c+="</div>";setDialogMode(11,"Configura\u00e7\u00f5es da \u00e1rea de trabalho remota",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}
1009
+function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1010
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1011
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("Configura\u00e7\u00f5es da \u00e1rea de trabalho remota",format("Erro {0}, incapaz de definir valores.",d))}
1012
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("Erro",format("N\u00e3o foi poss\u00edvel definir o apagamento da tela; o apagamento pode n\u00e3o ser suportado neste sistema ({0}).",d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}
1013
+function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1014
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("Descongelar registro","FreezeLog(0)"):AddButton("Congelar log","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="Filtro" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1015
+AddRefreshButton("PullEventLog(1)")+AddButton("Log clara","ClearLog()")+AddButton("Salve \ue051...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1016
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>Fonte</b><td class=r1><b>Descri\u00e7\u00e3o</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1017
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1018
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"Limpar log de eventos?"),setDialogMode(1,"Registro de Eventos",3,ClearLogEx))}function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("Registro de Eventos","N\u00e3o foi poss\u00edvel limpar, Erro: "+d):PullEventLog()})}
1019
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("Tempo",c.Time.toLocaleString());a+=addHtmlValue("Fonte",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("Descri\u00e7\u00e3o",c.Desc);a+=MoreStart();a+=addHtmlValue("Endere\u00e7o do dispositivo",c.DeviceAddress);a+=addHtmlValue("Entidade",c.Entity);a+=addHtmlValue("Inst\u00e2ncia da entidade",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];
1020
+a+=addHtmlValue("Dados",d);a+=addHtmlValue("Deslocamento",c.EventOffset);a+=addHtmlValue("Tipo de sensor",c.EventSensorType);a+=addHtmlValue("Gravidade",c.EventSeverity);a+=addHtmlValue("Tipo de fonte",c.EventSourceType);a+=addHtmlValue("Tipo",c.EventType);a+=addHtmlValue("N\u00famero do sensor",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("Detalhes do evento {{}}",b+1),a)}}
1021
+function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1022
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1023
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gerenciar assinantes de eventos.<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],
1024
+b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>Nenhuma assinatura encontrada.</i></div><br>");e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("Nova assinatura","newSubscriptionButton()"));b+="<br><td class=r1>"+
1025
+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"Empurrar",3:"Empurre com ACK",4:"Eventos",5:"Puxar"};
1026
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("Destino",a.Destination);d+=addHtmlValue("Filtro",c);d+=addHtmlValue("Modo de entrega",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"Inscri\u00e7\u00e3o"+(b+1),xxAccountAdminName?
1027
+5:1,deleteSubscriptionButton,d+"</div>",b)}}
1028
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
1029
+Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1030
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>Empurrar</option><option value=PushWithAck>Empurre com ACK</option></select><div style=padding-top:4px>Tipo</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+='<option value="'+subscriptionsFilters[c].InstanceID+'">'+subscriptionsFilters[c].CollectionName.substring(13)+
1031
+"</option>";b+="</select><div style=padding-top:4px>Filtro</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>URL</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>Nenhum</option><option value=1>Digerir</option></select><div style=padding-top:4px>Autentica\u00e7\u00e3o</div></div>";
1032
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Nome do usu\u00e1rio</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>Senha</div></div>";b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>Argumentos</div></div>";
1033
+setDialogMode(11,"Adicionar assinatura de evento",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1034
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1035
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="Desconhecido;De outros;ativado;Desativado;Desligando;N\u00e3o aplic\u00e1vel;Ativado, mas offline;Em teste;Diferido;Quiesce;Iniciando".split(";");
1036
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"Desativado":"ativado",c&2&&(b+="Bloqueado"),c&4&&(b+=", Quase cheio"),c&8&&(b+=", Cheio"),c&16&&(b+=", NoKey"),c="<h1>Configura\u00e7\u00f5es do log de auditoria</h1>"+TableStart(),c+=TableEntry("Estado",b),c+=TableEntry("Armazenamento",a[0].CurrentNumberOfRecords+" registro (s),"+a[0].PercentageFree+"% livre"),c+=TableEntry("Pol\u00edtica de substitui\u00e7\u00e3o",2==a[0].OverwritePolicy?"Envolt\u00f3rios quando cheios":
1037
+"Nunca substitui"),c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1038
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="Filtro" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("Salve \ue051...","SaveAuditLog()")+AddButton("Log clara","ClearAuditLog()"))+"<br>");if(0==c.length)d="Nenhum evento de log de auditoria encontrado.";else{var e=0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>Tempo</b><td class=r1 style=width:260px><b>Iniciador</b><td class=r1><b>Action</b>";
1039
+for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+=","+q.Event);null!=q.ExStr&&(p+=","+q.ExStr);""!=k&&""!=r&&(k+=",");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",
1040
+minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","Registro de auditoria da Intel AMT",auditLog)}
1041
+function ClearAuditLog(b){QH(66,"Limpar log de auditoria?");setDialogMode(1,"Log de auditoria",3,ClearAuditLogEx)}function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}
1042
+function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("Log de auditoria","Erro: "+d)}
1043
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("Tempo",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("Iniciador",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("Endere\u00e7o",a.NetAddress));d+=addHtmlValue("Inscri\u00e7\u00e3o",a.AuditApp);d+=addHtmlValue("Evento",a.Event);if(null!=a.ExStr)d+=addHtmlValue("Dados estendidos",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<e.length&&(e+=","),e+=a.Ex.charCodeAt(c);
1044
+""!=e&&(d+=addHtmlValue("Valores de dados",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("Data String",a.Ex.substring(2)))}messagebox("Evento de auditoria #"+(b+1)+" Detalhes",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;
1045
+function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1046
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1047
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1048
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1049
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"Desativado";var c=(1==xxTlsSettings[b].MutualAuthentication?"TLS de autentica\u00e7\u00e3o m\u00fatua":"TLS de autentica\u00e7\u00e3o do servidor")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" e n\u00e3o TLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1050
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("Seguran\u00e7a TLS remota",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("Seguran\u00e7a TLS local",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gerenciar certificados Intel® AMT para este computador.<br><br>");
1051
+if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>Nenhum certificado encontrado.</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b="Raiz confi\u00e1vel"),xxCertificates[d].XPrivateKey&&(b=", Chave privada"),d==xxTlsCurrentCert&&(b+=", Certificado TLS"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+b+"</i></div></div>";
1052
+for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>Par de chaves privadas n\u00e3o atribu\u00eddas #"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("Adicionar certificado ...","addCertButton()")+AddButton("Emitir certificado ...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1053
+function showKeyPairDetails(b){setDialogMode(11,"Par de chaves #"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"Este \u00e9 um par de chaves de certificado p\u00fablico / privado que n\u00e3o pertence a nenhum certificado. Esta entrada deve ser tempor\u00e1ria.")}
1054
+var xxCertSubjectNames={CN:"Nome comum",O:"Organiza\u00e7\u00e3o",OU:"Unidade organizacional",S:"Estado / Prov\u00edncia",ST:"Estado / Prov\u00edncia",L:"Localidade",C:"Pa\u00eds",SN:"Sobrenome",GN:"Nome dado"};
1055
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("Certificado",c.X509Certificate.length+" bytes,<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>Baixar</a>");a+=addHtmlValue("Raiz confi\u00e1vel",c.TrustedRootCertficate?"sim":"N\u00e3o");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("Chave privada","Presente"));a+='<br><div style="border-bottom:1px solid gray"><i>Assunto do certificado</i></div><br>';for(var d in c.XSubject)c.XSubject[d]&&
1056
+(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>Certificado do emissor</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"Certificado -"+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},
1057
+function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}var xxDragDropCertFiles=null;
1058
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>Arquivo de certificado</div></div>")+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>Certificado raiz confi\u00e1vel</option><option value=0>Certificado de cadeia</option></select><div style=padding-top:4px>Tipo de certificado</div></div>",
1059
+setDialogMode(11,"Adicionar certificado",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1060
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1061
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>Senha do certificado</div></div>",
1062
+b+='<br><div style="border-bottom:1px solid gray"><i>Certificado Intel® AMT</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>Nome comum</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>Organiza\u00e7\u00e3o</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>Estado / Prov\u00edncia</div></div>",
1063
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>Pa\u00eds</div></div>",b+='<div>Usos do certificado</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',b+="<li><label><input type=checkbox id=d11_cu4 checked>Servidor TLS (HTTPS)</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>Cliente TLS (HTTPS)</label></li>",
1064
+b+="<li><label><input type=checkbox id=d11_cu6>Prote\u00e7\u00e3o de Email</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>Assinatura de c\u00f3digo</label></li>",b+="<li><label><input type=checkbox id=d11_cu8>Carimbo de hora</label></li>",b+="</ul>",setDialogMode(11,"Certificado de Emiss\u00e3o",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1065
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1066
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("Certificado de Emiss\u00e3o","N\u00e3o foi poss\u00edvel descriptografar / decodificar o certificado.")}
1067
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1068
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("Certificado de Emiss\u00e3o","Falha ao gerar o par de chaves. Estado: "+d):0!=a.Body.ReturnValue?messagebox("Certificado de Emiss\u00e3o","Falha ao gerar o par de chaves,"+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1069
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("Certificado de Emiss\u00e3o","Falha ao gerar o par de chaves. Estado: "+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"Certificado raiz n\u00e3o confi\u00e1vel"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=
1070
+xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("Certificado de Emiss\u00e3o","N\u00e3o foi poss\u00edvel assinar o certificado."):(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,
1071
+q.length-25),GenerateKeyPairResponse4))}}function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("Certificado de Emiss\u00e3o","Falha ao gerar o par de chaves. Estado: "+d):PullCertificates()}function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("Adicionar certificado","N\u00e3o foi poss\u00edvel adicionar o certificado, erro"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}
1072
+function certificateRemoved(b,c,a,d){200!=d?messagebox("Remover certificado","N\u00e3o foi poss\u00edvel remover o certificado, erro"+d):PullCertificates()}function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1073
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>Sem certificado, TLS desativado</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>Certificado</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
1074
+b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="Lista separada por v\u00edrgulas de nomes comuns de certificados que ter\u00e3o permiss\u00e3o para se conectar remotamente."><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="nome1, nome2"><div style=padding-top:4px>CN remoto</div></div>';setDialogMode(11,
1075
+"Configura\u00e7\u00f5es TLS",3,showSetTlsSecurityDlgOk,b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);getSelectElement("tlsremote").value=(1==xxTlsSettings[c].MutualAuthentication?
1076
+2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1077
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1078
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1079
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1080
+b,c,d){200!=d?messagebox("","Falha ao definir a hora, status ="+d):0!=c.Body.ReturnValue?messagebox("","Falha ao definir hora, erro: "+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,0,1,a[1]);statusbox("Configura\u00e7\u00f5es TLS",
1081
+"Aplicando novas configura\u00e7\u00f5es de seguran\u00e7a ...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1082
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","Falha ao definir a seguran\u00e7a TLS, status ="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1083
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","Falha ao definir a seguran\u00e7a TLS, status ="+d):0!=a.Body.ReturnValue?messagebox("","Falha ao definir a seguran\u00e7a TLS, erro: "+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1084
+function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1085
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1086
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1087
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1088
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}var watchdogEnabledStates="Desconhecido;De outros;ativado;Desativado;Desligando;N\u00e3o aplic\u00e1vel;Ativado, mas offline;Em teste;Diferido;Quiesce;Iniciando".split(";"),watchdogMonitoredEntity="Desconhecido;De outros;Sistema operacional;Processo de inicializa\u00e7\u00e3o do sistema operacional;Processo de desligamento do sistema operacional;Processo de inicializa\u00e7\u00e3o do firmware;Processo de inicializa\u00e7\u00e3o do BIOS;Inscri\u00e7\u00e3o;Processador de servi\u00e7o".split(";");
1089
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("C\u00e3es de guarda m\u00e1ximos",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" assistir cachorros");b+=TableEntry("Total de a\u00e7\u00f5es m\u00e1ximas",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" a\u00e7\u00f5es");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Gerenciar os c\u00e3es de guarda de presen\u00e7a do agente Intel® AMT.<br><br>";
1090
+if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>Nenhum c\u00e3o de guarda de presen\u00e7a do agente encontrado.</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));
1091
+b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="Adicionar a\u00e7\u00e3o ..." onclick=addWatchdogAction(event,'+c+")>";a.transitions&&(b+='<input type=button style=float:right value="Excluir a\u00e7\u00f5es ..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+
1092
+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+=": Evento a ser registrado")}""!=d&&(b+="<div style=padding:12px>"+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("Adicionar c\u00e3o de guarda ...","AddWatchdog()"));b+="<br>";QH(60,b)}}
1093
+function getWatchdogTransitionStr(b){if(31==b)return"Qualquer Estado";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1094
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("Descri\u00e7\u00e3o",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("Entidade monitorada",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("Estado atual",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("Estado ativado",watchdogEnabledStates[b.EnabledState]);c+=addHtmlValue("Intervalo de inicializa\u00e7\u00e3o",
1095
+b.StartupInterval+" segundo (s)");c+=addHtmlValue("Intervalo de tempo limite",b.TimeoutInterval+" segundo (s)");setDialogMode(11,format("C\u00e3o de guarda {0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1096
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Nome</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="Gere DeviceID aleat\u00f3rio">'+addLink("ID de dispositivo","GenerateWatchdogGuid()")+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Inicializa\u00e7\u00e3o (segundos)</div></div>";
1097
+b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Tempo limite (segundos)</div></div>";setDialogMode(11,"Adicionar c\u00e3o de guarda",3,AddWatchdogOk,b);AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}
1098
+function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1099
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1100
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("C\u00e3o de guarda","N\u00e3o foi poss\u00edvel adicionar o watchdog, erro #"+d):PullWatchdog()}
1101
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>De<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>Para<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"Adicionar a\u00e7\u00e3o Watchdog",
1102
+3,addWatchdogActionOk,d+"</table><br>Executar a a\u00e7\u00e3o<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>Gravar no log de eventos<br />",a);addWatchdogActionUpdate();haltEvent(b)}function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1103
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("A\u00e7\u00e3o de Watchdog","N\u00e3o foi poss\u00edvel adicionar a a\u00e7\u00e3o do watchdog, erro #"+d):PullWatchdog()}
1104
+function deleteWatchdogActions(b,c){setDialogMode(11,"Excluir a\u00e7\u00f5es do Watchdog",3,deleteWatchdogActionsOk,"Excluir todas as a\u00e7\u00f5es deste watchdog?",xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1105
+function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("A\u00e7\u00e3o de Watchdog","N\u00e3o foi poss\u00edvel remover as a\u00e7\u00f5es do watchdog, erro #"+d):PullWatchdog()}
1106
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"Todos os pacotes IP",2054:"Todos os pacotes ARP"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"Permitir, Contar",1:"Drop, Count",2:"Taxa limite",3:"Permitir",4:"Solta"},xxSystemDefenceFilters={HdrProtocolID:1,HdrDestAddress:2,HdrDestMask:2,HdrSrcAddress:2,
1107
+HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,TCPFlagsOn:3,TCPFlagsOff:3};function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}
1108
+function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1109
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1110
+a}b+=TableStart();c="<i>Nenhum</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("Pol\u00edtica com fio padr\u00e3o",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d=1==d?d+" pacote":d+" pacotes",b+=TableEntry((0==c?"Com fio":"Sem fio")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>Gerenciar pol\u00edticas de defesa do sistema Intel® AMT.<br><br>";
1111
+if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+="<div style=padding-left:15px><i>Nenhuma pol\u00edtica de defesa do sistema encontrada.</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+c+")><div style=padding-top:3px><b>"+
1112
+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>Gerenciar filtros de defesa do sistema Intel® AMT.<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>Nenhum filtro de defesa do sistema encontrado.</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||
1113
+(d="All Ethernet Protocol"+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" \u00e0s"+a.FilterProfileData+" pacote / s"),1==a.ActionEventOnMatch&&(d+=", Evento em jogo"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=xxSystemDefense.AMT_IPHeadersFilter.responses[c];
1114
+(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="All Ethernet Protocol"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==a.FilterProfile&&(d+=" \u00e0s"+a.FilterProfileData+" pacote / s");1==a.ActionEventOnMatch&&(d+=", Evento em jogo");var q=0;for(e in xxSystemDefenceFilters)a[e]&&q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+
1115
+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("Adicionar filtro ...","AddDefenseFilter()")+AddButton("Adicionar pol\u00edtica ...","AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}
1116
+function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1117
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1118
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1119
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1120
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>Nenhum";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1121
+"Pol\u00edtica de Defesa do Sistema Padr\u00e3o",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>Pol\u00edtica padr\u00e3o</div></div>",b)}}
1122
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
1123
+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1124
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">Porta Ethernet Intel (r) AMT '+
1125
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1126
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("Pol\u00edtica de Defesa do Sistema Padr\u00e3o","N\u00e3o foi poss\u00edvel definir a pol\u00edtica, erro"+d):PullSystemDefense()}
1127
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Nome</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Filtro de pacotes IP Ethernet<option value=1>Filtro de pacotes Ethernet ARP<option value=2>Filtro de pacotes IPv4<option value=3>Filtro de pacotes IPv6</select><div style=padding-top:4px>Tipo</div></div>";b+=
1128
+'<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="Regras opcionais" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Regras de Correspond\u00eancia</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Sa\u00edda / transmiss\u00e3o<option value=1>Entrada / Recebimento</select><div style=padding-top:4px>Dire\u00e7\u00e3o</div></div>";
1129
+b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Permitir, Contar<option value=1>Drop, Count<option value=2>Taxa limite<option value=3>Permitir<option value=4>Solta</select><div style=padding-top:4px>A\u00e7ao</div></div>";b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Pacotes / segundo</div></div>";
1130
+b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>Fazer nada<option value=1>Evento em jogo</select><div style=padding-top:4px>Registro de Eventos</div></div>";setDialogMode(11,"Adicionar filtro de defesa do sistema",3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1131
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1132
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="Hdr"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1133
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1134
+function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("Adicionar filtro de defesa do sistema","N\u00e3o foi poss\u00edvel adicionar o filtro, erro #"+d):PullSystemDefense()}
1135
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="Tr\u00e1fego Ethernet",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="All Ethernet Protocol"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="Tr\u00e1fego IP",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="Todo o protocolo IP"+d.HdrIPVersion));var p;p=""+addHtmlValue("Nome",EscapeHtml(d.Name));p+=addHtmlValue("Tipo",
1136
+e);p+=addHtmlValue("Tr\u00e1fego correspondente",a);p+=addHtmlValue("Dire\u00e7\u00e3o",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("Filtro"+a,e));p+=addHtmlValue("Evento em jogo",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,
1137
+"Filtro Ethernet #"+d.InstanceID,5,showFilterDetailsOk,p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("Remover filtro","N\u00e3o foi poss\u00edvel remover o filtro, verifique se ele n\u00e3o est\u00e1 em uso."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1138
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>Nome</div></div><div style=height:26px;margin-top:4px><select id=policytx title="A\u00e7\u00e3o padr\u00e3o a ser tomada para o tr\u00e1fego de sa\u00edda" style=float:right;width:133px><option value=0>Allow<option value=1>Solta<option value=2>Permitir, Contar<option value=3>Drop, Count<option value=4>Permitir, Contar, Evento<option value=5>Drop, Count, Evento</select><select id=policyrx style=float:right;width:133px title="A\u00e7\u00e3o padr\u00e3o a ser tomada para o tr\u00e1fego de entrada"><option value=0>Permitir<option value=1>Solta<option value=2>Permitir, Contar<option value=3>Drop, Count<option value=4>Permitir, Contar, Evento<option value=5>Drop, Count, Evento</select><div style=padding-top:4px>TX / RX padr\u00e3o</div></div>';b+=
1139
+"<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1140
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>Adicionar filtro</div></div>"}setDialogMode(11,"Adicionar diretiva de defesa do sistema",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}
1141
+function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1142
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>Esta pol\u00edtica n\u00e3o cont\u00e9m filtros.</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Retirar","removeFilterButton("+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+GetFilterById(xxAddDefensePolicyFilters[c]).Name+
1143
+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1144
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1145
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("Adicionar diretiva de defesa do sistema","N\u00e3o foi poss\u00edvel adicionar a pol\u00edtica, erro #"+d):PullSystemDefense()}
1146
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("Nome",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("Preced\u00eancia",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"Solta":"Permitir";1==c.TxDefaultCount&&(d+=", Contagem");1==c.TxDefaultMatchEvent&&(d+=", Evento");a+=addHtmlValue("A\u00e7\u00e3o TX padr\u00e3o",d);d=1==c.RxDefaultDrop?"Drop":"Allow";1==c.RxDefaultCount&&(d+=", Count");1==c.RxDefaultMatchEvent&&
1147
+(d+=", Event");a+=addHtmlValue("A\u00e7\u00e3o RX padr\u00e3o",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=addHtmlValue("N\u00ba do filtro"+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("Pol\u00edtica #",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}
1148
+function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("Remover pol\u00edtica","N\u00e3o foi poss\u00edvel remover a pol\u00edtica, verifique se ela n\u00e3o est\u00e1 em uso."):PullSystemDefense()}var xxWireless;function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}function wifiRefresh(){xxdialogMode||PullWireless()}
1149
+var xxWifiState={3:"Desativado",32768:"Ativado em S0",32769:"Habilitado em S0, Sx / AC"},xxRadioState={2:"Ligado, conectado",3:"Fora",6:"Ativado, Desconectado"},xxWifiAuthenticationMethod={1:"De outros",2:"Aberto",3:"Chave compartilhada",4:"WPA PSK",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"De outros",2:"WEP",3:"TKIP-RC4",4:"CCMP-AES",5:"Nenhum"};function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1150
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>Perfis sem fio</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>Perfis sem fio que o Intel® AMT usar\u00e1 para conectividade de rede.<br><br>";for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+
1151
+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("Retirar",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>N\u00e3o h\u00e1 perfis sem fio presentes</i><br>");e+="<br><td class=r2>";e=xxAccountAdminName?e+TableEnd(AddButton("Novo perfil","showWifiNewProfile()")):
1152
+e+TableEnd("");QH(22,e+"<br>")}}}function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"Estado sem fio",3,wifiStateDlg,b)}}
1153
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1154
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("Nome do perfil",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("Autentica\u00e7\u00e3o",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("Criptografia",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("Prioridade",b.Priority);messagebox("Perfil sem fio",c+"</div>")}}
1155
+function wifiRemoveButton(b){xxdialogMode||(QH(66,format('Remover perfil sem fio "{0}"?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"Perfil sem fio",3,function(){removeWifiButtonEx(b)}))}function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}
1156
+function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1157
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"Adicionar perfil sem fio",3,function(){addWifiProfile()});updateWifiDialog()}}
1158
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1159
+PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1160
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1161
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1162
+var DMTFCPUStatus="Desconhecido;ativado;Desativado pelo usu\u00e1rio;Desativado pelo BIOS (erro POST);Ocioso;De outros".split(";"),DMTFMemType="Desconhecido;De outros;DRAM;DRAM s\u00edncrona;DRAM de cache;EDO;EDRAM;VRAM;SRAM;RAM;ROM;Instant\u00e2neo;EEPROM;FEPROM;EPROM;CDRAM;3DRAM;SDRAM;SGRAM;RDRAM;DDR;DDR-2;BRAM;FB-DIMM;DDR3;FBD2;DDR4;LPDDR;LPDDR2;LPDDR3;LPDDR4".split(";"),DMTFMemFormFactor=";De outros;Desconhecido;SIMM;trago;Lasca;MERGULHO;ZIP;Cart\u00e3o Propriet\u00e1rio;DIMM;TSOP;Linha de chips;RIMM;SODIMM;SRIMM;FB-DIM".split(";"),
1163
+DMTFProcFamilly={191:"Processador Intel® Core ™ 2 Duo",192:"Processador Intel® Core ™ 2 Solo",193:"Processador Intel® Core ™ 2 Extreme",194:"Processador Intel® Core ™ 2 Quad",195:"Processador m\u00f3vel Intel® Core ™ 2 Extreme",196:"Processador m\u00f3vel Intel® Core ™ 2 Duo",197:"Processador m\u00f3vel Intel® Core ™ 2 Solo",198:"Processador Intel® Core ™ i7",199:"Processador Intel® Celeron® de n\u00facleo duplo"},
1164
+HardwareInventory;
1165
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("Salve \ue051...","SaveHardwareLog()")+" As informa\u00e7\u00f5es de hardware s\u00e3o coletadas no momento da inicializa\u00e7\u00e3o do sistema.");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>Plataforma</h2>"+
1166
+FullTable({"Modelo de computador":c.Model,Fabricante:c.Manufacturer,"Vers\u00e3o":c.Version,"N\u00famero de s\u00e9rie":c.SerialNumber,"ID do sistema":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>Rodap\u00e9</h2>";b+=FullTable({Fabricante:d.Manufacturer,"Nome do Produto":d.Model,"Vers\u00e3o":d.Version,"N\u00famero de s\u00e9rie":d.SerialNumber,"Etiqueta de recurso":d.Tag,"Substitu\u00edvel?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({Fornecedor:a.CIM_BIOSElement.response.Manufacturer,
1167
+"Vers\u00e3o":q,"Data de lan\u00e7amento":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>Processador "+(parseInt(e)+1)+"</h2>",b+=FullTable({Fabricante:trademarks(d.Manufacturer),"Fam\u00edlia":DMTFProcFamilly[c.Family],"Vers\u00e3o":trademarks(d.Version),"Velocidade m\u00e1xima do soquete":c.MaxClockSpeed+" MHz",Status:DMTFCPUStatus[c.CPUStatus]},
1168
+"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=a.CIM_PhysicalMemory.responses[e],b+="<h2>M\u00f3dulo de mem\u00f3ria "+(+e+1)+"</h2>",b+=FullTable({"R\u00f3tulo do banco":c.BankLabel,Fabricante:c.Manufacturer,"N\u00famero de s\u00e9rie":c.SerialNumber,Tamanho:parseInt(c.Capacity/1048576)+" MB","Fator de forma":DMTFMemFormFactor[c.FormFactor],Tipo:DMTFMemType[c.MemoryType],"Etiqueta de recurso":c.Tag,"N\u00famero da pe\u00e7a":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=
1169
+a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>M\u00eddia de armazenamento "+(parseInt(e)+1)+"</h2>",b+=FullTable({Modelo:d.Model,"N\u00famero de s\u00e9rie":""==d.SerialNumber?"Unknown":d.SerialNumber,Tamanho:parseInt(Math.round(1E3*c.MaxMediaSize/1048576))+" MB"},"");b+="<br>";QH(18,b);updateSystemStatus()}}
1170
+function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","Informa\u00e7\u00f5es de hardware da Intel AMT",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}
1171
+function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"Pol\u00edtica de energia Intel® AMT",3,showPowerPolicyDlgOk,c)}}
1172
+function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1173
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1174
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1175
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1176
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>Gerencie as contas de usu\u00e1rio Intel® AMT deste computador.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=a.AccessPermission){2==
1177
+q&&(p+="Desativado,");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a.Reinos[c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="Auditor,");p=0<=a.Realms.indexOf(3)?p+"Administrador":1==k?p+"1 regi\u00e3o":p+(k+" reinos")}else p+="Administrador",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("Editar...",
1178
+"changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="Alternar contas ocultas" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");xxAccountAdminName&&(c+=AddButton("Nova conta",
1179
+"newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1180
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"Editar conta",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1181
+function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"Nova conta",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1182
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("Erro na conta","Par\u00e2metros inv\u00e1lidos");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,
1183
+k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1184
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">Administrador</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1185
+function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["Apenas local","Apenas rede","Todos (Local e Rede)"];
1186
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("Nome",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("Estado",1==xxAccountEnabledInfo[b].Enabled?"ativado":"Desativado"));if(e==xxAccountAdminName)a+=addHtmlValue("Permiss\u00e3o","Administrador");else{var a=a+addHtmlValue("Permiss\u00e3o",xxUserPermissions[c.AccessPermission]),q="";if(0<=c.Realms.indexOf(3))q="Administrador",
1187
+0<=c.Realms.indexOf(20)&&(q+="Auditor");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+=","),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="Nenhum");a+=addHtmlValue("Reinos","")+"<b>"+q+"</b>"}messagebox("Conta"+e,a+"</div>")}}
1188
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("Navegador",c,browserResponse,null,!0))}
1189
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>(Esvaziar)":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>Erro #"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1190
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1191
+function onTerminalStateChange(b,c){c4.value=0==c?"Conectar":"desconectar";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1192
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["Terminal UTF8","ASCII estendido","Intel ASCII"];
1193
+function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["Intel (F10 = ESC + [OM)","Alternativo (F10 = ESC + 0)","VT100 + (F10 = ESC + [OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1194
+function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR + LF",terminal.m.lineFeed="\r\n")}
1195
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="Stop Capture";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),b+".txt")}delete terminal.m.capture;
1196
+c3.value="Come\u00e7ar captura"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"Colar",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1197
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1198
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1199
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1200
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1201
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("DataChannel",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1202
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1203
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1204
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1205
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1206
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1207
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1208
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1209
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"Conectar":"desconectar";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("\u00c1rea de trabalho remota","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("\u00c1rea de trabalho remota","The device indicated that this type of connection of not supported."):
1210
+5E4==b.disconnectCode?messagebox("\u00c1rea de trabalho remota","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1211
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b=", Soft-KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"Configura\u00e7\u00f5es da \u00e1rea de trabalho remota",3,showDesktopSettingsChanged))}
1212
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1213
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1214
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1215
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1216
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1217
+"8px"),center()))}
1218
+function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"Entrada remota do teclado",3,showDeskTypeEx,'<div>Digite o texto e clique em OK para digit\u00e1-lo remotamente usando um teclado em ingl\u00eas dos EUA. Certifique-se de colocar o cursor remoto na posi\u00e7\u00e3o correta antes de continuar.<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1219
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1220
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1221
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1222
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1223
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1224
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1225
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1226
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1227
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1228
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1229
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1230
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>Raiz</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+'">'+EscapeHtml(r.substring(0,
1231
+70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1232
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1233
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1234
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1235
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1236
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="Selecionar tudo",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||0==
1237
+d));QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"Selecione nenhum":"Selecionar tudo";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24PasteButton",(0<p24filetreelocation.length||
1238
+0==d)&&null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}
1239
+function p24createfolder(){setDialogMode(11,"Nova pasta",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}
1240
+function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"Excluir",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1241
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"Renomear",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1242
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1243
+function p24uploadFile(){setDialogMode(11,"Subir arquivo",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;
1244
+function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1245
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"Colar",3,p24pasteFileEx,b)}
1246
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1247
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1248
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1249
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24filetable"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1250
+function getFileSizeStr(b){return 1==b?"1 byte":format("{0} bytes",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();
1251
+function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1252
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"\u21ec Fazer download do arquivo",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+a+" />"))}
1253
+function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1254
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1255
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"Subir arquivo",10,p24uploadFileCancel,"<div id=p24dfileName>Configurando...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1256
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1257
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1258
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1259
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1260
+function iderStart(b){if(!xxdialogMode){b="<div>Monte imagens de disco em um computador Intel® AMT - Experimental.</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+NoBreak("Disquete (.img)")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+NoBreak("CDROM (.iso)")+"</div></div>";setDialogMode(11,"Redirecionamento de armazenamento",3,iderStart2,
1261
+b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>Na pr\u00f3xima inicializa\u00e7\u00e3o<option value=1>Gracioso<option value=2>Imediato</select><div>In\u00edcio da sess\u00e3o</div></div>");b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=b.substring(1,b.length-1))}}
1262
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("Erro de redirecionamento de armazenamento","Pelo menos um arquivo de imagem de disco deve ser selecionado.");else if(1==Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("Erro de redirecionamento de armazenamento","Arquivo .img inv\u00e1lido.");else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%2048)messagebox("Erro de redirecionamento de armazenamento",
1263
+"Arquivo .iso inv\u00e1lido.");else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,Q("iderStartType").value)}}
1264
+function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1265
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1266
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"Servidor":"")+"Sess\u00e3o IDE-R </b>, conectada,"+ider.m.bytesFromAmt+" no,"+ider.m.bytesToAmt+" Fora.")}var heatMapWidth=600,heatMapDividor={};
1267
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CDROM </b>, os blocos s\u00e3o {0} bytes.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b> Disquete </b>, os blocos s\u00e3o {0} bytes.",512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=
1268
+6*(Math.floor(a/(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1269
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"Redirecionamento de armazenamento",a?a:3,onIderDialogPromptOk,c.html)}
1270
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1271
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"Desativado",32769:"BIOS ativado",32770:"Ativar sistema operacional",32771:"BIOS e SO ativado"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1272
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1273
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1274
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1275
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1276
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="Desativado",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="Ativado,"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("Detec\u00e7\u00e3o do ambiente",addLink(c,"editEnvironmentDetection()"));
1277
+b+=TableEntry("Op\u00e7\u00f5es de inicia\u00e7\u00e3o do usu\u00e1rio",addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>Nenhum</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("Conex\u00e3o iniciada pelo usu\u00e1rio",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));
1278
+c="<i>Nenhum</i>";if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("Conex\u00e3o iniciada por alerta",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>Nenhum</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,
1279
+"PolicyRuleName","Peri\u00f3dico");if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format(", a cada {0} segundos",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("Conex\u00e3o peri\u00f3dica",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Gerenciar servidores de gerenciamento remoto Intel® AMT.<br><br>";if(0==
1280
+xxCiraServers.length)b+="<div style=padding-left:15px><br><i>Nenhum servidor remoto encontrado.</i></div><br>";else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>Gerenciar proxies HTTP usados \u200b\u200bpara conex\u00f5es de gerenciamento.<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,
1281
+0==c.length)b+="<div style=padding-left:15px><br><i>Nenhum proxy configurado.</i></div><br>";else for(d in c)b+="<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("Adicionar servidor...","AddRemoteAccessServer()"),a&&(d+=AddButton("Adicionar proxy ...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+
1282
+d);QH(58,b)}}var xxEditMpsPolicyType;
1283
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="Iniciado pelo usu\u00e1rio");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(Nenhum)",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?" selected":
1284
+"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>Servidor prim\u00e1rio</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Externo<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA - Interno</select><div>Tipo MPS Prim\u00e1rio</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";
1285
+c+="<option value=-1>(Nenhum)";for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>Servidor secund\u00e1rio</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - Externo<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA - Interno</select><div>Tipo MPS secund\u00e1rio</div></div>")}e=
1286
+0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>Vida \u00fatil do t\u00fanel (segundos)</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">Peri\u00f3dico, intervalo de tempo<option value=1"+
1287
+(1==a?" selected":"")+">Hora do dia, uma vez ao dia",c+="</select><div>Tipo de gatilho</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("Conex\u00e3o {0}",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1288
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1289
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"Intervalo de disparo (segundos)":"Hora do dia (HH: MM)"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1290
+function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1291
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1292
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1293
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1294
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="Digite at\u00e9 5 sufixos de dom\u00ednio da intranet. Se o computador estiver fora desses dom\u00ednios, as portas locais Intel® AMT ser\u00e3o fechadas e as conex\u00f5es do servidor remoto estar\u00e3o ativas.<br><br>");0==editEnvironmentDetectionTmp.length&&(c+="<i>Nenhum dom\u00ednio da intranet, detec\u00e7\u00e3o de ambiente desativada.</i><br>");
1295
+for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Retirar","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");
1296
+1==b?QH(69,c):setDialogMode(11,"Detec\u00e7\u00e3o de ambiente",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1297
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("Detec\u00e7\u00e3o de ambiente",format("Falha ao adicionar servidor, status {0}",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("Detec\u00e7\u00e3o de ambiente",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}
1298
+function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}
1299
+function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"T\u00fanel iniciado pelo usu\u00e1rio",3,editUserInitiatedCiraDlg,b)}}
1300
+function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1301
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("Nome de acesso",c.AccessInfo);c.Port&&(a+=addHtmlValue("Porta",c.Port));c.CN&&(a+=addHtmlValue("Nome comum",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,0<c.indexOf("Username")?(a+=addHtmlValue("Tipo de Autentica\u00e7\u00e3o","Usu\u00e1rio e Senha / TLS de Autentica\u00e7\u00e3o de Servidor"),
1302
+a+=addHtmlValue("ID Remoto",getInstance(xxMPSUserPass,c).RemoteID)):(a+=addHtmlValue("Tipo de Autentica\u00e7\u00e3o","TLS de certificado / autentica\u00e7\u00e3o m\u00fatua"),c=getInstance(xxCertificates,c),a+=addHtmlValue("nome v\u00e1lido",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Servidor remoto #"+(b+1),c,showServerDetailsOk,a)}
1303
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1304
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}function showServerDetailsOk2(b,c,a,d){408==d?messagebox("Remo\u00e7\u00e3o de servidor remoto","N\u00e3o foi poss\u00edvel remover o servidor, acesso negado."):PullRemoteAccess()}function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1305
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("Nome de acesso",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("Sufixo DNS",c.NetworkDnsSuffix),a=a+addHtmlValue("Tipo de proxy",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"Proxy HTTP #"+(b+1),c,showProxyDetailsOk,a,b)}
1306
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("Remo\u00e7\u00e3o de Proxy HTTP","N\u00e3o foi poss\u00edvel remover o proxy HTTP, acesso negado."):PullRemoteAccess()}
1307
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>Nome do host FQDN<option value=3>Endere\u00e7o IPv4<option value=4>Endere\u00e7o IPv6</select><div>Tipo de conex\u00e3o</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>Porta</div></div>';b+=
1308
+"<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>Sufixo DNS</div></div>";setDialogMode(11,"Adicionar proxy HTTP",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1309
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN / nome do host","Endere\u00e7o IPv4","Endere\u00e7o IPv6"][Q("d2type").value])}function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}
1310
+function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("Adicionar servidor proxy","Falha ao adicionar proxy, status"+d):0!=a.Body.ReturnValue?messagebox("Adicionar servidor proxy",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1311
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>Nome do host FQDN<option value=3>Endere\u00e7o IPv4</select><div>Tipo de conex\u00e3o</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";a+='<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>Porta do servidor</div></div>';
1312
+a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Nome comum do servidor</div></div>";a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";0<b.length&&(a+="<option value=1>Certificado");a+="<option value=2>Usu\u00e1rio senha</select><div>Tipo de Autentica\u00e7\u00e3o</div></div>";a+="<span id=d2utype>";a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Nome do usu\u00e1rio</div></div>";
1313
+a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>Senha forte</div></div>";a+="</span>";a+="<span id=d2ctype>";a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>Certificado</div></div></span>";setDialogMode(11,"Adicionar servidor remoto",3,AddRemoteAccessServerOk,
1314
+a);AddRemoteAccessServerUpdate()}
1315
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+Q("d2cert").value+
1316
+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1317
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("Adicionar servidor da Internet",format("Falha ao adicionar servidor, status {0}",d)):0!=a.Body.ReturnValue?messagebox("Adicionar servidor da Internet",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1318
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"nome de anfitri\u00e3o":"Endere\u00e7o IPv4");QV("d2utype",2==Q("d2auth").value);
1319
+QV("d2ucn",3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1320
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>Nome e dom\u00ednio</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+(b?"selected":"")+'>Compartilhado, igual ao SO<option value="false" '+
1321
+(b?"":"selected")+">Dedicado, diferente do SO</select><div>Partilha de nomes</div></div>");setDialogMode(11,"Nome do computador",3,editNameDlgOk,c)}}function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1322
+function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"Cliente DNS din\u00e2mico",3,showEditDnsDlgOk)}}
1323
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1324
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"Recursos da Intel® AMT",3,featuresDlgOk))}
1325
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("Erro","Erro RedirectionService, RequestStateChange"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,0,function(a,c,d,e){200!=e?messagebox("Erro","Erro KVMRedirectionSAP, RequestStateChange"+
1326
+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("Erro","Erro RedirectionService PUT"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}
1327
+function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"Consentimento do Usu\u00e1rio",3,consentDlgOk)}}
1328
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="Endere\u00e7o local do link;Endere\u00e7o local da rede;Endere\u00e7o global;Usu\u00e1rio configurado;N\u00e3o permitido;DAD em andamento;v\u00e1lido;descontinuada;preferido / descontinuado;expirado;colis\u00e3o;n\u00e3o permitido".split(";");
1329
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+","+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"Endere\u00e7os IPv6 para interface com fio":"Endere\u00e7os IPv6 para interface sem fio",1,null,a+TableEnd())}}
1330
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 desativado");QH("d21l1","IPv6 ativado, autom\u00e1tico");QH("d21l2","IPv6 ativado, endere\u00e7o autom\u00e1tico + manual");d21o0.checked=!c;d21o1.checked=c&&
1331
+!ipv6manual;d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"Suporte IPv6 para interface com fio":"Suporte IPv6 para interface sem fio",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1332
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1333
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1334
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1335
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1336
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Suporte IPv6",format("N\u00e3o foi poss\u00edvel definir o estado IPv6, erro {0}",d))}
1337
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"Resposta de ping Intel® AMT",3,showPingActionDlgOk)}}
1338
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1339
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","Configura\u00e7\u00e3o autom\u00e1tica usando o servidor DHCP");QH("d21l2","Configura\u00e7\u00e3o est\u00e1tica usando as configura\u00e7\u00f5es IPv4 abaixo");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=
1340
+!d21o1.checked;c30.value=isIpAddress(b.IPAddress,"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"Configura\u00e7\u00f5es IPv4",3,showIPSetupDlgOk)}}
1341
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6 ativado, endere\u00e7o autom\u00e1tico + manual"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1342
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1343
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("Configura\u00e7\u00f5es IPv4",format("N\u00e3o foi poss\u00edvel definir os par\u00e2metros de rede, erro {0}",d))}amtPowerBootCapabilities=null;
1344
+function showPowerActionDlg(){xxdialogMode||(statusbox("A\u00e7\u00f5es de poder","Verificando recursos ..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1345
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","Energizar",2);b&1&&(addOption("d5actionSelect","Redefinir",10),addOption("d5actionSelect","Ciclo de energia",5),addOption("d5actionSelect","Desligar",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect","Ligar ao diagn\u00f3stico",300),
1346
+b&1&&addOption("d5actionSelect","Redefinir para diagn\u00f3stico",301));9<amtversion&&b&1&&(addOption("d5actionSelect","Despertar do sistema operacional em modo de espera",500),addOption("d5actionSelect","Economia de energia do SO",501),addOption("d5actionSelect","Soft-off",12),addOption("d5actionSelect","Redefini\u00e7\u00e3o suave",14),addOption("d5actionSelect","Dormir",4),addOption("d5actionSelect","Hibernate",7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&addOption("d5actionSelect","Ligue o BIOS",
1347
+100),b&1&&addOption("d5actionSelect","Redefinir para BIOS",101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","Ligue para apagar com seguran\u00e7a",104),b&1&&addOption("d5actionSelect","Redefinir para exclus\u00e3o segura",105));b&1&&addOption("d5actionSelect","Redefinir para disquete IDE-R",200);b&2&&addOption("d5actionSelect","Ligue o disquete IDE-R",201);b&1&&addOption("d5actionSelect","Redefinir para CD-ROM IDE-R",202);b&2&&addOption("d5actionSelect","Ligue o CD-ROM IDE-R",
1348
+203);b&1&&addOption("d5actionSelect","Redefinir para PXE",400);b&2&&addOption("d5actionSelect","Ligue o PXE",401);addOption("d5actionSelect","A\u00e7\u00e3o personalizada ...",999);5<amtversion&&addOption("d5actionSelect","Consentimento do usu\u00e1rio ...",998);setDialogMode(5,"A\u00e7\u00f5es de poder",3,powerActionDlgCheck)}else messagebox("A\u00e7\u00e3o de poder",format("N\u00e3o foi poss\u00edvel obter os recursos do sistema, erro {0}",d))}
1349
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"A\u00e7\u00e3o de energia conclu\u00edda."):QH(66,format("Erro de a\u00e7\u00e3o de energia # {0}.",e));setDialogMode(1,"A\u00e7\u00e3o de poder",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="Confirmar a execu\u00e7\u00e3o do Intel® Remote Secure Erase?<br>Digite a senha de Exclus\u00e3o segura, se necess\u00e1rio.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>Senha</div></div><br><div style=color:red><b> AVISO: </b> Isso limpar\u00e1 os dados no sistema remoto.</div>",
1350
+rsepass=1,setDialogMode(11,"A\u00e7\u00f5es de poder",3,powerActionDlg,b)):powerActionDlg()}
1351
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("A\u00e7\u00e3o de poder","Verificando estado ...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&(c=!1);c?amtstack.Get("IPS_OptInService",
1352
+powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1353
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1354
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1355
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"A\u00e7\u00e3o de energia personalizada",
1356
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1357
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"A\u00e7\u00e3o de energia conclu\u00edda."):QH(66,format("Erro de a\u00e7\u00e3o de energia # {0}.",e));setDialogMode(1,"A\u00e7\u00e3o de poder",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=
1358
+Q("d24BiosSecureBoot").checked,AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=
1359
+Q("d24LockSleepButton").checked,AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),statusbox("A\u00e7\u00e3o de poder","Verificando estado ..."),
1360
+amtstack.Get("IPS_OptInService",powerActionResponse0,0,1))}
1361
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("A\u00e7\u00e3o de poder",format("Erro # {0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"Consentimento do Usu\u00e1rio",11,powerActionSendConsent),checkConsentDisplay(),consentChanged()):(statusbox("A\u00e7\u00e3o de poder","Iniciando a inscri\u00e7\u00e3o ..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,
1362
+0,1)):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Consentimento do Usu\u00e1rio","N\u00e3o \u00e9 necess\u00e1rio o consentimento do usu\u00e1rio."):(statusbox("A\u00e7\u00e3o de poder","Obtendo configura\u00e7\u00f5es de inicializa\u00e7\u00e3o ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1363
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("A\u00e7\u00e3o de poder",format("Erro #",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("Erro de consentimento do usu\u00e1rio",a.Body.ReturnValueStr.replace(/_/g," ")):(d6ConsentText.value="",setDialogMode(6,"Consentimento do Usu\u00e1rio",11,powerActionSendConsent),checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",
1364
+function(a,b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1365
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("A\u00e7\u00e3o de poder","Enviando consentimento do usu\u00e1rio ..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1366
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("A\u00e7\u00e3o de poder",format("Erro # {0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("Consentimento do Usu\u00e1rio","Consentimento do usu\u00e1rio bem-sucedido."):(statusbox("A\u00e7\u00e3o de poder","Verificando estado ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1367
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("A\u00e7\u00e3o de poder",format("Erro # {0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=AvdPowerDlg.IDERBootDevice,e.LockKeyboard=
1368
+AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&(e.RSEPassword=
1369
+AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,!0===e.SecureErase&&
1370
+0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("A\u00e7\u00e3o de inicializa\u00e7\u00e3o: "+b);console.log("Definindo as configura\u00e7\u00f5es de inicializa\u00e7\u00e3o: "+ObjectToString2(e));
1371
+statusbox("A\u00e7\u00e3o de poder","Definindo configura\u00e7\u00f5es de inicializa\u00e7\u00e3o ...");amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,function(a,b,c,d){200!=d?messagebox("A\u00e7\u00e3o de poder",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,
1372
+0,1)},0,1)}}function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("A\u00e7\u00e3o de poder",format("PUT AMT_BootSettingData, erro # {0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("A\u00e7\u00e3o de poder","Definindo a pr\u00f3xima inicializa\u00e7\u00e3o ..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1373
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1374
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1375
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("A\u00e7\u00e3o de poder","Executando a\u00e7\u00e3o de poder ...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);targetPowerAction=
1376
+b;11==b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("A\u00e7\u00e3o de poder","Pr\u00f3ximo conjunto de a\u00e7\u00f5es de inicializa\u00e7\u00e3o.")}}
1377
+function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"A\u00e7\u00e3o de energia conclu\u00edda."),setDialogMode(1,"A\u00e7\u00e3o de poder",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}function consentChanged(){QE("c49",6==d6ConsentText.value.length)}function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}
1378
+function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1379
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1380
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1381
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1382
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gerenciar o armazenamento Intel® AMT para este computador.<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+
1383
+" / "+r):e+"Raiz";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("Baixar","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" bytes</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==n&&(wsstack.comm.PerformAjax("",
1384
+function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>Nenhum arquivo encontrado.</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+(q?AddButton("Envio...","UploadToStorage()"):
1385
+""));QH(61,a)}else QH(61,"N\u00e3o foi poss\u00edvel carregar os dados de armazenamento ...<br/>"+AddButton("Atualizar","PullStorage()"))}
1386
+function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("Fornecedor",b));""!=c&&(e+=addHtmlValue("Inscri\u00e7\u00e3o",c));e+=addHtmlValue("Nome",a);e+=addHtmlValue("Tamanho",q.size+" bytes");q.link&&(e+=addHtmlValue("Liga\u00e7\u00e3o",q.link));setDialogMode(11,"Item de armazenamento",5,showStorageDetailsEx,e,d)}}
1387
+function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}function storageDeleteResponse(b,c){200!=c?messagebox("Armazenamento",format("N\u00e3o foi poss\u00edvel excluir o arquivo (ERR {0}), verifique se o computador est\u00e1 ligado.",c)):PullStorage()}function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}
1388
+function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}
1389
+function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}function PushToStorageResponse(b,c,a){200!=c?messagebox("Armazenamento",format("N\u00e3o foi poss\u00edvel enviar o arquivo por push (ERR {0}), verifique se o computador est\u00e1 ligado.",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1390
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>Selecione um arquivo pequeno para carregar no armazenamento e insira um fornecedor, aplicativo e nome do arquivo.<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>Subir arquivo</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+
1391
+'<br><div style=height:16px><input id=mstoragevendor placeholder="Fornecedor" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>Nome do vendedor</div></div>';a+='<br><div style=height:16px><input id=mstorageapplication placeholder="Aplicativo" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>Nome da Aplica\u00e7\u00e3o</div></div>';a+='<br><div style=height:16px><input id=mstoragefilename placeholder="Nome do arquivo" maxlength=11 style=float:right;width:240px><div>Nome do arquivo</div></div>';
1392
+a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>Tipo MIME</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="Se definido, cria um link para este conte\u00fado na p\u00e1gina principal da web">Liga\u00e7\u00e3o</div></div><br>';a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';a+=
1393
+"</datalist>";a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"Upload de armazenamento",3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}
1394
+function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1395
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1396
+b}
1397
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1398
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1399
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," dias").replace("H"," horas").replace("M"," minutos");b=b.replace(" 1 dia"," 1 dia").replace(" 1 hora"," 1 hora").replace(" 1 minuto"," 1 minuto");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1400
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Gerenciar alarmes de ativa\u00e7\u00e3o.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, acordar em "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," \u00e0s"),void 0!=d[c].Interval&&(a+=" e cada"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&(a+=", exclua quando terminar"),
1401
+b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("Editar...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>Nenhum alarme de ativa\u00e7\u00e3o registrado.</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("Remova todos os alarmes","RemoveAllAlarms()")+
1402
+AddButton("Adicionar","showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1403
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1404
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"Remova todos os alarmes de ativa\u00e7\u00e3o",3,RemoveAllAlarmsEx,"Confirmar a remo\u00e7\u00e3o de todos os alarmes de ativa\u00e7\u00e3o?")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1405
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1406
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1407
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"Adicionar novo alarme",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1408
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1409
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("Adicionar alarme",format("Falha ao adicionar alarme. Status: {0}. <br/> Verifique se o alarme \u00e9 para um tempo futuro.",d)):0!=c.Body.ReturnValue?messagebox("Adicionar alarme",format("Falha ao adicionar o alarme {0}. <br/> Verifique se o alarme \u00e9 para um tempo futuro.",
1410
+c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("Editar alarme",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1411
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("Nome",c.ElementName)+addHtmlValue("Tempo de vig\u00edlia",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("interno",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("Depois de acordar",1==c.DeleteOnCompletion?"Excluir alarme":"Manter Alarme")+"</div>";messagebox(format("Alarme {0}",c.ElementName),a);setDialogMode(11,"Alarme"+
1412
+c.ElementName,5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"Executar script",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1413
+function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1414
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1415
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("Executar script",
1416
+"Arquivo de script inv\u00e1lido.")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1417
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1418
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1419
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1420
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1421
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("Editar {0}",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1422
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1423
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1424
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1425
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1426
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1427
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1428
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1429
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1430
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1431
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1432
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1433
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1434
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1435
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1436
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1437
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1438
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1439
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"Arquivo bin\u00e1rio,"+script_BlockScript[c].vars[d].value.length+" bytes":"N\u00e3o configurado");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+="<tr><td style=height:3px></table>"}b+=
1440
+"</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">Inicie seu script arrastando e soltando blocos do lado esquerdo nesta caixa de script.<div>');QH("scriptblocks",b+"<div style=height:80px></div>");for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1441
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1442
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"Novo Script",3,script_newScriptDlgOk,"<br>Redefinir e limpar o editor de scripts?")}
1443
+function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1444
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("Erro de compila\u00e7\u00e3o de script",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","Parado");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,_mode:"Firmware"}),editscriptstate.wsstack=wsstack,
1445
+editscriptstate.amtstack=amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}
1446
+function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["Parado","Corrida","Pausado"];
1447
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="Parado, sem script";b&&null!=b&&(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,b.ip)));50<c.length&&(c=c.substring(0,
1448
+50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1449
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"Bloco de Script",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1450
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1451
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1452
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1453
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1454
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1455
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1456
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}var httpErrorTable={200:"Est\u00e1 bem",401:"Erro de autentica\u00e7\u00e3o",408:"Erro de tempo limite",601:"Erro de an\u00e1lise do WSMAN",602:"N\u00e3o foi poss\u00edvel analisar o cabe\u00e7alho de resposta HTTP",603:"Resposta inesperada de enumera\u00e7\u00e3o HTTP",604:"Resposta inesperada de recebimento de HTTP",997:"Regi\u00e3o de resumo inv\u00e1lida"};
1457
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("Erro # {0}",b)),401==b&&QH(5,'Erro de autentica\u00e7\u00e3o<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1458
+function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1459
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1460
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1461
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("Erro de chamada",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}
1462
+function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}
1463
+function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="Atualizar" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}
1464
+function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}
1465
+function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}
1466
+function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1467
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1468
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1469
+</script>
\ No newline at end of file
public/commander-ru.htm
new
+1620
@@ -0,0 +1,1620 @@
1
+<!DOCTYPE html><html lang="ru" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAEZ0FNQQAAsY58+1GTAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAANGSURBVHjadJNNTBwFAIW//UFWfrbsgDuzBTvu0s6OWhHwYMhCOEAbSESC4dpL07TFg9GkxIRDjT3YhEBNPUjC0SbaJjVNQyJQaxtDpzYmlDYUOjuUrhspO0N0gQVWl/0ZD5ZmPfiSd3t5l/c+h23bFCsajR7Rdf1GPBbHtEwAJFFCDsqoqno0HA7/WJx37BUkk8k6bUYb0g2jxy8G6kQpgK9KAGB9I4llJlizEiuqokxE2iJfCIKw8qIgmUzWTU1OfZXaSve9KQep3tzA9fQJhfhvZHd3yfl85OUg26F6os9W8FaWXevq7vpIEIQVJ4A2ow2lttJ9LTU1hH64Tt1qHHv8a0rnH/LS4iPsK9/iixnUXr1Ck3cfqa10nzajDQG4o9HoEd0wet493Ij/zm18n3yMJxQivbND7Px58thUD3xI+egoBcMgd+FLlO73mTUWe5Ro9Jqrs7Nz2eUu9YbSacriT8lms5Q3NlLR3s6uaVJQFISRC1SUuFm9dInJ6WlCfpGMFPBub6eOueOxOMobb+H4+Ta/f3cZz927FPJ5hOPHqRkZgT/+xFniIjY6yveDg0gOB9l6BbHpBMbiPE7TMvFVCWSXl3DU7secnWXu9GniFy+ymctRIfhYHxvj6pkzBG2bA0Du8SN8VQKmZeLc2zOXybA2P8+mbeNpbydTWUmJ203etvGIInV+PxVA9t/pXvzALYkS6xtJqoRq/rJtqoNB/KdO8Up/P+atWxSA8t5e3vN6mT55kgOrq5TUH2J9I4kkSjjloIxlJiiEDiK2tREYHkbq7yd57x6XOzr4paMD59IS+7q7+WB8nPtuNyVN72CZCeSgjFNV1dY1K6H9fbiBDWk/uwsL5G7e5JuWFhTgVUBrbmZX11memyMgv0a64W3WrISmqmqrw7ZtJq5PfP4sYZ0Nl5ayPjJM4fECKdtGAF5+bt3pxBt+HWXwU37NZKgNiOd6ens+27uyNDU5dTa1lR44JAXwPHiA/fA++ScGTsB1UMHV1MxOQyOGmcBbWTbW1d11ThAEsxgmSZvRBnTD6PCLgcj/wKSpivJTpC0yJgiC+R8ai3CO6Lp+NB6Lt5qWqTzH2ZCD8h1VVW+Ew2GtOP/PAFZGexs+cGPjAAAAAElFTkSuQmCC");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=Connect onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>Disconnected</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>Состояние системы</a><p id=go14 class=nav1 onclick=go(14)><a>Удаленный рабочий стол</a><p id=go24 class=nav1 onclick=go(24)> <a>файлы</a><p id=go13 class=nav1 onclick=go(13)><a>Последовательная по локальной сети</a><p id=go2 class=nav1 onclick=go(2)><a>Информация оборудовании</a><p id=go6 class=nav1 onclick=go(6)><a>Журнал событий</a><p id=go15 class=nav1 onclick=go(15)><a>Аудит Журнал</a><p id=go21 class=nav1 onclick=go(21)><a>Место хранения</a><p id=go8 class=nav1 onclick=go(8)><a>Сетевые настройки</a><p id=go17 class=nav1 onclick=go(17)><a>Настройки интернета</a><p id=go16 class=nav1 onclick=go(16)><a>Настройки безопасности</a><p id=go19 class=nav1 onclick=go(19)><a>Присутствие агента</a><p id=go18 class=nav1 onclick=go(18)><a>Защита системы</a><p id=go11 class=nav1 onclick=go(11)><a>Учетные записи пользователей</a><p id=go22 class=nav1 onclick=go(22)><a>Подписки</a><p id=go23 class=nav1 onclick=go(23)><a>Будильник</a><p id=go20 class=nav1 onclick=go(20)><a>Редактор скриптов</a><p id=go12 class=nav1 onclick=go(12)><a>Браузер WSMAN</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value="Карта диска" onclick=iderToggleDiskMap()><input type=button value="Остановить сеанс IDE-R" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>Флоппи, блоки по 512 байт.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CDROM, блоки по 2048 байт.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="Стоп Сценарий" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>Запуск сценария</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>Прошивка этого компьютера должна быть обновлена, <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>пожалуйста, проверьте здесь</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>Loading ...</h1></div><div id=p1 style=display:none><h1>Состояние системы</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>Информация оборудовании</h1><span id=18></span></div><div id=p6 style=display:none><h1>Журнал событий</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>Сетевые настройки</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>Учетные записи пользователей</h1><span id=23></span></div><div id=p12 style=display:none><h1>Браузер WSMAN</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=запрос style=margin:4px onclick=wsmanQuery()><input type=button value=Очистить style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=Фильтр style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Последовательный терминал через локальную сеть</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Порт перенаправления Intel® AMT или функция Serial-over-LAN отключена<span id=28>Нажмите здесь, чтобы включить его.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Удаленный компьютер не включен, нажмите здесь, чтобы выдать команду питания.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Силовые действия ..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="Начать операцию удаленного монтирования диска" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Начать захват" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=Connect onclick=connectTerminal(event) disabled="disabled"> <span id=31>Отключен.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR + LF" title="Переключить то, что отправит ключ возврата" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="Размер терминала переключения" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Intel (F10 = ESC + [OM)" title="Переключить тип эмуляции клавиш F1 - F10" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Расширенные Ascii" title="Тип эмуляции терминала" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=CTL-С onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=CTL-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value="возврат на одну позицию" onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=Вставить disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>Удаленный рабочий стол</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Порт перенаправления Intel® AMT или функция KVM отключены<span id=43>Нажмите здесь, чтобы включить его.</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Удаленный компьютер не включен, нажмите здесь, чтобы выдать команду питания.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="Повернуть налево" onclick=drotate(-1)>↺</div><div class=rb title="Повернуть вправо" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="Переключить полноэкранный режим" onkeypress="return false" onkeydown="return false" value=Полный onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="Сохранить скриншот удаленного рабочего стола" onkeypress="return false" onkeydown="return false" value=Сохранить... onclick=deskSaveImage() style=margin-right:3px><input type=button value="Настройки ..." title="Изменить настройки удаленного рабочего стола" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="Начать операцию удаленного монтирования диска" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="Изменить состояние питания удаленного компьютера" onkeypress="return false" onkeydown="return false" value="Силовые действия ..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=Connect onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>Отключен.</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>Выиграть<option value=1>Win + Down<option value=2>Win + Up<option value=3>Win + L<option value=4>Win + М<option value=20>Win + R<option value=23>Win + Left<option value=24>Win + Right<option value=5>Shift + Win + M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=послать onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=Тип onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>Пустой экран </span><span id=53><input id=54 type=checkbox>Только просмотр </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>Аудит Журнал</h1><span id=56></span></div><div id=p16 style=display:none><h1>Настройки безопасности</h1><span id=57></span></div><div id=p17 style=display:none><h1>Настройки интернета</h1><span id=58></span></div><div id=p18 style=display:none><h1>Защита системы</h1><span id=59></span></div><div id=p19 style=display:none><h1>Присутствие агента</h1><span id=60></span></div><div id=p20 style=display:none><h1>Редактор скриптов</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>Остановился</div><div><input type=button value="Просмотр редактора" title="Переключиться в режим редактора строк скрипта" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="View Builder" title="Переключиться на просмотр редактора блоков" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value="Новый ..." title="Очистить редактор скриптов" onclick=script_newScriptDlg()><input type=button value="Загрузить ..." title="Загрузить скрипт из файла" onclick=script_runScriptDlg()><input type=button value=Сохранить... title="Сохранить скрипт в файл" onclick=script_saveScript(event)><input type=button value="Запустить снова" title="Скомпилируйте скрипт и будьте готовы запустить его с самого начала" onclick=resetScriptButton()><input type=button value=Продолжить title="Запустить скрипт из текущей точки выполнения" onclick=runScriptButton()><input type=button value=Перемена title="Приостановить выполнение скрипта" onclick=breakScriptButton()><input type=button value=шаг title="Выполнить один шаг сценария" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>Script Builder</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="Блоки фильтров ..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>скрипт</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>Скомпилированный скрипт</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>переменные</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>Приставка</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>Место хранения</h1><span id=61></span></div><div id=p22 style=display:none><h1>Подписка на события</h1><span id=62></span></div><div id=p23 style=display:none><h1>Будильник</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>файлы</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=вверх> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="Выбрать все" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=Rename onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=удалять onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="Новая папка" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=Загрузить onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=Резать onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=копия onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=Вставить onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=обновление onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">Сортировать по имени<option value=2>Сортировать по размеру<option value=3>Сортировать по дате<option value=4>Спуск по имени<option value=5>Спуск по размеру<option value=6>Сходить по дате</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>имя пользователя</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Пароль*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Подтвердите Пароль</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>Местный<option value=1>сеть<option value=2>Любые</select><div>разрешение</div></div><div>Предоставленные разрешения</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>* Минимум 8 символов с прописными, строчными, 0-9 и одним из! @ # $% ^ & * () + -</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>Действие силы</div></div><div><span style=color:red>Предупреждение:</span>Некоторые действия с питанием могут привести к потере данных и могут отключить сеансы перенаправления рабочего стола, терминала или диска.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>Код согласия</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>Основной дисплей<option value=1>Вторичный дисплей<option id=d6ThirdDisplay value=2 style=display:none>Третий дисплей</select><div>Согласие Дисплей</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, Цвет<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>Кодировка изображения</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>Показать локальный курсор мыши</label><br><label><input type=checkbox id=d7showcad>Показать Ctrl-Alt-Del</label><br><label><input type=checkbox id=d7limitFrameRate>Ограничить частоту кадров</label><br><label><input type=checkbox id=d7noMouseRotate>Не вращайте мышь</label><br></div><div>Другие настройки</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">Программное обеспечение KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>Качественный</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87,5%<option value=768>75%<option value=640>62,5%<option value=512>50%<option value=384>37,5%<option value=256>25%<option value=128>12,5%</select><div style=height:20px>пересчет</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=админ style=float:right;width:220px><div style=height:20px>имя пользователя</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>пароль</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>Порт перенаправления</label><label id=c15 style=display:block><input type=checkbox id=c16>KVM Remote Desktop</label><label style=display:block><input type=checkbox id=c17>IDE-Перенаправление<br></label><label style=display:block><input type=checkbox id=c18>Последовательная по локальной сети<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>Не требуется<br></label><label><input type=radio name=d10 id=c20 value=1>Требуется только для KVM<br></label><label><input type=radio name=d10 id=c21 value=4294967295>Всегда требуется<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Максимум 32 символа"><div title="Максимум 32 символа">Имя профиля</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Максимум 32 символа"><div title="Максимум 32 символа">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>приоритет</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>Аутентификация</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>Никто</select><div>шифрование</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Длина от 8 до 63 символов"><div title="Длина от 8 до 63 символов">Пароль*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Длина от 8 до 63 символов"><div title="Длина от 8 до 63 символов">Подтвердите Пароль</div></div></div><div id=dialog19 style=margin:auto;margin:3px>Это сохранит все состояние Intel® AMT для этого компьютера в файл. Пароли не будут сохранены, но некоторые конфиденциальные данные могут быть включены.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>Отключено<br><input type=radio name=d20 id=d20b value=1>ICMP-ответ<br><input type=radio name=d20 id=d20c value=2>Ответ RMCP<br><input type=radio name=d20 id=d20d value=3>ICMP и RMCP ответ<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>Синхронизация IP-адреса операционной системы</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>айпи адрес</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Метка подсети</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>шлюз</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Основной DNS</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Альтернативный DNS</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>Отключено<option value=1>Отключено, обновление DHCP<option value=2>Включено</select><div>Динамический DNS-клиент</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>Интервал обновления (минуты)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (секунды)</div></div><div style=font-size:10px><br>Интервал по умолчанию составляет 1440 минут, TTL по умолчанию - 900 секунд.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>Включите<option value=10>Сброс<option value=5>Силовой цикл<option value=8>Выключить<option id=d24p500 value=500>OS Wake из режима ожидания<option id=d24p501 value=501>ОС энергосбережения<option value=999>Установить параметры загрузки</select><div>Дистанционное управление</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>BIOS Pause</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>Обеспечить безопасную загрузку</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>Настройка биоса</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>Форсировать события</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>Блокировка кнопки питания</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>Кнопка сброса блокировки</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>Кнопка блокировки сна</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>Блокировка клавиатуры</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>Обход пароля BIOS</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>Перепрошить биос</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>Безопасный режим</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>Используйте IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Последовательная по локальной сети</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>Intel® Remote Secure Erase</label><br></div></div><div>Настройки загрузки</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Никто<option id=ForceDVDBootOption value=1>Force CD / DVD Boot<option id=ForcePXEBootOption value=2>Force PXE Boot<option id=ForceHDBootOption value=3>Принудительная загрузка жесткого диска<option id=ForceDiagBootOption value=4>Принудительный диагностический ботинок</select><div>Загрузочный источник</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Никто<option value=1>Индекс 1<option value=2>Индекс 2<option value=3>Индекс 3<option value=3>Индекс 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Загрузиться с дискеты<option value=1>Загрузиться с CDROM</select><div>Загрузочное устройство IDER</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Системные установки по умолчанию<option id=c45 value=1>Тихо<option id=c46 value=2>Подробный<option id=c47 value=3>Пустой экран</select><div>Verbocity</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>Пароль RSE</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>Название тревоги</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Дата пробуждения (год-месяц-день)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>Время пробуждения (час: мин: сек)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Интервал (дни-часы-минуты)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>Держать тревогу<option value=1>Удалить по завершении</select></div><div style=padding-top:4px>После пробуждения</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=Отмена style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=Хорошо style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=удалять style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",
92
+c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"\u0410\u0433\u0435\u043d\u0442 \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u043e\u0439"+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0441\u044f \u043d\u0430"+l.WatchdogCurrentStates[c[7]];if(5==
93
+a&&0==b)return"\u0421\u043b\u0443\u0447\u0430\u0439 \u0432\u0442\u043e\u0440\u0436\u0435\u043d\u0438\u044f";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0430\u043d\u0441 Serial Over LAN \u0431\u044b\u043b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d.";if(1==c[2])return"\u0421\u0435\u0430\u043d\u0441 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043f\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0431\u044b\u043b \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d.";
94
+if(2==c[2])return"\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0430\u043d\u0441 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f IDE \u0431\u044b\u043b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d.";if(3==c[2])return"\u0421\u0435\u0430\u043d\u0441 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f IDE \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0431\u044b\u043b \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d."}if(36==
95
+a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u0430\u044f"),4294967293==a?"\u0424\u0438\u043b\u044c\u0442\u0440 \u0432\u0441\u0435\u0445 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d"+b+" \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.":4294967292==a?"\u0424\u0438\u043b\u044c\u0442\u0440 \u0432\u0441\u0435\u0445 \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d"+
96
+b+" \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.":4294967290==a?"\u041f\u043e\u0434\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0444\u0438\u043b\u044c\u0442\u0440 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0431\u044b\u043b \u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d \u043d\u0430"+b+" \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.":"\u0424\u0438\u043b\u044c\u0442\u0440"+a+" \u0431\u044b\u043b\u043e \u043f\u043e\u0434\u043e\u0431\u0440\u0430\u043d\u043e \u043d\u0430"+
97
+b+" \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441.";if(192==a)return 0==c[2]?"\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0430. \u0427\u0430\u0441\u0442\u044c \u0438\u043b\u0438 \u0432\u0435\u0441\u044c \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0442\u0440\u0430\u0444\u0438\u043a (TX) \u0431\u044b\u043b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d.":
98
+2==c[2]?"\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0430. \u0427\u0430\u0441\u0442\u044c \u0438\u043b\u0438 \u0432\u0435\u0441\u044c \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0442\u0440\u0430\u0444\u0438\u043a (RX) \u0431\u044b\u043b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d.":"\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0430.";
99
+if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435.";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"\u041e\u0448\u0438\u0431\u043a\u0430 EAC: \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0433\u0434\u0430 NAC \u0432 Intel\u00ae AMT \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d.";
100
+if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"\u041e\u0448\u0438\u0431\u043a\u0430 HWA: \u043e\u0431\u0449\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430"}return 6==a?"\u041e\u0448\u0438\u0431\u043a\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438"+(c[1]+(c[2]<<8))+" \u0440\u0430\u0437. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0430\u0442\u0430\u043a\u043e\u0432\u0430\u043d\u0430.":30==a?"\u041d\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0433\u043e \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044f":
101
+32==a?"\u0411\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438\u043b\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u043f\u0438\u0442\u0430\u043d\u0438\u044f":35==a?"\u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b":37==a?"\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u0430 (\u043f\u043e \u043a\u0440\u0430\u0439\u043d\u0435\u0439 \u043c\u0435\u0440\u0435 \u043e\u0434\u0438\u043d \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e).":
102
+"\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u0442\u0447\u0438\u043a\u0430 #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};
103
+b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>\u041c\u0435\u0441\u0442\u043d\u044b\u0439</i>",g=5);3==b.InitiatorType&&(b.Initiator="<i>KVM \u043f\u043e\u0440\u0442 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e</i>",
104
+g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/",
105
+"http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,
106
+b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,
107
+z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,
108
+y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=
109
+l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
110
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
111
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
112
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
113
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
114
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
115
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
116
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
117
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
118
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
119
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
120
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
121
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
122
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
123
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
124
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
125
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
126
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
127
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
128
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
129
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
130
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
131
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
132
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
133
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
134
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
135
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
136
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
137
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
138
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
139
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
140
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
141
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
142
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
143
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
144
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
145
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
146
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
147
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
148
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
149
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
150
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
151
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
152
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
153
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
154
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
155
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
156
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
157
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
158
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
159
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
160
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="\u041d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043e. ; \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u043f\u0430\u043c\u044f\u0442\u044c \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430 \u200b\u200b\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435. ; \u041d\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438, \u0432\u043e \u0432\u0441\u0435\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u0435\u043b \u043d\u0435\u0438\u0441\u043f\u0440\u0430\u0432\u0438\u043c\u044b\u0439 \u0441\u0431\u043e\u0439. ; \u041d\u0435\u0443\u0441\u0442\u0440\u0430\u043d\u0438\u043c\u044b\u0439 \u0441\u0431\u043e\u0439 \u0436\u0435\u0441\u0442\u043a\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430 / \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 ATAPI / IDE. ; \u041d\u0435\u0443\u0441\u0442\u0440\u0430\u043d\u0438\u043c\u044b\u0439 \u0441\u0431\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u044b. ; \u041d\u0435\u0443\u0441\u0442\u0440\u0430\u043d\u0438\u043c\u0430\u044f \u0434\u0438\u0441\u043a\u0435\u0442\u0430 \u0421\u0431\u043e\u0439 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u044b. ; \u041d\u0435\u0443\u0441\u0442\u0440\u0430\u043d\u0438\u043c\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u0436\u0435\u0441\u0442\u043a\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430. ; \u041d\u0435\u0443\u0441\u0442\u0440\u0430\u043d\u0438\u043c\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 PS / 2 \u0438\u043b\u0438 USB-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b. ; \u0421\u044a\u0435\u043c\u043d\u044b\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0439 \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d. ; \u041d\u0435\u0443\u0441\u0442\u0440\u0430\u043d\u0438\u043c\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u0432\u0438\u0434\u0435\u043e. ; \u041d\u0435 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0432\u0438\u0434\u0435\u043e\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e. ; \u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u043f\u043e\u0432\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 \u043c\u0438\u043a\u0440\u043e\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b (BIOS) \u041f\u0417\u0423. ; \u041d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 (\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u044b \u0441 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u043c \u043f\u0438\u0442\u0430\u043d\u0438\u0435\u043c \u0438\u043c\u0435\u044e\u0442 \u043d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u044e) ; \u041e\u0448\u0438\u0431\u043a\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430".split(";"),
161
+h="\u041d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043e. ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438. ; \u0417\u0430\u043f\u0443\u0441\u043a \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0436\u0435\u0441\u0442\u043a\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430 ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u0442\u043e\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 (\u043e\u0432) ; \u0410\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f ; \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0438\u043d\u0438\u0446\u0438\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c ; \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 USB ; \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 PCI ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u041f\u0417\u0423 ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u0438\u0434\u0435\u043e ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u044d\u0448\u0430 ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u044d\u0448\u0430 ; SM \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0448\u0438\u043d\u044b ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 / \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f ; \u041f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0434\u043e\u043a-\u0441\u0442\u0430\u043d\u0446\u0438\u0438 ; \u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u043a-\u0441\u0442\u0430\u043d\u0446\u0438\u0438 ; \u0418\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u043a-\u0441\u0442\u0430\u043d\u0446\u0438\u0438 ; \u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u043a-\u0441\u0442\u0430\u043d\u0446\u0438\u0438 ; \u0412\u0435\u043a\u0442\u043e\u0440 \u0432\u044b\u0437\u043e\u0432\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b ; \u0417\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0431\u0430\u0437\u043e\u0432\u043e\u0439 \u043f\u043b\u0430\u0442\u044b \u0438\u043b\u0438 \u043c\u0430\u0442\u0435\u0440\u0438\u043d\u0441\u043a\u043e\u0439 \u043f\u043b\u0430\u0442\u044b ; \u0437\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043e ; \u0424\u043b\u043e\u043f\u043f\u0438-\u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f ; \u0422\u0435\u0441\u0442 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b ; \u0422\u0435\u0441\u0442 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 ; \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430".split(";"),
162
+g="\u041d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043e ; \u0414\u0440\u0443\u0433\u043e\u0435 ; \u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e ; \u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 ; \u0414\u0438\u0441\u043a ; \u041f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u044b\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 ; \u041c\u043e\u0434\u0443\u043b\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f ; \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u043f\u043b\u0430\u0442\u0430 ; \u041c\u043e\u0434\u0443\u043b\u044c \u043f\u0430\u043c\u044f\u0442\u0438 ; \u041c\u043e\u0434\u0443\u043b\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 ; \u0411\u043b\u043e\u043a \u043f\u0438\u0442\u0430\u043d\u0438\u044f ; \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043b\u0430\u0442\u0443 ; \u041f\u043b\u0430\u0442\u0430 \u043f\u0435\u0440\u0435\u0434\u043d\u0435\u0439 \u043f\u0430\u043d\u0435\u043b\u0438 ; \u041f\u043b\u0430\u0442\u0430 \u0437\u0430\u0434\u043d\u0435\u0439 \u043f\u0430\u043d\u0435\u043b\u0438 ; \u041f\u043b\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0438\u0442\u0430\u043d\u0438\u044f ; \u0417\u0430\u0434\u043d\u044f\u044f \u043f\u0430\u043d\u0435\u043b\u044c \u043f\u0440\u0438\u0432\u043e\u0434\u0430 ; \u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043f\u043b\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043f\u043b\u0430\u0442\u0430 ; \u0414\u0440\u0443\u0433\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u043f\u043b\u0430\u0442\u0430 ; \u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u0430\u044f \u043f\u043b\u0430\u0442\u0430 ; \u0411\u043b\u043e\u043a \u043f\u0438\u0442\u0430\u043d\u0438\u044f ; \u0411\u043b\u043e\u043a \u043f\u0438\u0442\u0430\u043d\u0438\u044f ; \u041f\u043b\u0430\u0442\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0438\u0442\u0430\u043d\u0438\u0435\u043c ; \u041f\u043b\u0430\u0442\u0430 \u0437\u0430\u0434\u043d\u0435\u0439 \u043f\u0430\u043d\u0435\u043b\u0438 \u0448\u0430\u0441\u0441\u0438 ; \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0435 \u0448\u0430\u0441\u0441\u0438 ; \u0412\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0448\u0430\u0441\u0441\u0438 ; \u041e\u0442\u0441\u0435\u043a \u0434\u043b\u044f \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0434\u0430 ; \u041e\u0442\u0441\u0435\u043a \u0434\u043b\u044f \u0434\u0438\u0441\u043a\u043e\u0432 ; \u041e\u0442\u0441\u0435\u043a \u0434\u043b\u044f \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 ; \u041e\u0442\u0441\u0435\u043a \u0434\u043b\u044f \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 ; \u0412\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440\u043d\u043e\u0435 \u043e\u0445\u043b\u0430\u0436\u0434\u0435\u043d\u0438\u0435 ; \u0411\u043b\u043e\u043a \u043e\u0445\u043b\u0430\u0436\u0434\u0435\u043d\u0438\u044f ; \u041a\u0430\u0431\u0435\u043b\u044c\u043d\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 ; \u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043f\u0430\u043c\u044f\u0442\u0438 ; \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 ; BIOS ; Intel (r) ME ; \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u0448\u0438\u043d\u0430 ; \u0413\u0440\u0443\u043f\u043f\u0430 ; Intel (r) ME ; \u0412\u043d\u0435\u0448\u043d\u044f\u044f \u0441\u0440\u0435\u0434\u0430 ; \u0411\u0430\u0442\u0430\u0440\u0435\u044f ; \u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u0431\u043b\u0435\u0439\u0434 ; \u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f ; \u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 / \u043c\u043e\u0434\u0443\u043b\u044c \u043f\u0430\u043c\u044f\u0442\u0438 ; \u041c\u043e\u0434\u0443\u043b\u044c \u0432\u0432\u043e\u0434\u0430 / \u0432\u044b\u0432\u043e\u0434\u0430 ; \u041c\u043e\u0434\u0443\u043b\u044c \u0432\u0432\u043e\u0434\u0430 / \u0432\u044b\u0432\u043e\u0434\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 ; \u041f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f ; \u041a\u0430\u043d\u0430\u043b IPMI ; \u0428\u0438\u043d\u0430 PCI ; \u0428\u0438\u043d\u0430 PCI Express ; \u0428\u0438\u043d\u0430 SCSI ; \u0428\u0438\u043d\u0430 SATA / SAS ; \u0428\u0438\u043d\u0430 \u043b\u0438\u0446\u0435\u0432\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430".split(";");
163
+l.RealmNames=";; \u041f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 ;; \u0410\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u0435 ; \u0423\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 ; \u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 ; \u0414\u0438\u0441\u043f\u0435\u0442\u0447\u0435\u0440 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 ; \u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 ; \u041c\u0435\u0441\u0442\u043d\u043e\u0435 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0430\u0433\u0435\u043d\u0442\u0430 ; \u0423\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0430\u0433\u0435\u043d\u0442\u0430 ; \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0432\u044b\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u044c ; \u0412\u0440\u0435\u043c\u044f \u0441\u0435\u0442\u0438 ; \u041e\u0431\u0449\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f ; \u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 ; EIT ; LocalUN ; \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435 ; \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435 Admin ; \u0427\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 ; \u0416\u0443\u0440\u043d\u0430\u043b \u0430\u0443\u0434\u0438\u0442\u0430 ; \u041e\u0431\u043b\u0430\u0441\u0442\u044c ACL ;;; \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430".split(";");
164
+l.WatchdogCurrentStates={1:"\u041d\u0435 \u043d\u0430\u0447\u0430\u0442\u043e",2:"\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0441\u044f",4:"\u0411\u0435\u0433",8:"\u0418\u0441\u0442\u0435\u043a\u0448\u0438\u0439",16:"\u043f\u043e\u0434\u0432\u0435\u0448\u0435\u043d\u043d\u044b\u0439"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),
165
+F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),D={1:"",2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438",17:"RCO",18:"\u041c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f",
166
+19:"\u0414\u0438\u0441\u043f\u0435\u0442\u0447\u0435\u0440 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438",20:"\u0416\u0443\u0440\u043d\u0430\u043b \u0430\u0443\u0434\u0438\u0442\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438",21:"\u0421\u0435\u0442\u0435\u0432\u043e\u0435 \u0432\u0440\u0435\u043c\u044f",22:"\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0442\u0438",
167
+23:"\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430",24:"\u041c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u043f\u043e \u043a\u043e\u0440\u043f\u043e\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u043c \u043c\u0435\u0440\u043e\u043f\u0440\u0438\u044f\u0442\u0438\u044f\u043c",25:"\u041c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0432\u044b\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u044f",
168
+26:"\u0414\u0438\u0441\u043f\u0435\u0442\u0447\u0435\u0440 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f \u0430\u0433\u0435\u043d\u0442\u043e\u0432",27:"\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u0441\u0435\u0442\u0438",28:"EAC",29:"KVM",30:"\u0421\u043e\u0431\u044b\u0442\u0438\u044f \u0443\u0447\u0430\u0441\u0442\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",
169
+32:"\u0413\u0430\u0448\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430",33:"\u0421\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u044b\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u044f",1600:"\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u043d\u0430\u0447\u0430\u0442\u0430",1601:"\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430",1602:"\u0417\u0430\u043f\u0438\u0441\u044c ACL \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430",
170
+1603:"\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0430 \u0437\u0430\u043f\u0438\u0441\u044c ACL",1604:"\u0417\u0430\u043f\u0438\u0441\u044c ACL \u0443\u0434\u0430\u043b\u0435\u043d\u0430",1605:"\u0414\u043e\u0441\u0442\u0443\u043f ACL \u0441 \u043d\u0435\u0432\u0435\u0440\u043d\u044b\u043c\u0438 \u0443\u0447\u0435\u0442\u043d\u044b\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438",1606:"\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 ACL",1607:"\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 TLS \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043e",
171
+1608:"\u041d\u0430\u0431\u043e\u0440 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 TLS",1609:"\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 TLS \u0423\u0434\u0430\u043b\u0438\u0442\u044c",1610:"\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 TLS",
172
+1611:"\u0423\u0434\u0430\u043b\u0435\u043d \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 TLS",1612:"\u041d\u0430\u0431\u043e\u0440 \u043e\u0431\u0449\u0438\u0445 \u043a\u043b\u044e\u0447\u0435\u0439 TLS",1613:"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Kerberos \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u044b",1614:"\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043a\u043b\u044e\u0447 Kerberos \u0438\u0437\u043c\u0435\u043d\u0435\u043d",
173
+1615:"\u0421\u0431\u0440\u043e\u0441 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u043e\u0432",1616:"\u041c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0431\u043b\u043e\u043a \u043f\u0438\u0442\u0430\u043d\u0438\u044f",1617:"\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u043e\u0434\u043b\u0438\u043d\u043d\u043e\u0441\u0442\u0438 \u043e\u0431\u043b\u0430\u0441\u0442\u0438",
174
+1618:"\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0434\u043e \u0440\u0435\u0436\u0438\u043c\u0430 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430",1619:"Unprovisioning \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u044c",1700:"\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043e Power Up",1701:"\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043e Power Down",1702:"\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0439 \u0441\u0438\u043b\u043e\u0432\u043e\u0439 \u0446\u0438\u043a\u043b",
175
+1703:"\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d \u0421\u0431\u0440\u043e\u0441",1704:"\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438",1800:"\u041e\u0442\u043a\u0440\u044b\u0442\u0430 \u0441\u0435\u0441\u0441\u0438\u044f IDER",1801:"\u0421\u0435\u0441\u0441\u0438\u044f IDER \u0437\u0430\u043a\u0440\u044b\u0442\u0430",1802:"IDER \u0432\u043a\u043b\u044e\u0447\u0435\u043d",1803:"IDER \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d",
176
+1804:"\u041e\u0442\u043a\u0440\u044b\u0442\u0430 \u0441\u0435\u0441\u0441\u0438\u044f SoL",1805:"SoL \u0441\u0435\u0441\u0441\u0438\u044f \u0437\u0430\u043a\u0440\u044b\u0442\u0430",1806:"SoL \u0432\u043a\u043b\u044e\u0447\u0435\u043d",1807:"SoL \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d",1808:"\u0421\u0435\u0441\u0441\u0438\u044f KVM \u043d\u0430\u0447\u0430\u043b\u0430\u0441\u044c",1809:"\u0421\u0435\u0430\u043d\u0441 KVM \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d",1810:"KVM \u0432\u043a\u043b\u044e\u0447\u0435\u043d",
177
+1811:"KVM \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d",1812:"\u041f\u0430\u0440\u043e\u043b\u044c VNC \u043d\u0435 \u0443\u0434\u0430\u043b\u0441\u044f 3 \u0440\u0430\u0437\u0430",1900:"\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438",1901:"\u041e\u0448\u0438\u0431\u043a\u0430 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438",2E3:"\u0416\u0443\u0440\u043d\u0430\u043b \u0430\u0443\u0434\u0438\u0442\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043e\u0447\u0438\u0449\u0435\u043d",
178
+2001:"\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0430 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0430\u0443\u0434\u0438\u0442\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438",2002:"\u0416\u0443\u0440\u043d\u0430\u043b \u0430\u0443\u0434\u0438\u0442\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d",2003:"\u0416\u0443\u0440\u043d\u0430\u043b \u0430\u0443\u0434\u0438\u0442\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d",
179
+2004:"\u042d\u043a\u0441\u043f\u043e\u0440\u0442 \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u0430\u0443\u0434\u0438\u0442\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438",2005:"\u0416\u0443\u0440\u043d\u0430\u043b \u0430\u0443\u0434\u0438\u0442\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d",2100:"\u041d\u0430\u0431\u043e\u0440 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 Intel® ME",
180
+2200:"\u041d\u0430\u0431\u043e\u0440 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 TCPIP",2201:"\u0418\u043c\u044f \u0445\u043e\u0441\u0442\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e",2202:"\u041d\u0430\u0431\u043e\u0440 \u0434\u043e\u043c\u0435\u043d\u043d\u044b\u0445 \u0438\u043c\u0435\u043d",2203:"\u041d\u0430\u0431\u043e\u0440 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 VLAN",2204:"\u041d\u0430\u0431\u043e\u0440 \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u0441\u0441\u044b\u043b\u043e\u043a",
181
+2205:"\u041d\u0430\u0431\u043e\u0440 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 IPv6",2300:"\u041d\u0430\u0431\u043e\u0440 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430",2301:"\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 EACL \u041c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043e",2302:"\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 FPACL \u041c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043e",
182
+2303:"\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435",2400:"\u041e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043e",2401:"\u041e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0438\u0441\u0430\u043d\u043e",2402:"\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u043e\u0447\u0438\u0449\u0435\u043d",
183
+2403:"\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u0437\u0430\u043c\u043e\u0440\u043e\u0436\u0435\u043d",2500:"CB \u0444\u0438\u043b\u044c\u0442\u0440 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d",2501:"\u0424\u0438\u043b\u044c\u0442\u0440 CB \u0443\u0434\u0430\u043b\u0435\u043d",2502:"\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u200b\u200b\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 CB",2503:"\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 CB \u0443\u0434\u0430\u043b\u0435\u043d\u0430",
184
+2504:"\u041d\u0430\u0431\u043e\u0440 \u043f\u043e\u043b\u0438\u0442\u0438\u043a CB \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",2505:"CB Heuristics Option Set",2506:"CB Heuristics State Cleared",2600:"\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u043e\u0439 \u0430\u0433\u0435\u043d\u0442",2601:"Agent Watchdog \u0443\u0434\u0430\u043b\u0435\u043d",2602:"\u041d\u0430\u0431\u043e\u0440 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u043e\u0433\u043e \u0430\u0433\u0435\u043d\u0442\u0430",
185
+2700:"\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c",2701:"\u0411\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u0443\u0434\u0430\u043b\u0435\u043d",2702:"\u041f\u0440\u043e\u0444\u0438\u043b\u044c \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d",
186
+2800:"EAC \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043b\u0438\u0446\u0430, \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0435\u0433\u043e",2801:"EAC \u0432\u043a\u043b\u044e\u0447\u0435\u043d",2802:"EAC \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d",2803:"\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043e\u0441\u0430\u043d\u043a\u0438 EAC",2804:"\u041e\u043f\u0446\u0438\u0438 \u043d\u0430\u0431\u043e\u0440\u0430 EAC",2900:"\u041e\u043f\u0446\u0438\u044f KVM \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430",
187
+2901:"\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 KVM \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e",2902:"\u041f\u0430\u0440\u043e\u043b\u044c KVM \u0438\u0437\u043c\u0435\u043d\u0435\u043d",2903:"\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 KVM \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e",2904:"\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 KVM \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c",3E3:"\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f",
188
+3001:"\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u0434 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f \u0421\u043e\u0431\u044b\u0442\u0438\u0435",3002:"\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0435"};l.GetAuditLogExtendedDataStr=function(a,b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,2+b.charCodeAt(1));if(1603==a)return 0==b.charCodeAt(1)?
189
+b.substring(3):null;if(1605==a)return["\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a ME","\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a MEBx"][b.charCodeAt(0)];if(1606==a){var c=["\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e","\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+=","+b.substring(3));return c}return 1607==a?"\u0414\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043f\u0443\u043b\u044c\u0442"+
190
+["NOAUTH","ServerAuth","\u0432\u0437\u0430\u0438\u043c\u043e\u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438"][b.charCodeAt(0)]+", \u041c\u0435\u0441\u0442\u043d\u044b\u0439"+["NOAUTH","ServerAuth","\u0432\u0437\u0430\u0438\u043c\u043e\u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+","+["NOAUTH","Auth","\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e"][b.charCodeAt(4)]:1619==a?["BIOS","MEBx","\u041c\u0435\u0441\u0442\u043d\u044b\u0439 \u041c\u042d\u0418",
191
+"\u041c\u0435\u0441\u0442\u043d\u044b\u0439 WSMAN","\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 WSAMN"][b.charCodeAt(0)]:1900==a?"\u041e\u0442"+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" \u0432"+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"\u041e\u0442"+["\u041d\u0438\u043a\u0442\u043e","KVM","\u0412\u0441\u0435"][b.charCodeAt(0)]+
192
+" \u0432"+["\u041d\u0438\u043a\u0442\u043e","KVM","\u0412\u0441\u0435"][b.charCodeAt(1)]:3001==a?["\u0443\u0441\u043f\u0435\u0445","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c 3 \u0440\u0430\u0437\u0430"][b.charCodeAt(0)]:null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}
193
+function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
194
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
195
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
196
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
197
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
198
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
199
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
200
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
201
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
202
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
203
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
204
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
205
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
206
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
207
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
208
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
209
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
210
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
211
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
212
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
213
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
214
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
215
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
216
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
217
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
218
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
219
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
220
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
221
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
222
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
223
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
224
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
225
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
226
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
227
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
228
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
229
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
230
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
231
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
232
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
233
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
234
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
235
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
236
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
237
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
238
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
239
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
240
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
241
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
242
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
243
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
244
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
245
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
246
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
247
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
248
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
249
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
250
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
251
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
252
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
253
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
254
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
255
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
256
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
257
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
258
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
259
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
260
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
261
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
262
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
263
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
264
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
265
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
266
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
267
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
268
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
269
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
270
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
271
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
272
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
273
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
274
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
275
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
276
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
277
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
278
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
279
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
280
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
281
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
282
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
283
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
284
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
285
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
286
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
287
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
288
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
289
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
290
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
291
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
292
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
293
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
294
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
295
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
296
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
297
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
298
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
299
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
300
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
301
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
302
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
303
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
304
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
305
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
306
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
307
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
308
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
309
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
310
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
311
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
312
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
313
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
314
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
315
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
316
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
317
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
318
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
319
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
320
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
321
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
322
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
323
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
324
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
325
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
326
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
327
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
328
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
329
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
330
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
331
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
332
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
333
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
334
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
335
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
336
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
337
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
338
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
339
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
340
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
341
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
342
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
343
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
344
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
345
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
346
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
347
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
348
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
349
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
350
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
351
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
352
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
353
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
354
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
355
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
356
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
357
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
358
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
359
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
360
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
361
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
362
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
363
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
364
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
365
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
366
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
367
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
368
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
369
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
370
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
371
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
372
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
373
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
374
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
375
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
376
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
377
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
378
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
379
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
380
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
381
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
382
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
383
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
384
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
385
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
386
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
387
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
388
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
389
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
390
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
391
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
392
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
393
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
394
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
395
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
396
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
397
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
398
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
399
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
400
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
401
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
402
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
403
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
404
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
405
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
406
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
407
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
408
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
409
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
410
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
411
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
412
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
413
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
414
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
415
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
416
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
417
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
418
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
419
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
420
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
421
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
422
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
423
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
424
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
425
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
426
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
427
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
428
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
429
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
430
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
431
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
432
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
433
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
434
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
435
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
436
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
437
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
438
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
439
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
440
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
441
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
442
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
443
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
444
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
445
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
446
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
447
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
448
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
449
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
450
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
451
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
452
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
453
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
454
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
455
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
456
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
457
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
458
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
459
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
460
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
461
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
462
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
463
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
464
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
465
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
466
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
467
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
468
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
469
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
470
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
471
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
472
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
473
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
474
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
475
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
476
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
477
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
478
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
479
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
480
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
481
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
482
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
483
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
484
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
485
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
486
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
487
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
488
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
489
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
490
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
491
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
492
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
493
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
494
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
495
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
496
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
497
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
498
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
499
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
500
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
501
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
502
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
503
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
504
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
505
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
506
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
507
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
508
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
509
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
510
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
511
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
512
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
513
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
514
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
515
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
516
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
517
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
518
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
519
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
520
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
521
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
522
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
523
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
524
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
525
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
526
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
527
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
528
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
529
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
530
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
531
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
532
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
533
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
534
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
535
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
536
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
537
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
538
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
539
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
540
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
541
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
542
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
543
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
544
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
545
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
546
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
547
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
548
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
549
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
550
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
551
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
552
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
553
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
554
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
555
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
556
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
557
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
558
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
559
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
560
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
561
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
562
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
563
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
564
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
565
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
566
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
567
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
568
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
569
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
570
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
571
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
572
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
573
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
574
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
575
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
576
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
577
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
578
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
579
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
580
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
581
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
582
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
583
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
584
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
585
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
586
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
587
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
588
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
589
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
590
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
591
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
592
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
593
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
594
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
595
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
596
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
597
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
598
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
599
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
600
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
601
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
602
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
603
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
604
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
605
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
606
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
607
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
608
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
609
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
610
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
611
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
612
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
613
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
614
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
615
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
616
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
617
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
618
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
619
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
620
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
621
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
622
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
623
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
624
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
625
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
626
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
627
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
628
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
629
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
630
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
631
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
632
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
633
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
634
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
635
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
636
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
637
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
638
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
639
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
640
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
641
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
642
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
643
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
644
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
645
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
646
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
647
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
648
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
649
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
650
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
651
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
652
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
653
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
654
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
655
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
656
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
657
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
658
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
659
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
660
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
661
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
662
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
663
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
664
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
665
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
666
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
667
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
668
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
669
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
670
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
671
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
672
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
673
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
674
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
675
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
676
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
677
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
678
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
679
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
680
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
681
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
682
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
683
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
684
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
685
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
686
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
687
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
688
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
689
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
690
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
691
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
692
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
693
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
694
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
695
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
696
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
697
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
698
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
699
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
700
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
701
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
702
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
703
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
704
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
705
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
706
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
707
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
708
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
709
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
710
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
711
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
712
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
713
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
714
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
715
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
716
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
717
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
718
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
719
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
720
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
721
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
722
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
723
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
724
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
725
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
726
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
727
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
728
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
729
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
730
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
731
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
732
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
733
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
734
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
735
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
736
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
737
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
738
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
739
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
740
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
741
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
742
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
743
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
744
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
745
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
746
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
747
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
748
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
749
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
750
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
751
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
752
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
753
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
754
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
755
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
756
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
757
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
758
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
759
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
760
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
761
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
762
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
763
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
764
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
765
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
766
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
767
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
768
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
769
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
770
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
771
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
772
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
773
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
774
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
775
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
776
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
777
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
778
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
779
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
780
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
781
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
782
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
783
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
784
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
785
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
786
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
787
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
788
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
789
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
790
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
791
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
792
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
793
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
794
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
795
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
796
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
797
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
798
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
799
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
800
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
801
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
802
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
803
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
804
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
805
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
806
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
807
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
808
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
809
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
810
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
811
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
812
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
813
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
814
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
815
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
816
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
817
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
818
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
819
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
820
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
821
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
822
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
823
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
824
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
825
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
826
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
827
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
828
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
829
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
830
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
831
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
832
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
833
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
834
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
835
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
836
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
837
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
838
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
839
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
840
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
841
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
842
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
843
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
844
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
845
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
846
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
847
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
848
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
849
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
850
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
851
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
852
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
853
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
854
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
855
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
856
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
857
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
858
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
859
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
860
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
861
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
862
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
863
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
864
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
865
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
866
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
867
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
868
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
869
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
870
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
871
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
872
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
873
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
874
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
875
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
876
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
877
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
878
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
879
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
880
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
881
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
882
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
883
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
884
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
885
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
886
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
887
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
888
+k.Init();return k},ZLIB=ZLIB||{};
889
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
890
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
891
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
892
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
893
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
894
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
895
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
896
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
897
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
898
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
899
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
900
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
901
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
902
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
903
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
904
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
905
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
906
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
907
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
908
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
909
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
910
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
911
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
912
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
913
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
914
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
915
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
916
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
917
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
918
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
919
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
920
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
921
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
922
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
923
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
924
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
925
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
926
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
927
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
928
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
929
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
930
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
931
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
932
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
933
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
934
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
935
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
936
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
937
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
938
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
939
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
940
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
941
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
942
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
943
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
944
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
945
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
946
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
947
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
948
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
949
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
950
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
951
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
952
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
953
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
954
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
955
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
956
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
957
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
958
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
959
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
960
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
961
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
962
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
963
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
964
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
965
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
966
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
967
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
968
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>Loading ...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
969
+StatusStrs=["Disconnected","\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 ...","\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c...","\u0421\u0432\u044f\u0437\u0430\u043d\u044b"],scriptstate,t,t2,rsepass=null;
970
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
971
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR + LF":"LF";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
972
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
973
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
974
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
975
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
976
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="\u041e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c"}function getCurrentMeshNode(){return currentMeshNode}
977
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="\u041d\u0430\u0447\u0430\u0442\u044c \u0437\u0430\u0445\u0432\u0430\u0442";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
978
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
979
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
980
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
981
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
982
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
983
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
984
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
985
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="Connect";QH(5,"Disconnected");go(100)}
986
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
987
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
988
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
989
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
990
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
991
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
992
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
993
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
994
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
995
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
996
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}
997
+function syncClock(){xxdialogMode||setDialogMode(11,"\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0447\u0430\u0441\u044b",3,syncClockEx,"\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0447\u0430\u0441\u044b Intel AMT \u0441 \u044d\u0442\u0438\u043c \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u043c?")}
998
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f, \u0441\u0442\u0430\u0442\u0443\u0441 ="+d):0!=a.Body.ReturnValue?messagebox("","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f, \u043e\u0448\u0438\u0431\u043a\u0430: "+
999
+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}var DMTFPowerStates=";;\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c;\u041b\u0435\u0433\u043a\u0438\u0439 \u0441\u043e\u043d;\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u0441\u043e\u043d;\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0438 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u0438\u0442\u0430\u043d\u0438\u044f;\u0412\u044b\u043a\u043b - \u0416\u0435\u0441\u0442\u043a\u0438\u0439;Hibernate (Off soft);Soft off;\u0426\u0438\u043a\u043b \u043f\u0438\u0442\u0430\u043d\u0438\u044f (Off-Hard);\u0421\u0431\u0440\u043e\u0441 \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u0448\u0438\u043d\u044b;\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 (NMI);\u041d\u0435\u043f\u0440\u0438\u0433\u043e\u0434\u043d\u044b\u0439;Off - \u043c\u044f\u0433\u043a\u0430\u044f \u0438\u0437\u044f\u0449\u043d\u0430\u044f;Off - \u0416\u0435\u0441\u0442\u043a\u0438\u0439 \u0438\u0437\u044f\u0449\u043d\u044b\u0439;\u041c\u0430\u0441\u0442\u0435\u0440 \u0430\u0432\u0442\u043e\u0431\u0443\u0441 \u0441\u0431\u0440\u043e\u0441\u0438\u043b \u0438\u0437\u044f\u0449\u043d\u044b\u0439;\u0421\u0438\u043b\u043e\u0432\u043e\u0439 \u0446\u0438\u043a\u043b (\u0412\u044b\u043a\u043b. - \u041c\u044f\u0433\u043a\u0438\u0439 \u0438\u0437\u044f\u0449\u043d\u044b\u0439);\u0421\u0438\u043b\u043e\u0432\u043e\u0439 \u0446\u0438\u043a\u043b (\u0412\u044b\u043a\u043b. - \u0416\u0435\u0441\u0442\u043a\u0438\u0439 \u0438\u0437\u044f\u0449\u043d\u044b\u0439);\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 (INIT)".split(";");
1000
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>\u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c"==
1001
+a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=[", \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0439",", \u041e\u0442 \u0431\u0430\u0442\u0430\u0440\u0435\u0438"][q.PowerSource]);d+=TableEntry("\u0421\u0438\u043b\u0430",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;
1002
+null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>\u041d\u0438\u043a\u0442\u043e</i>":EscapeHtml(c);d+=TableEntry("\u0418\u043c\u044f \u0438 \u0434\u043e\u043c\u0435\u043d",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?d+=TableEntry("\u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0441\u0438\u0441\u0442\u0435\u043c\u044b",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("\u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0441\u0438\u0441\u0442\u0435\u043c\u044b",
1003
+guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 (ACM)",
1004
+4==k.ProvisioningMode&&(p=" \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u043c (CCM)",b=9));d+=TableEntry("Intel® ME","v"+getItem(amtlogicalelements,"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&
1005
+(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;
1006
+5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);r&&(e+="\u041f\u043e\u0440\u0442 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f");n&&(e+=", \u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0447\u0435\u0440\u0435\u0437 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0435\u0442\u044c");
1007
+p&&(e+=", IDE-Redirect");w&&(e+=", \u041a\u0432\u043c");""==e&&(e=" \u041d\u0438\u043a\u0442\u043e");d+=TableEntry("\u0410\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0434\u0438\u0441\u043f\u043b\u0435\u0439",
1008
+7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0434\u0438\u0441\u043f\u043b\u0435\u0439","\u0412\u0442\u043e\u0440\u0438\u0447\u043d\u044b\u0439 \u0434\u0438\u0441\u043f\u043b\u0435\u0439","3-\u0439 \u0434\u0438\u0441\u043f\u043b\u0435\u0439"][p.DefaultScreen]),e='<span title="'+format("\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0434\u0438\u0441\u043f\u043b\u0435\u0439 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e: {0}",
1009
+e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+="\u041f\u043e\u0440\u0442 5900 \u0432\u043a\u043b\u044e\u0447\u0435\u043d"),1==p.OptInPolicy&&(e+=","+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438":"\u0432\u0442\u043e\u0440\u043e\u0439 \u0432\u044b\u0431\u043e\u0440")),e+=","+p.SessionTimeout+" \u043c\u0438\u043d\u0443\u0442"+(0<p.SessionTimeout?"s":"")+" \u0442\u0430\u0439\u043c-\u0430\u0443\u0442 \u0441\u0435\u0430\u043d\u0441\u0430",
1010
+9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService?((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&1))&&(e+="\u0414\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0433\u0430\u0448\u0435\u043d\u0438\u0435"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b",addLinkConditional(e,"showDesktopSettingsDlg()",
1011
+xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435",r=amtsysstate.IPS_OptInService.response.OptInRequired,0==r&&(e="\u041d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f"),
1012
+1==r&&(e="\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f KVM"),4294967295==r&&(e="\u0412\u0441\u0435\u0433\u0434\u0430 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",
1013
+e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(r=e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==r&&(d+=TableEntry("\u042d\u043d\u0435\u0440\u0433\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430",
1014
+addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&(d+=TableEntry("\u0414\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043c\u044f",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";e+=AddButton("\u0421\u0438\u043b\u043e\u0432\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f ...","showPowerActionDlg()")+
1015
+" ";e+=AddButton("\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435...","saveEntireAmtState()")+" ";e+=AddButton("\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442 ...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");QH(17,
1016
+d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+" \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0441\u0435\u0442\u0438 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u044d\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u0442\u0430\u043d\u0435\u0442 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0439.");
1017
+d=d+"<br><h2>\u043e\u0431\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438</h2>"+TableStart();e="";"<i>\u041d\u0438\u043a\u0442\u043e</i>"!=c&&(1==q.SharedFQDN&&(e=", \u043f\u043e\u0434\u0435\u043b\u0438\u043b\u0441\u044f \u0441 \u041e\u0421"),0==q.SharedFQDN&&(e="\u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u041e\u0421"));d+=TableEntry("\u0418\u043c\u044f \u0438 \u0434\u043e\u043c\u0435\u043d",addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));
1018
+c="\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e";1==q.DDNSUpdateEnabled?c="\u0412\u043a\u043b\u044e\u0447\u0435\u043d \u043a\u0430\u0436\u0434\u044b\u0439"+q.DDNSPeriodicUpdateInterval+" \u043c\u0438\u043d\u0443\u0442, TTL"+q.DDNSTTL+" \u043c\u0438\u043d\u0443\u0442":1==q.DDNSUpdateByDHCPServerEnabled&&(c="\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 DHCP-\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c");d+=TableEntry("\u0414\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0439 DNS",
1019
+addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"\u0411\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441":"\u041f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441")+
1020
+"</h2>";d+=TableStart();d+=TableEntry("\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0441\u0441\u044b\u043b\u043a\u0438",1==c.LinkIsUp?"\u0421\u0441\u044b\u043b\u043a\u0430 \u0432\u0432\u0435\u0440\u0445":"\u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442");if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 / AC"),14==c.LinkPolicy[l]&&e.push("Sx / AC"),16==c.LinkPolicy[l]&&e.push("S0 / DC"),
1021
+224==c.LinkPolicy[l]&&e.push("Sx / DC");0==e.length&&e.push("");d+=TableEntry("\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0441\u0441\u044b\u043b\u043e\u043a",addLinkConditional(0==e.length?"\u041d\u0435\u0442 \u0432 \u043d\u0430\u043b\u0438\u0447\u0438\u0438":"\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0432: "+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("MAC-\u0430\u0434\u0440\u0435\u0441",c.MACAddress));amtwirelessif==
1022
+a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("\u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("\u0420\u0430\u0434\u0438\u043e \u0413\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u043e",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+
1023
+", SSID: "+(s?s:"<i>\u041d\u0438\u043a\u0442\u043e</i>")));amtwirelessif!=a&&(d+=TableEntry("\u041e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u043f\u0438\u043d\u0433",addLinkConditional(["\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e","ICMP-\u043e\u0442\u0432\u0435\u0442","\u041e\u0442\u0432\u0435\u0442 RMCP","ICMP \u0438 RMCP \u043e\u0442\u0432\u0435\u0442"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?
1024
+"\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c DHCP-\u0441\u0435\u0440\u0432\u0435\u0440\u0430":"\u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 IP-\u0430\u0434\u0440\u0435\u0441",1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 IPv4",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));
1025
+d+=TableEntry("\u0410\u0434\u0440\u0435\u0441 IPv4",isIpAddress(c.IPAddress,"\u041d\u0438\u043a\u0442\u043e"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("\u0428\u043b\u044e\u0437 / \u043c\u0430\u0441\u043a\u0430 IPv4",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"\u041d\u0438\u043a\u0442\u043e")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("\u0421\u0435\u0440\u0432\u0435\u0440 \u0434\u043e\u043c\u0435\u043d\u043d\u044b\u0445 \u0438\u043c\u0435\u043d IPv4",
1026
+e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r="\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?
1027
+"\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0435, \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0438 \u0440\u0443\u0447\u043d\u044b\u0435 \u0430\u0434\u0440\u0435\u0441\u0430":"\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e, \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0430\u0434\u0440\u0435\u0441\u0430");d+=TableEntry("\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 IPv6",addLinkConditional(r,
1028
+"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=","),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("\u0410\u0434\u0440\u0435\u0441 IPv6",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("\u0410\u0434\u0440\u0435\u0441 IPv6","\u041d\u0438\u043a\u0442\u043e");
1029
+isIpAddress(c.CurrentDefaultRouter)&&(d+=TableEntry("\u041c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0442\u043e\u0440 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e IPv6",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("\u0421\u0435\u0440\u0432\u0435\u0440 \u0434\u043e\u043c\u0435\u043d\u043d\u044b\u0445 \u0438\u043c\u0435\u043d IPv6",e))}}d+=TableEnd()}}1!=
1030
+urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<amtversion||11==amtversion&&5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
1031
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
1032
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0441\u0441\u044b\u043b\u043e\u043a",3,showLinkPolicyDlgEx,a,b)}}
1033
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
1034
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0441\u0441\u044b\u043b\u043e\u043a",format("\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u0443\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u0441\u0441\u044b\u043b\u043e\u043a, \u043e\u0448\u0438\u0431\u043a\u0430 {0}",d))}
1035
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>\u041d\u0438\u043a\u0442\u043e</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
1036
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>\u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0439</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+
1037
+" \u0431\u0430\u0439\u0442,<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+c+")>\u0421\u043a\u0430\u0447\u0430\u0442\u044c</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" \u0431\u0430\u0439\u0442,<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>\u0421\u043a\u0430\u0447\u0430\u0442\u044c</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}
1038
+function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
1039
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 Intel® AMT",
1040
+3,saveEntireAmtStateOk)}}
1041
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 Intel® AMT",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);
1042
+amtstack.GetMessageLog(saveEntireAmtStateOk4)}function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}
1043
+function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1044
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0434\u0438\u0441\u043f\u043b\u0435\u0439</option><option value=1>\u0412\u0442\u043e\u0440\u0438\u0447\u043d\u044b\u0439 \u0434\u0438\u0441\u043f\u043b\u0435\u0439</option>";9<amtversion&&(c+="<option value=2>3-\u0439 \u0434\u0438\u0441\u043f\u043b\u0435\u0439</option>");
1045
+c+='</select><div style=padding-top:4px>\u0414\u0438\u0441\u043f\u043b\u0435\u0439 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>\u0422\u0430\u0439\u043c-\u0430\u0443\u0442 \u0441\u0435\u0430\u043d\u0441\u0430 (\u043c\u0438\u043d\u0443\u0442\u044b)</div></div>';1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>\u0422\u0430\u0439\u043c-\u0430\u0443\u0442 (\u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445)</div></div>');
1046
+c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f</option><option value=1>\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e, Legacy KVM \u0437\u0440\u0438\u0442\u0435\u043b\u0435\u0439</option></select><div style=padding-top:4px>\u041f\u043e\u0440\u0442 5900</div></div>";
1047
+c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>5900 \u043f\u0430\u0440\u043e\u043b\u0435\u0439 (8 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432)</div></div>";9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+='<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e</option><option value=1>\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e</option></select><div style=padding-top:4px title="\u042d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043d\u0435 \u0447\u0430\u0441\u0442\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f">\u0413\u0430\u0448\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430</div></div>');
1048
+c+="</div>";setDialogMode(11,"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0441\u0442\u043e\u043b\u0430",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&
1049
+(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1050
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1051
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}
1052
+function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0441\u0442\u043e\u043b\u0430",format("\u041e\u0448\u0438\u0431\u043a\u0430 {0}, \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f.",d))}
1053
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("\u043e\u0448\u0438\u0431\u043a\u0430",format("\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0433\u0430\u0448\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0433\u0430\u0448\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u044d\u0442\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 ({0}).",
1054
+d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1055
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("\u0420\u0430\u0437\u043c\u043e\u0440\u043e\u0437\u0438\u0442\u044c \u0436\u0443\u0440\u043d\u0430\u043b","FreezeLog(0)"):AddButton("Freeze Log","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="\u0424\u0438\u043b\u044c\u0442\u0440" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1056
+AddRefreshButton("PullEventLog(1)")+AddButton("\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0436\u0443\u0440\u043d\u0430\u043b","ClearLog()")+AddButton("\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1057
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a</b><td class=r1><b>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&
1058
+(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==
1059
+d?" ":"");QH(20,e+"<br>");processMessageLog0()}function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}
1060
+function ClearLog(b){xxdialogMode||(QH(66,"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0436\u0443\u0440\u043d\u0430\u043b \u0441\u043e\u0431\u044b\u0442\u0438\u0439?"),setDialogMode(1,"\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u043e\u0431\u044b\u0442\u0438\u0439",3,ClearLogEx))}
1061
+function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u043e\u0431\u044b\u0442\u0438\u0439","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c, \u043e\u0448\u0438\u0431\u043a\u0430: "+d):PullEventLog()})}
1062
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("\u0412\u0440\u0435\u043c\u044f",c.Time.toLocaleString());a+=addHtmlValue("\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",c.Desc);a+=MoreStart();a+=addHtmlValue("\u0410\u0434\u0440\u0435\u0441 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430",c.DeviceAddress);a+=addHtmlValue("\u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044c",
1063
+c.Entity);a+=addHtmlValue("\u042d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];a+=addHtmlValue("\u0414\u0430\u043d\u043d\u044b\u0435",d);a+=addHtmlValue("\u043e\u0444\u0441\u0435\u0442",c.EventOffset);a+=addHtmlValue("\u0422\u0438\u043f \u0434\u0430\u0442\u0447\u0438\u043a\u0430",c.EventSensorType);a+=addHtmlValue("\u0421\u0442\u0440\u043e\u0433\u043e\u0441\u0442\u044c",
1064
+c.EventSeverity);a+=addHtmlValue("\u0422\u0438\u043f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430",c.EventSourceType);a+=addHtmlValue("\u0422\u0438\u043f",c.EventType);a+=addHtmlValue("\u041d\u043e\u043c\u0435\u0440 \u0434\u0430\u0442\u0447\u0438\u043a\u0430",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("\u0421\u043e\u0431\u044b\u0442\u0438\u0435 \u2116 {0} \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438",b+1),a)}}
1065
+function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1066
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1067
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a\u0430\u043c\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u0439.<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)",
1068
+"®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>\u041f\u043e\u0434\u043f\u0438\u0441\u043a\u0438 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.</i></div><br>");e="<div> "+
1069
+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("\u041d\u043e\u0432\u0430\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0430","newSubscriptionButton()"));b+="<br><td class=r1>"+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"\u041e\u0442 \u0441\u0435\u0431\u044f",3:"\u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u0441 ACK",4:"\u041c\u0435\u0440\u043e\u043f\u0440\u0438\u044f\u0442\u0438\u044f",5:"\u0422\u044f\u043d\u0443\u0442\u044c"};
1070
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("\u041f\u0443\u043d\u043a\u0442 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f",a.Destination);d+=addHtmlValue("\u0424\u0438\u043b\u044c\u0442\u0440",c);d+=addHtmlValue("\u0420\u0435\u0436\u0438\u043c \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438",
1071
+subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"\u041f\u043e\u0434\u043f\u0438\u0441\u043a\u0430"+(b+1),xxAccountAdminName?5:1,deleteSubscriptionButton,d+"</div>",b)}}
1072
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+
1073
+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+
1074
+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1075
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>\u041e\u0442 \u0441\u0435\u0431\u044f</option><option value=PushWithAck>\u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u0441 ACK</option></select><div style=padding-top:4px>\u0422\u0438\u043f</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+=
1076
+'<option value="'+subscriptionsFilters[c].InstanceID+'">'+subscriptionsFilters[c].CollectionName.substring(13)+"</option>";b+="</select><div style=padding-top:4px>\u0424\u0438\u043b\u044c\u0442\u0440</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>URL</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>\u041d\u0438\u043a\u0442\u043e</option><option value=1>\u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442</option></select><div style=padding-top:4px>\u0410\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f</div></div>";
1077
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>\u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>\u043f\u0430\u0440\u043e\u043b\u044c</div></div>";
1078
+b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>\u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b</div></div>";setDialogMode(11,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0443 \u043d\u0430 \u0441\u043e\u0431\u044b\u0442\u0438\u0435",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}
1079
+function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1080
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1081
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="\u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439;\u0414\u0440\u0443\u0433\u043e\u0439;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e;\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e;\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435;\u041d\u0435\u043f\u0440\u0438\u0433\u043e\u0434\u043d\u044b\u0439;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e, \u043d\u043e \u0432 \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435;\u0412 \u0442\u0435\u0441\u0442\u0435;\u041e\u0442\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439;\u0417\u0430\u043c\u043e\u0440\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435;\u043d\u0430\u0447\u0430\u043b\u043e".split(";");
1082
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e":"\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e",c&2&&(b+=", \u0417\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d"),c&4&&(b+=", \u041f\u043e\u0447\u0442\u0438 \u043f\u043e\u043b\u043d\u044b\u0439"),c&8&&(b+=", \u041f\u043e\u043b\u043d\u044b\u0439"),c&16&&(b+=", \u041d\u0435\u0442 \u043a\u043b\u044e\u0447\u0430"),c="<h1>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u0430\u0443\u0434\u0438\u0442\u0430</h1>"+
1083
+TableStart(),c+=TableEntry("\u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439",b),c+=TableEntry("\u041c\u0435\u0441\u0442\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f",a[0].CurrentNumberOfRecords+" \u0437\u0430\u043f\u0438\u0441\u044c (\u044b),"+a[0].PercentageFree+"% \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e"),c+=TableEntry("\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0438",
1084
+2==a[0].OverwritePolicy?"\u0417\u0430\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0435\u0442, \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u043d\u044b\u0439":"\u041d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442"),c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1085
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="\u0424\u0438\u043b\u044c\u0442\u0440" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c...","SaveAuditLog()")+AddButton("\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0436\u0443\u0440\u043d\u0430\u043b",
1086
+"ClearAuditLog()"))+"<br>");if(0==c.length)d="\u0421\u043e\u0431\u044b\u0442\u0438\u044f \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u0430\u0443\u0434\u0438\u0442\u0430 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.";else{var e=0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>\u0412\u0440\u0435\u043c\u044f</b><td class=r1 style=width:260px><b>\u0438\u043d\u0438\u0446\u0438\u0430\u0442\u043e\u0440</b><td class=r1><b>Action</b>";
1087
+for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+=","+q.Event);null!=q.ExStr&&(p+=","+q.ExStr);""!=k&&""!=r&&(k+=",");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",
1088
+minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","\u0416\u0443\u0440\u043d\u0430\u043b \u0430\u0443\u0434\u0438\u0442\u0430 Intel AMT",auditLog)}
1089
+function ClearAuditLog(b){QH(66,"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0436\u0443\u0440\u043d\u0430\u043b \u0430\u0443\u0434\u0438\u0442\u0430?");setDialogMode(1,"\u0410\u0443\u0434\u0438\u0442 \u0416\u0443\u0440\u043d\u0430\u043b",3,ClearAuditLogEx)}function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}
1090
+function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("\u0410\u0443\u0434\u0438\u0442 \u0416\u0443\u0440\u043d\u0430\u043b","\u041e\u0448\u0438\u0431\u043a\u0430: "+d)}
1091
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("\u0412\u0440\u0435\u043c\u044f",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("\u0438\u043d\u0438\u0446\u0438\u0430\u0442\u043e\u0440",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("\u0410\u0434\u0440\u0435\u0441",a.NetAddress));d+=addHtmlValue("\u0437\u0430\u044f\u0432\u043a\u0430",a.AuditApp);d+=addHtmlValue("\u0421\u043e\u0431\u044b\u0442\u0438\u0435",a.Event);if(null!=
1092
+a.ExStr)d+=addHtmlValue("\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<e.length&&(e+=","),e+=a.Ex.charCodeAt(c);""!=e&&(d+=addHtmlValue("\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("\u0421\u0442\u0440\u043e\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445",a.Ex.substring(2)))}messagebox("\u0410\u0443\u0434\u0438\u0442 \u0421\u043e\u0431\u044b\u0442\u0438\u0435 \u2116"+
1093
+(b+1)+" \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1094
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1095
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1096
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1097
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e";var c=(1==xxTlsSettings[b].MutualAuthentication?"Mutual-auth TLS":"\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043f\u043e\u0434\u043b\u0438\u043d\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 TLS")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" \u0438 \u043d\u0435 TLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&
1098
+(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1099
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u0430\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c TLS",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c TLS",
1100
+addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c\u0438 Intel® AMT \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430.<br><br>");if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+=
1101
+"<div style=padding-left:15px><br><i>\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b="\u0414\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u0440\u0435\u043d\u044c"),xxCertificates[d].XPrivateKey&&(b="\u0417\u0430\u043a\u0440\u044b\u0442\u044b\u0439 \u043a\u043b\u044e\u0447"),d==xxTlsCurrentCert&&(b+=", \u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 TLS"),
1102
+a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+b+"</i></div></div>";for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>\u041d\u0435\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u0430\u044f \u043f\u0430\u0440\u0430 \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439 #"+
1103
+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 ...","addCertButton()")+AddButton("\u0412\u044b\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 ...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1104
+function showKeyPairDetails(b){setDialogMode(11,"\u041f\u0430\u0440\u0430 \u043a\u043b\u044e\u0447\u0435\u0439"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"\u042d\u0442\u043e \u043f\u0430\u0440\u0430 \u043a\u043b\u044e\u0447\u0435\u0439 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0433\u043e / \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0435 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u043d\u0438 \u043a \u043e\u0434\u043d\u043e\u043c\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0443. \u042d\u0442\u0430 \u0437\u0430\u043f\u0438\u0441\u044c \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439.")}
1105
+var xxCertSubjectNames={CN:"\u0420\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u043e\u0435 \u0438\u043c\u044f",O:"\u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f",OU:"\u041f\u043e\u0434\u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u041e\u0440\u0433",S:"\u0428\u0442\u0430\u0442 / \u043f\u0440\u043e\u0432\u0438\u043d\u0446\u0438\u044f",ST:"\u0428\u0442\u0430\u0442 / \u043f\u0440\u043e\u0432\u0438\u043d\u0446\u0438\u044f",L:"\u041c\u0435\u0441\u0442\u043e\u043d\u0430\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435",
1106
+C:"\u0421\u0442\u0440\u0430\u043d\u0430",SN:"\u0424\u0430\u043c\u0438\u043b\u0438\u044f",GN:"\u0421\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0438\u043c\u044f"};
1107
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442",c.X509Certificate.length+" \u0431\u0430\u0439\u0442,<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>\u0421\u043a\u0430\u0447\u0430\u0442\u044c</a>");a+=addHtmlValue("\u0414\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u0440\u0435\u043d\u044c",c.TrustedRootCertficate?"\u0434\u0430":"\u043d\u0435\u0442");0==
1108
+c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("\u0417\u0430\u043a\u0440\u044b\u0442\u044b\u0439 \u043a\u043b\u044e\u0447","\u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f"));a+='<br><div style="border-bottom:1px solid gray"><i>\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0422\u0435\u043c\u0430</i></div><br>';for(var d in c.XSubject)c.XSubject[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));
1109
+a+='<br><div style="border-bottom:1px solid gray"><i>\u042d\u043c\u0438\u0442\u0435\u043d\u0442 \u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 -"+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},
1110
+function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}var xxDragDropCertFiles=null;
1111
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>\u0424\u0430\u0439\u043b \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430</div></div>")+
1112
+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u0440\u043d\u044f</option><option value=0>\u0426\u0435\u043f\u043d\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442</option></select><div style=padding-top:4px>\u0422\u0438\u043f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430</div></div>",
1113
+setDialogMode(11,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1114
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1115
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>\u041f\u0430\u0440\u043e\u043b\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430</div></div>",
1116
+b+='<br><div style="border-bottom:1px solid gray"><i>\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 Intel® AMT</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>\u0420\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u043e\u0435 \u0438\u043c\u044f</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>\u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f</div></div>",
1117
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>\u0428\u0442\u0430\u0442 / \u043f\u0440\u043e\u0432\u0438\u043d\u0446\u0438\u044f</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>\u0421\u0442\u0440\u0430\u043d\u0430</div></div>",b+='<div>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',
1118
+b+="<li><label><input type=checkbox id=d11_cu4 checked>TLS-\u0441\u0435\u0440\u0432\u0435\u0440 (HTTPS)</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>\u041a\u043b\u0438\u0435\u043d\u0442 TLS (HTTPS)</label></li>",b+="<li><label><input type=checkbox id=d11_cu6>\u0417\u0430\u0449\u0438\u0442\u0430 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0447\u0442\u044b</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>\u041f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043a\u043e\u0434\u0430</label></li>",
1119
+b+="<li><label><input type=checkbox id=d11_cu8>\u041e\u0442\u043c\u0435\u0442\u043a\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438</label></li>",b+="</ul>",setDialogMode(11,"\u0412\u044b\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1120
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1121
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}
1122
+function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("\u0412\u044b\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c / \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442.")}
1123
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1124
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("\u0412\u044b\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0443 \u043a\u043b\u044e\u0447\u0435\u0439. \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u0435\u043b: "+d):0!=a.Body.ReturnValue?messagebox("\u0412\u044b\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442",
1125
+"\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0443 \u043a\u043b\u044e\u0447\u0435\u0439,"+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1126
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("\u0412\u044b\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0443 \u043a\u043b\u044e\u0447\u0435\u0439. \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u0435\u043b: "+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);
1127
+a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"\u041d\u0435\u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&
1128
+(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("\u0412\u044b\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442."):
1129
+(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,q.length-25),GenerateKeyPairResponse4))}}
1130
+function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("\u0412\u044b\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0443 \u043a\u043b\u044e\u0447\u0435\u0439. \u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u0435\u043b: "+d):PullCertificates()}
1131
+function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u043e\u0448\u0438\u0431\u043a\u0430"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}
1132
+function certificateRemoved(b,c,a,d){200!=d?messagebox("\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u043e\u0448\u0438\u0431\u043a\u0430"+d):PullCertificates()}
1133
+function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1134
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>\u041d\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430, TLS \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+=
1135
+"<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";
1136
+b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="\u0420\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0437\u0430\u043f\u044f\u0442\u044b\u043c\u0438 \u0441\u043f\u0438\u0441\u043e\u043a \u043e\u0431\u0449\u0438\u0445 \u0438\u043c\u0435\u043d \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043e \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435."><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="\u0438\u043c\u044f1, \u0438\u043c\u044f2"><div style=padding-top:4px>\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 CN\'s</div></div>';
1137
+setDialogMode(11,"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 TLS",3,showSetTlsSecurityDlgOk,b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);
1138
+getSelectElement("tlsremote").value=(1==xxTlsSettings[c].MutualAuthentication?2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}
1139
+function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1140
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1141
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1142
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1143
+b,c,d){200!=d?messagebox("","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f, \u0441\u0442\u0430\u0442\u0443\u0441 ="+d):0!=c.Body.ReturnValue?messagebox("","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f, \u043e\u0448\u0438\u0431\u043a\u0430: "+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/
1144
+1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,0,1,a[1]);statusbox("\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 TLS","\u041f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 ...")}
1145
+function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1146
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c TLS, \u0441\u0442\u0430\u0442\u0443\u0441 ="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1147
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c TLS, \u0441\u0442\u0430\u0442\u0443\u0441 ="+d):0!=a.Body.ReturnValue?messagebox("","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c TLS, \u043e\u0448\u0438\u0431\u043a\u0430: "+
1148
+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1149
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1150
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1151
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1152
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}
1153
+var watchdogEnabledStates="\u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439;\u0414\u0440\u0443\u0433\u043e\u0439;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e;\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e;\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435;\u041d\u0435\u043f\u0440\u0438\u0433\u043e\u0434\u043d\u044b\u0439;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e, \u043d\u043e \u0432 \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435;\u0412 \u0442\u0435\u0441\u0442\u0435;\u041e\u0442\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439;\u0417\u0430\u043c\u043e\u0440\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435;\u043d\u0430\u0447\u0430\u043b\u043e".split(";"),watchdogMonitoredEntity=
1154
+"\u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439;\u0414\u0440\u0443\u0433\u043e\u0439;\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430;\u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b;\u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b;\u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438;\u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 BIOS;\u0437\u0430\u044f\u0432\u043a\u0430;\u0421\u0435\u0440\u0432\u0438\u0441\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440".split(";");
1155
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u044b\u0435 \u043f\u0441\u044b",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u044b\u0435 \u0441\u043e\u0431\u0430\u043a\u0438");b+=TableEntry("\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u043e\u0431\u0449\u0435\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439",
1156
+xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f \u0430\u0433\u0435\u043d\u0442\u0430 Intel® AMT.<br><br>";if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||
1157
+0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>\u0410\u0433\u0435\u043d\u0442 \u043f\u043e \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u044e \u0437\u0430 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435\u043c \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d.</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));
1158
+a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 ..." onclick=addWatchdogAction(event,'+c+")>";a.transitions&&(b+='<input type=button style=float:right value="\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f ..." onclick=deleteWatchdogActions(event,'+
1159
+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+=": \u0421\u043e\u0431\u044b\u0442\u0438\u0435 \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u0430")}""!=d&&(b+="<div style=padding:12px>"+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+
1160
+AddButton("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u043e\u0439 \u0442\u0430\u0439\u043c\u0435\u0440 ...","AddWatchdog()"));b+="<br>";QH(60,b)}}function getWatchdogTransitionStr(b){if(31==b)return"\u041b\u044e\u0431\u043e\u0439 \u0448\u0442\u0430\u0442";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1161
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0435\u043c\u044b\u0439 \u0441\u0443\u0431\u044a\u0435\u043a\u0442",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("\u0422\u0435\u043a\u0443\u0449\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435",
1162
+amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435",watchdogEnabledStates[b.EnabledState]);c+=addHtmlValue("\u0418\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0437\u0430\u043f\u0443\u0441\u043a\u0430",b.StartupInterval+" \u0441\u0435\u043a\u0443\u043d\u0434 (\u044b)");c+=addHtmlValue("\u0418\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0442\u0430\u0439\u043c-\u0430\u0443\u0442\u0430",
1163
+b.TimeoutInterval+" \u0441\u0435\u043a\u0443\u043d\u0434 (\u044b)");setDialogMode(11,format("\u0421\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u043e\u0439 \u0442\u0430\u0439\u043c\u0435\u0440 {0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1164
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\u0438\u043c\u044f</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e DeviceID">'+
1165
+addLink("\u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430","GenerateWatchdogGuid()")+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\u0417\u0430\u043f\u0443\u0441\u043a (\u0441\u0435\u043a\u0443\u043d\u0434)</div></div>";b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\u0422\u0430\u0439\u043c-\u0430\u0443\u0442 (\u0441\u0435\u043a\u0443\u043d\u0434\u044b)</div></div>";
1166
+setDialogMode(11,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u0440\u043e\u0436",3,AddWatchdogOk,b);AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}
1167
+function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1168
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1169
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("\u0421\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u0430\u044f \u0441\u043e\u0431\u0430\u043a\u0430","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u043e\u0439 \u0442\u0430\u0439\u043c\u0435\u0440, \u043e\u0448\u0438\u0431\u043a\u0430 #"+d):PullWatchdog()}
1170
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>\u041e\u0442<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>\u043a<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c Watchdog Action",
1171
+3,addWatchdogActionOk,d+"</table><br>\u0412\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>\u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u0436\u0443\u0440\u043d\u0430\u043b \u0441\u043e\u0431\u044b\u0442\u0438\u0439<br />",a);addWatchdogActionUpdate();haltEvent(b)}
1172
+function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1173
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1174
+function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Watchdog Action","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u043e\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435, \u043e\u0448\u0438\u0431\u043a\u0430 #"+d):PullWatchdog()}
1175
+function deleteWatchdogActions(b,c){setDialogMode(11,"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f",3,deleteWatchdogActionsOk,"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u043e\u0433\u043e \u0442\u0430\u0439\u043c\u0435\u0440\u0430?",
1176
+xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1177
+function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("Watchdog Action","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u043e\u0440\u043e\u0436\u0435\u0432\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043e\u0448\u0438\u0431\u043a\u0430 #"+d):PullWatchdog()}
1178
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"\u0412\u0441\u0435 IP-\u043f\u0430\u043a\u0435\u0442\u044b",2054:"\u0412\u0441\u0435 \u043f\u0430\u043a\u0435\u0442\u044b ARP"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c, \u0433\u0440\u0430\u0444",
1179
+1:"\u0411\u0440\u043e\u0441\u044c, \u043f\u043e\u0441\u0447\u0438\u0442\u0430\u0439",2:"\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438",3:"\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0442\u044c",4:"\u041a\u0430\u043f\u043b\u044f"},xxSystemDefenceFilters={HdrProtocolID:1,HdrDestAddress:2,HdrDestMask:2,HdrSrcAddress:2,HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,
1180
+TCPFlagsOn:3,TCPFlagsOff:3};function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1181
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1182
+a}b+=TableStart();c="<i>\u041d\u0438\u043a\u0442\u043e</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("\u041f\u0440\u043e\u0432\u043e\u0434\u043d\u0430\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d=1==d?d+" \u043f\u0430\u043a\u0435\u0442":d+" \u043f\u0430\u043a\u0435\u0442\u044b",
1183
+b+=TableEntry((0==c?"\u041f\u0440\u043e\u0432\u043e\u0434\u043d\u0430\u044f":"\u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430\u043c\u0438 \u0437\u0430\u0449\u0438\u0442\u044b Intel® AMT.<br><br>";if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+=
1184
+"<div style=padding-left:15px><i>\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?
1185
+"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+c+")><div style=padding-top:3px><b>"+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u043c\u0438 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b Intel® AMT.<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+=
1186
+"<div style=padding-left:15px><i>\u0424\u0438\u043b\u044c\u0442\u0440\u044b \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||(d="\u0412\u0441\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b Ethernet"+a.HdrProtocolID8021),d+=
1187
+", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" \u0432"+a.FilterProfileData+" \u043f\u0430\u043a\u0435\u0442 / \u0441\u0435\u043a"),1==a.ActionEventOnMatch&&(d+="\u0421\u043e\u0431\u044b\u0442\u0438\u0435 \u043d\u0430 \u043c\u0430\u0442\u0447"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=
1188
+xxSystemDefense.AMT_IPHeadersFilter.responses[c];(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="\u0412\u0441\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b Ethernet"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==a.FilterProfile&&(d+=" \u0432"+a.FilterProfileData+" \u043f\u0430\u043a\u0435\u0442 / \u0441\u0435\u043a");1==a.ActionEventOnMatch&&(d+="\u0421\u043e\u0431\u044b\u0442\u0438\u0435 \u043d\u0430 \u043c\u0430\u0442\u0447");var q=0;for(e in xxSystemDefenceFilters)a[e]&&
1189
+q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440 ...","AddDefenseFilter()")+AddButton("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 ...",
1190
+"AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1191
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1192
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1193
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1194
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>\u041d\u0438\u043a\u0442\u043e";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;
1195
+setDialogMode(11,"\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e</div></div>",b)}}
1196
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+
1197
+c+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1198
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">\u041f\u043e\u0440\u0442 Ethernet Intel (r) AMT '+
1199
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1200
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}
1201
+function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u043e\u0448\u0438\u0431\u043a\u0430"+d):PullSystemDefense()}
1202
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u0438\u043c\u044f</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>Ethernet IP Packet Filter<option value=1>\u041f\u0430\u043a\u0435\u0442\u043d\u044b\u0439 \u0444\u0438\u043b\u044c\u0442\u0440 Ethernet ARP<option value=2>\u041f\u0430\u043a\u0435\u0442\u043d\u044b\u0439 \u0444\u0438\u043b\u044c\u0442\u0440 IPv4<option value=3>\u041f\u0430\u043a\u0435\u0442\u043d\u044b\u0439 \u0444\u0438\u043b\u044c\u0442\u0440 IPv6</select><div style=padding-top:4px>\u0422\u0438\u043f</div></div>";
1203
+b+='<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="\u0424\u0430\u043a\u0443\u043b\u044c\u0442\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\u0418\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439 / \u041f\u0435\u0440\u0435\u0434\u0430\u0442\u044c<option value=1>\u0412\u0445\u043e\u0434\u044f\u0449\u0438\u0439 / \u041f\u043e\u043b\u0443\u0447\u0430\u0442\u044c</select><div style=padding-top:4px>\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435</div></div>";
1204
+b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c, \u0433\u0440\u0430\u0444<option value=1>\u0411\u0440\u043e\u0441\u044c, \u043f\u043e\u0441\u0447\u0438\u0442\u0430\u0439<option value=2>\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438<option value=3>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0442\u044c<option value=4>\u041a\u0430\u043f\u043b\u044f</select><div style=padding-top:4px>\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435</div></div>";
1205
+b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u041f\u0430\u043a\u0435\u0442\u043e\u0432 / \u0441\u0435\u043a\u0443\u043d\u0434\u0443</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>\u041d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c<option value=1>\u0421\u043e\u0431\u044b\u0442\u0438\u0435 \u043d\u0430 \u043c\u0430\u0442\u0447\u0435</select><div style=padding-top:4px>\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u043e\u0431\u044b\u0442\u0438\u0439</div></div>";
1206
+setDialogMode(11,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b",3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1207
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1208
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="Hdr"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1209
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1210
+function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440, \u043e\u0448\u0438\u0431\u043a\u0430 #"+d):PullSystemDefense()}
1211
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="Ethernet Traffic",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="\u0412\u0441\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b Ethernet"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="IP-\u0442\u0440\u0430\u0444\u0438\u043a",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="\u0412\u0441\u0435 IP \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b"+
1212
+d.HdrIPVersion));var p;p=""+addHtmlValue("\u0438\u043c\u044f",EscapeHtml(d.Name));p+=addHtmlValue("\u0422\u0438\u043f",e);p+=addHtmlValue("\u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0442\u0440\u0430\u0444\u0438\u043a\u0430",a);p+=addHtmlValue("\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==
1213
+b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("\u0424\u0438\u043b\u044c\u0442\u0440"+a,e));p+=addHtmlValue("\u0421\u043e\u0431\u044b\u0442\u0438\u0435 \u043d\u0430 \u043c\u0430\u0442\u0447\u0435",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,"\u0424\u0438\u043b\u044c\u0442\u0440 Ethernet \u2116"+d.InstanceID,5,showFilterDetailsOk,p,[q,d])}}
1214
+function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}
1215
+function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043e\u043d \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1216
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>\u0438\u043c\u044f</div></div><div style=height:26px;margin-top:4px><select id=policytx title="\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0434\u043b\u044f \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430" style=float:right;width:133px><option value=0>Allow<option value=1>\u041a\u0430\u043f\u043b\u044f<option value=2>\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c, \u0433\u0440\u0430\u0444<option value=3>Drop, \u0433\u0440\u0430\u0444<option value=4>Allow, \u0433\u0440\u0430\u0444, \u0441\u043e\u0431\u044b\u0442\u0438\u0435<option value=5>Drop, \u0433\u0440\u0430\u0444, \u0441\u043e\u0431\u044b\u0442\u0438\u0435</select><select id=policyrx style=float:right;width:133px title="\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430"><option value=0>\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0442\u044c<option value=1>\u041a\u0430\u043f\u043b\u044f<option value=2>\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c, \u0433\u0440\u0430\u0444<option value=3>Drop, \u0433\u0440\u0430\u0444<option value=4>Allow, \u0433\u0440\u0430\u0444, \u0441\u043e\u0431\u044b\u0442\u0438\u0435<option value=5>Drop, \u0433\u0440\u0430\u0444, \u0441\u043e\u0431\u044b\u0442\u0438\u0435</select><div style=padding-top:4px>TX / RX \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e</div></div>';
1217
+b+="<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1218
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440</div></div>"}setDialogMode(11,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b",3,AddDefensePolicyOk,b);
1219
+AddDefensePolicyUpdate()}}function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1220
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>\u042d\u0442\u0430 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043d\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432.</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("\u0423\u0434\u0430\u043b\u0438\u0442\u044c",
1221
+"removeFilterButton("+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+GetFilterById(xxAddDefensePolicyFilters[c]).Name+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1222
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1223
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u043e\u0448\u0438\u0431\u043a\u0430 #"+d):PullSystemDefense()}
1224
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("\u0438\u043c\u044f",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("\u0441\u0442\u0430\u0440\u0448\u0438\u043d\u0441\u0442\u0432\u043e",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"\u041a\u0430\u043f\u043b\u044f":"\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0442\u044c";1==c.TxDefaultCount&&(d+=", \u0413\u0440\u0430\u0444");1==c.TxDefaultMatchEvent&&(d+=
1225
+", \u0421\u043e\u0431\u044b\u0442\u0438\u0435");a+=addHtmlValue("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 TX \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",d);d=1==c.RxDefaultDrop?"Drop":"Allow";1==c.RxDefaultCount&&(d+=", Count");1==c.RxDefaultMatchEvent&&(d+=", Event");a+=addHtmlValue("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 RX \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=
1226
+addHtmlValue("\u0424\u0438\u043b\u044c\u0442\u0440 \u2116"+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u2116",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}
1227
+function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043e\u043d\u0430 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f."):PullSystemDefense()}
1228
+var xxWireless;function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}function wifiRefresh(){xxdialogMode||PullWireless()}
1229
+var xxWifiState={3:"\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e",32768:"\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u0432 S0",32769:"\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u0432 S0, Sx / AC"},xxRadioState={2:"\u041d\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d",3:"\u043e\u0442",6:"\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d"},xxWifiAuthenticationMethod={1:"\u0414\u0440\u0443\u0433\u043e\u0439",2:"\u043e\u0442\u043a\u0440\u044b\u0442\u043e",3:"\u041e\u0431\u0449\u0438\u0439 \u043a\u043b\u044e\u0447",
1230
+4:"WPA PSK",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"\u0414\u0440\u0443\u0433\u043e\u0439",2:"WEP",3:"TKIP-RC4",4:"CCMP-AES",5:"\u041d\u0438\u043a\u0442\u043e"};function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1231
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>\u041f\u0440\u043e\u0444\u0438\u043b\u0438 \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>\u041f\u0440\u043e\u0444\u0438\u043b\u0438 \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 Intel® AMT \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a \u0441\u0435\u0442\u0438.<br><br>";
1232
+for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("\u0423\u0434\u0430\u043b\u0438\u0442\u044c",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+
1233
+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>\u041f\u0440\u043e\u0444\u0438\u043b\u0438 \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442</i><br>");e+="<br><td class=r2>";e=xxAccountAdminName?e+TableEnd(AddButton("\u041d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c","showWifiNewProfile()")):e+TableEnd("");QH(22,e+"<br>")}}}
1234
+function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"Wireless State",3,wifiStateDlg,b)}}
1235
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1236
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("\u0418\u043c\u044f \u043f\u0440\u043e\u0444\u0438\u043b\u044f",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("\u0410\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435",
1237
+xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("\u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442",b.Priority);messagebox("\u0411\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c",c+"</div>")}}
1238
+function wifiRemoveButton(b){xxdialogMode||(QH(66,format('\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 "{0}"?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"\u0411\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c",3,function(){removeWifiButtonEx(b)}))}
1239
+function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1240
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u0441\u0435\u0442\u0438",
1241
+3,function(){addWifiProfile()});updateWifiDialog()}}
1242
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1243
+PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1244
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1245
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1246
+var DMTFCPUStatus="\u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439;\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e;\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c;\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e BIOS (\u043e\u0448\u0438\u0431\u043a\u0430 POST);\u0432\u0445\u043e\u043b\u043e\u0441\u0442\u0443\u044e;\u0414\u0440\u0443\u0433\u043e\u0439".split(";"),DMTFMemType="\u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439;\u0414\u0440\u0443\u0433\u043e\u0439;\u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u041e\u0417\u0423;\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0439 DRAM;\u041a\u044d\u0448-\u043f\u0430\u043c\u044f\u0442\u044c;EDO;EDRAM;VRAM;SRAM;\u0431\u0430\u0440\u0430\u043d;\u041f\u0417\u0423;\u0432\u0441\u043f\u044b\u0448\u043a\u0430;EEPROM;FEPROM;EPROM;CDRAM;3DRAM;SDRAM;SGRAM;RDRAM;DDR;DDR-2;BRAM;FB-DIMM;DDR3;FBD2;DDR4;LPDDR;LPDDR2;LPDDR3;LPDDR4".split(";"),
1247
+DMTFMemFormFactor=";\u0414\u0440\u0443\u0433\u043e\u0439;\u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439;SIMM;\u0413\u041b\u041e\u0422\u041e\u041a;\u0447\u0438\u043f;DIP;ZIP;\u041f\u0440\u043e\u043f\u0440\u0438\u0435\u0442\u0430\u0440\u043d\u0430\u044f \u043a\u0430\u0440\u0442\u0430;DIMM;TSOP;\u0420\u044f\u0434 \u0447\u0438\u043f\u0441\u043e\u0432;RIMM;SODIMM;SRIMM;FB-DIM".split(";"),DMTFProcFamilly={191:"\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Intel® Core ™ 2 Duo",
1248
+192:"\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Intel® Core ™ 2 Solo",193:"\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Intel® Core ™ 2 Extreme",194:"\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Intel® Core ™ 2 Quad",195:"\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Intel® Core ™ 2 Extreme \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u041f\u041a",196:"\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Intel® Core ™ 2 Duo \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u041f\u041a",
1249
+197:"\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Intel® Core ™ 2 Solo \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u041f\u041a",198:"\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Intel® Core ™ i7",199:"\u0414\u0432\u0443\u0445\u044a\u044f\u0434\u0435\u0440\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Intel® Celeron®"},HardwareInventory;
1250
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c...","SaveHardwareLog()")+" \u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e\u0431 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0438 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.");
1251
+c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>\u041f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430</h2>"+FullTable({"\u041a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c":c.Model,"\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c":c.Manufacturer,"\u0412\u0435\u0440\u0441\u0438\u044f":c.Version,"\u0421\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440":c.SerialNumber,
1252
+"\u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0441\u0438\u0441\u0442\u0435\u043c\u044b":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>\u043f\u043b\u0438\u043d\u0442\u0443\u0441</h2>";b+=FullTable({"\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c":d.Manufacturer,"\u041d\u0430\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u043e\u0432\u0430\u0440\u0430":d.Model,"\u0412\u0435\u0440\u0441\u0438\u044f":d.Version,
1253
+"\u0421\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440":d.SerialNumber,"\u0422\u0435\u0433 \u0430\u043a\u0442\u0438\u0432\u0430":d.Tag,"\u0421\u043c\u0435\u043d\u043d\u0430\u044f?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({"\u043f\u0440\u043e\u0434\u0430\u0432\u0435\u0446":a.CIM_BIOSElement.response.Manufacturer,"\u0412\u0435\u0440\u0441\u0438\u044f":q,"\u0414\u0430\u0442\u0430 \u0432\u044b\u043f\u0443\u0441\u043a\u0430":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",
1254
+{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 "+(parseInt(e)+1)+"</h2>",b+=FullTable({"\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c":trademarks(d.Manufacturer),"\u0441\u0435\u043c\u044c\u044f":DMTFProcFamilly[c.Family],"\u0412\u0435\u0440\u0441\u0438\u044f":trademarks(d.Version),"\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0440\u043e\u0437\u0435\u0442\u043a\u0438":c.MaxClockSpeed+
1255
+" \u041c\u0413\u0446","\u041f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u0435\u043b":DMTFCPUStatus[c.CPUStatus]},"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=a.CIM_PhysicalMemory.responses[e],b+="<h2>\u041c\u043e\u0434\u0443\u043b\u044c \u043f\u0430\u043c\u044f\u0442\u0438 "+(+e+1)+"</h2>",b+=FullTable({"\u0411\u0430\u043d\u043a \u041c\u0435\u0442\u043a\u0430":c.BankLabel,"\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c":c.Manufacturer,"\u0421\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440":c.SerialNumber,
1256
+"\u0420\u0430\u0437\u043c\u0435\u0440":parseInt(c.Capacity/1048576)+" \u043c\u0435\u0433\u0430\u0431\u0430\u0439\u0442","\u0424\u0430\u043a\u0442\u043e\u0440 \u0444\u043e\u0440\u043c\u044b":DMTFMemFormFactor[c.FormFactor],"\u0422\u0438\u043f":DMTFMemType[c.MemoryType],"\u0422\u0435\u0433 \u0430\u043a\u0442\u0438\u0432\u0430":c.Tag,"\u041d\u043e\u043c\u0435\u0440 \u0447\u0430\u0441\u0442\u0438":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=a.CIM_MediaAccessDevice.responses[e],
1257
+d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>\u041c\u0435\u0434\u0438\u0430 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 "+(parseInt(e)+1)+"</h2>",b+=FullTable({"\u043c\u043e\u0434\u0435\u043b\u044c":d.Model,"\u0421\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440":""==d.SerialNumber?"Unknown":d.SerialNumber,"\u0420\u0430\u0437\u043c\u0435\u0440":parseInt(Math.round(1E3*c.MaxMediaSize/1048576))+" \u043c\u0435\u0433\u0430\u0431\u0430\u0439\u0442"},"");b+="<br>";
1258
+QH(18,b);updateSystemStatus()}}function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","\u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e\u0431 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0438 Intel AMT",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}
1259
+function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}
1260
+function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f Intel® AMT",3,showPowerPolicyDlgOk,
1261
+c)}}function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1262
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1263
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1264
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1265
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0443\u0447\u0435\u0442\u043d\u044b\u043c\u0438 \u0437\u0430\u043f\u0438\u0441\u044f\u043c\u0438 Intel® AMT \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?
1266
+(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=a.AccessPermission){2==q&&(p+="\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e,");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a.Realms[c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="\u0430\u0443\u0434\u0438\u0442\u043e\u0440,");p=0<=a.Realms.indexOf(3)?p+"\u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440":
1267
+1==k?p+"1 \u0446\u0430\u0440\u0441\u0442\u0432\u043e":p+(k+" \u0446\u0430\u0440\u0441\u0442\u0432")}else p+="\u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c...",
1268
+"changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u043a\u0440\u044b\u0442\u044b\u0435 \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+
1269
+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");xxAccountAdminName&&(c+=AddButton("\u041d\u043e\u0432\u044b\u0439 \u0430\u043a\u043a\u0430\u0443\u043d\u0442","newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1270
+function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1271
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0430\u043a\u043a\u0430\u0443\u043d\u0442",-1==c?3:7,
1272
+function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"\u041d\u043e\u0432\u044b\u0439 \u0430\u043a\u043a\u0430\u0443\u043d\u0442",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1273
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("\u041e\u0448\u0438\u0431\u043a\u0430 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430","\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+
1274
+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}
1275
+function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1276
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">\u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,
1277
+c)}}function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["\u0422\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0441\u0442\u043d\u044b\u0439","\u0422\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u0442\u044c","\u0412\u0441\u0435 (\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u0438 \u043f\u043e \u0441\u0435\u0442\u0438)"];
1278
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("\u0438\u043c\u044f",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("\u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439",1==xxAccountEnabledInfo[b].Enabled?"\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e":"\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e"));if(e==xxAccountAdminName)a+=
1279
+addHtmlValue("\u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435","\u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440");else{var a=a+addHtmlValue("\u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435",xxUserPermissions[c.AccessPermission]),q="";if(0<=c.Realms.indexOf(3))q="\u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440",0<=c.Realms.indexOf(20)&&(q+="\u0410\u0443\u0434\u0438\u0442\u043e\u0440");else for(d in xxAccountRealmInfo[b].Realms)""!=
1280
+amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+=","),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="\u041d\u0438\u043a\u0442\u043e");a+=addHtmlValue("Realms","")+"<b>"+q+"</b>"}messagebox("\u0421\u0447\u0435\u0442"+e,a+"</div>")}}
1281
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("\u0431\u0440\u0430\u0443\u0437\u0435\u0440",c,browserResponse,null,!0))}
1282
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>(\u041f\u0443\u0441\u0442\u043e)":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>\u041e\u0448\u0438\u0431\u043a\u0430 #"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1283
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1284
+function onTerminalStateChange(b,c){c4.value=0==c?"Connect":"\u041e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1285
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}
1286
+var terminalEmulations=["UTF8 \u0422\u0435\u0440\u043c\u0438\u043d\u0430\u043b","\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0439 ASCII","Intel ASCII"];function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}
1287
+function termToggleFx(){Q(34).value=["Intel (F10 = ESC + [OM)","\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 (F10 = ESC + 0)","VT100 + (F10 = ESC + [OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR + LF",terminal.m.lineFeed="\r\n")}
1288
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u0430\u0445\u0432\u0430\u0442";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+
1289
+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),b+".txt")}delete terminal.m.capture;c3.value="\u041d\u0430\u0447\u0430\u0442\u044c \u0437\u0430\u0445\u0432\u0430\u0442"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}
1290
+function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1291
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1292
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1293
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1294
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1295
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("DataChannel",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1296
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1297
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1298
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1299
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1300
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1301
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1302
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1303
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"Connect":"\u041e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b","The remote device is busy, a session may already be open."):
1304
+3==b.disconnectCode?messagebox("\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b","The device indicated that this type of connection of not supported."):5E4==b.disconnectCode?messagebox("\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):
1305
+50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1306
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b=", \u0421\u043e\u0444\u0442-\u041a\u0412\u041c":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}
1307
+function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0441\u0442\u043e\u043b\u0430",3,showDesktopSettingsChanged))}
1308
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1309
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1310
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1311
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1312
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1313
+"8px"),center()))}
1314
+function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0432\u0432\u043e\u0434 \u0441 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b",3,showDeskTypeEx,'<div>\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043a\u0441\u0442 \u0438 \u043d\u0430\u0436\u043c\u0438\u0442\u0435 OK, \u0447\u0442\u043e\u0431\u044b \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e \u043d\u0430\u0431\u0440\u0430\u0442\u044c \u0435\u0433\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0421\u0428\u0410. \u041f\u0435\u0440\u0435\u0434 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435\u043c \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0434\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043a\u0443\u0440\u0441\u043e\u0440 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435.<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1315
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1316
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1317
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1318
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1319
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1320
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1321
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1322
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1323
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1324
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1325
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1326
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>\u043a\u043e\u0440\u0435\u043d\u044c</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+
1327
+EscapeHtml(r)+'">'+EscapeHtml(r.substring(0,70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1328
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1329
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1330
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1331
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1332
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",
1333
+0<b&&(0<p24filetreelocation.length||0==d));QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u041d\u0435\u0442":"\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||
1334
+0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24PasteButton",(0<p24filetreelocation.length||0==d)&&null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}
1335
+function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}function p24createfolder(){setDialogMode(11,"\u041d\u043e\u0432\u0430\u044f \u043f\u0430\u043f\u043a\u0430",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}
1336
+function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"\u0443\u0434\u0430\u043b\u044f\u0442\u044c",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}
1337
+function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1338
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"Rename",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1339
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1340
+function p24uploadFile(){setDialogMode(11,"\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0444\u0430\u0439\u043b",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}
1341
+var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1342
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c",3,p24pasteFileEx,b)}
1343
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1344
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1345
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1346
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24filetable"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1347
+function getFileSizeStr(b){return 1==b?"1 \u0431\u0430\u0439\u0442":format("{0} \u0431\u0430\u0439\u0442",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}
1348
+var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1349
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0444\u0430\u0439\u043b",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+
1350
+a+" />"))}function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1351
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1352
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0444\u0430\u0439\u043b",10,p24uploadFileCancel,"<div id=p24dfileName>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 ...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1353
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1354
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1355
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1356
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1357
+function iderStart(b){if(!xxdialogMode){b="<div>\u0421\u043c\u043e\u043d\u0442\u0438\u0440\u0443\u0439\u0442\u0435 \u043e\u0431\u0440\u0430\u0437\u044b \u0434\u0438\u0441\u043a\u043e\u0432 \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435 Intel® AMT - \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e.</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+
1358
+NoBreak("\u0414\u0438\u0441\u043a\u0435\u0442\u0430 (.img)")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+NoBreak("CDROM (.iso)")+"</div></div>";setDialogMode(11,"\u041f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430",3,iderStart2,b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>\u041f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435<option value=1>\u0433\u0440\u0430\u0446\u0438\u043e\u0437\u043d\u044b\u0439<option value=2>\u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u044b\u0439</select><div>\u041d\u0430\u0447\u0430\u043b\u043e \u0441\u0435\u0430\u043d\u0441\u0430</div></div>");
1359
+b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=b.substring(1,b.length-1))}}
1360
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438","\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b \u043e\u0431\u0440\u0430\u0437\u0430 \u0434\u0438\u0441\u043a\u0430.");else if(1==
1361
+Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438","\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u0444\u0430\u0439\u043b .img.");else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%2048)messagebox("\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438",
1362
+"\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u0444\u0430\u0439\u043b .iso.");else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,Q("iderStartType").value)}}
1363
+function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1364
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1365
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"\u0441\u0435\u0440\u0432\u0435\u0440":"")+"\u0421\u0435\u0441\u0441\u0438\u044f IDE-R </ b>, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043e,"+ider.m.bytesFromAmt+" \u0432,"+ider.m.bytesToAmt+" \u0432\u043d\u0435.")}var heatMapWidth=600,heatMapDividor={};
1366
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CDROM </ b>, \u0431\u043b\u043e\u043a\u0438 - {0} \u0431\u0430\u0439\u0442\u043e\u0432.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b> \u0424\u043b\u043e\u043f\u043f\u0438-\u0434\u0438\u0441\u043a </ b>, \u0431\u043b\u043e\u043a\u0438 \u0438\u043c\u0435\u044e\u0442 \u0440\u0430\u0437\u043c\u0435\u0440 {0}.",
1367
+512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=6*(Math.floor(a/(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1368
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}
1369
+function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"\u041f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430",a?a:3,onIderDialogPromptOk,c.html)}
1370
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1371
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e",32769:"BIOS \u0432\u043a\u043b\u044e\u0447\u0435\u043d",32770:"\u041e\u0421 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c",32771:"BIOS \u0438 \u041e\u0421 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u044b"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1372
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1373
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1374
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1375
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1376
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e,"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=
1377
+TableEntry("\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0435\u0439 \u0441\u0440\u0435\u0434\u044b",addLink(c,"editEnvironmentDetection()"));b+=TableEntry("\u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0438\u043d\u0438\u0446\u0438\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",
1378
+xxAccountAdminName));c="<i>\u041d\u0438\u043a\u0442\u043e</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0438\u043d\u0438\u0446\u0438\u0438\u0440\u043e\u0432\u0430\u043b \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));
1379
+c="<i>\u041d\u0438\u043a\u0442\u043e</i>";if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("\u041e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u0435 \u0438\u043d\u0438\u0446\u0438\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>\u041d\u0438\u043a\u0442\u043e</i>";
1380
+if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName","\u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438\u0439");if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format("\u043a\u0430\u0436\u0434\u044b\u0435 {0} \u0441\u0435\u043a\u0443\u043d\u0434",ReadInt(q,4)));1==ReadInt(q,
1381
+0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("\u041f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0441\u0432\u044f\u0437\u044c",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f Intel® AMT.<br><br>";
1382
+if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.</i></div><br>";else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+=
1383
+"<br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 HTTP \u043f\u0440\u043e\u043a\u0441\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u043c\u0438 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f\u043c\u0438.<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,0==c.length)b+="<div style=padding-left:15px><br><i>\u041d\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u043f\u0440\u043e\u043a\u0441\u0438.</i></div><br>";
1384
+else for(d in c)b+="<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440...","AddRemoteAccessServer()"),a&&(d+=AddButton("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u043a\u0441\u0438 ...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+
1385
+TableEnd(AddRefreshButton("PullRemoteAccess()")+d);QH(58,b)}}var xxEditMpsPolicyType;
1386
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0438\u043d\u0438\u0446\u0438\u0438\u0440\u043e\u0432\u0430\u043d");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(\u041d\u0438\u043a\u0442\u043e)",e;
1387
+for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - \u0412\u043d\u0435\u0448\u043d\u0438\u0439<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?
1388
+" selected":"")+">CILA - \u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439</select><div>\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0442\u0438\u043f MPS</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";c+="<option value=-1>(\u041d\u0438\u043a\u0442\u043e)";for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":
1389
+"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>\u0412\u0442\u043e\u0440\u0438\u0447\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - \u0412\u043d\u0435\u0448\u043d\u0438\u0439<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA - \u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439</select><div>\u0412\u0442\u043e\u0440\u0438\u0447\u043d\u044b\u0439 \u0442\u0438\u043f MPS</div></div>")}e=
1390
+0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>\u0412\u0440\u0435\u043c\u044f \u0436\u0438\u0437\u043d\u0438 \u0442\u0443\u043d\u043d\u0435\u043b\u044f (\u0441\u0435\u043a\u0443\u043d\u0434\u044b)</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",
1391
+c+="<option value=0"+(0==a?" selected":"")+">\u041f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438\u0439, \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b<option value=1"+(1==a?" selected":"")+">\u0412\u0440\u0435\u043c\u044f \u0441\u0443\u0442\u043e\u043a, \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u0432 \u0434\u0435\u043d\u044c",c+="</select><div>\u0422\u0438\u043f \u0442\u0440\u0438\u0433\u0433\u0435\u0440\u0430</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+
1392
+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("{0} \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1393
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1394
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"\u0418\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f (\u0441\u0435\u043a\u0443\u043d\u0434\u044b)":"\u0412\u0440\u0435\u043c\u044f \u0441\u0443\u0442\u043e\u043a (\u0427\u0427: \u041c\u041c)"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<
1395
+Q("d2server1").value&&-1<Q("d2server2").value))}function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1396
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1397
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1398
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1399
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0434\u043e 5 \u0441\u0443\u0444\u0444\u0438\u043a\u0441\u043e\u0432 \u0434\u043e\u043c\u0435\u043d\u0430 \u0438\u043d\u0442\u0440\u0430\u0441\u0435\u0442\u0438. \u0415\u0441\u043b\u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0437\u0430 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u043c\u0438 \u044d\u0442\u0438\u0445 \u0434\u043e\u043c\u0435\u043d\u043e\u0432, \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u043e\u0440\u0442\u044b Intel® AMT \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u043a\u0440\u044b\u0442\u044b \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u043c\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0431\u0443\u0434\u0443\u0442 \u0430\u043a\u0442\u0438\u0432\u043d\u044b.<br><br>");
1400
+0==editEnvironmentDetectionTmp.length&&(c+="<i>\u0414\u043e\u043c\u0435\u043d\u044b \u0438\u043d\u0442\u0440\u0430\u0441\u0435\u0442\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442, \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u043e.</i><br>");for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+
1401
+AddButton2("\u0423\u0434\u0430\u043b\u0438\u0442\u044c","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");
1402
+1==b?QH(69,c):setDialogMode(11,"\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0435\u0439 \u0441\u0440\u0435\u0434\u044b",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}
1403
+function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1404
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0435\u0439 \u0441\u0440\u0435\u0434\u044b",format("\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440, \u0441\u0442\u0430\u0442\u0443\u0441 {0}",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0435\u0439 \u0441\u0440\u0435\u0434\u044b",
1405
+a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}
1406
+function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"\u0418\u043d\u0438\u0446\u0438\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c \u0442\u0443\u043d\u043d\u0435\u043b\u044c",3,editUserInitiatedCiraDlg,
1407
+b)}}function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1408
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("\u0418\u043c\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430",c.AccessInfo);c.Port&&(a+=addHtmlValue("\u043f\u043e\u0440\u0442",c.Port));c.CN&&(a+=addHtmlValue("\u0420\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u043e\u0435 \u0438\u043c\u044f",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,
1409
+0<c.indexOf("Username")?(a+=addHtmlValue("\u0422\u0438\u043f \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438","\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c & Pass / Server-Auth TLS"),a+=addHtmlValue("\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440",getInstance(xxMPSUserPass,c).RemoteID)):(a+=addHtmlValue("\u0422\u0438\u043f \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438",
1410
+"\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 / Mutual-Auth TLS"),c=getInstance(xxCertificates,c),a+=addHtmlValue("\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 #"+(b+1),c,showServerDetailsOk,a)}
1411
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1412
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}
1413
+function showServerDetailsOk2(b,c,a,d){408==d?messagebox("\u0423\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0435 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440, \u0434\u043e\u0441\u0442\u0443\u043f \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d."):PullRemoteAccess()}
1414
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1415
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("\u0418\u043c\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("DNS suffex",c.NetworkDnsSuffix),a=a+addHtmlValue("\u0422\u0438\u043f \u043f\u0440\u043e\u043a\u0441\u0438",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"HTTP \u043f\u0440\u043e\u043a\u0441\u0438 #"+(b+1),c,showProxyDetailsOk,a,b)}
1416
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}
1417
+function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 HTTP \u043f\u0440\u043e\u043a\u0441\u0438","\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c HTTP \u043f\u0440\u043e\u043a\u0441\u0438, \u0434\u043e\u0441\u0442\u0443\u043f \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d."):PullRemoteAccess()}
1418
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>\u0418\u043c\u044f \u0445\u043e\u0441\u0442\u0430 FQDN<option value=3>\u0410\u0434\u0440\u0435\u0441 IPv4<option value=4>\u0410\u0434\u0440\u0435\u0441 IPv6</select><div>\u0422\u0438\u043f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>\u043f\u043e\u0440\u0442</div></div>';b+=
1419
+"<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>DNS-\u0441\u0443\u0444\u0444\u0438\u043a\u0441</div></div>";setDialogMode(11,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c HTTP \u043f\u0440\u043e\u043a\u0441\u0438",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1420
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN / \u0438\u043c\u044f \u0445\u043e\u0441\u0442\u0430","\u0410\u0434\u0440\u0435\u0441 IPv4","\u0410\u0434\u0440\u0435\u0441 IPv6"][Q("d2type").value])}
1421
+function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}
1422
+function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u043a\u0441\u0438-\u0441\u0435\u0440\u0432\u0435\u0440","\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u043a\u0441\u0438, \u0441\u0442\u0430\u0442\u0443\u0441"+d):0!=a.Body.ReturnValue?messagebox("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u043a\u0441\u0438-\u0441\u0435\u0440\u0432\u0435\u0440",
1423
+a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1424
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>\u0418\u043c\u044f \u0445\u043e\u0441\u0442\u0430 FQDN<option value=3>\u0410\u0434\u0440\u0435\u0441 IPv4</select><div>\u0422\u0438\u043f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";a+=
1425
+'<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>\u041f\u043e\u0440\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430</div></div>';a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\u041e\u0431\u0449\u0435\u0435 \u0438\u043c\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430</div></div>";
1426
+a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";0<b.length&&(a+="<option value=1>\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442");a+="<option value=2>\u0418\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u041f\u0430\u0440\u043e\u043b\u044c</select><div>\u0422\u0438\u043f \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438</div></div>";a+="<span id=d2utype>";
1427
+a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f</div></div>";a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\u041d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u043f\u0430\u0440\u043e\u043b\u044c</div></div>";a+="</span>";a+="<span id=d2ctype>";a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";
1428
+for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442</div></div></span>";setDialogMode(11,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440",3,AddRemoteAccessServerOk,a);AddRemoteAccessServerUpdate()}
1429
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+Q("d2cert").value+
1430
+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1431
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u0441\u0435\u0440\u0432\u0435\u0440",format("\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440, \u0441\u0442\u0430\u0442\u0443\u0441 {0}",d)):0!=a.Body.ReturnValue?messagebox("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u0441\u0435\u0440\u0432\u0435\u0440",
1432
+a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1433
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"Hostname":"IPv4-\u0430\u0434\u0440\u0435\u0441");QV("d2utype",2==Q("d2auth").value);
1434
+QV("d2ucn",3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1435
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>\u0418\u043c\u044f \u0438 \u0434\u043e\u043c\u0435\u043d</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+
1436
+(b?"selected":"")+'>\u041e\u0431\u0449\u0438\u0439, \u0442\u0430\u043a\u043e\u0439 \u0436\u0435 \u043a\u0430\u043a \u041e\u0421<option value="false" '+(b?"":"selected")+">\u0412\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439, \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u041e\u0421</select><div>\u0420\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0438\u043c\u0435\u043d\u0438</div></div>");setDialogMode(11,"\u0418\u043c\u044f \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430",
1437
+3,editNameDlgOk,c)}}function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}
1438
+function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"\u0414\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0439 DNS-\u043a\u043b\u0438\u0435\u043d\u0442",3,showEditDnsDlgOk)}}
1439
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1440
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"Intel® AMT \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438",3,featuresDlgOk))}
1441
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("\u043e\u0448\u0438\u0431\u043a\u0430","RedirectionService, \u041e\u0448\u0438\u0431\u043a\u0430 RequestStateChange"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,
1442
+0,function(a,c,d,e){200!=e?messagebox("\u043e\u0448\u0438\u0431\u043a\u0430","KVMRedirectionSAP, \u041e\u0448\u0438\u0431\u043a\u0430 RequestStateChange"+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("\u043e\u0448\u0438\u0431\u043a\u0430","\u041e\u0448\u0438\u0431\u043a\u0430 PUT RedirectionService"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}
1443
+function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}
1444
+function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",3,consentDlgOk)}}
1445
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="\u0421\u0441\u044b\u043b\u043a\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441;\u0421\u0435\u0442\u0435\u0432\u043e\u0439 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441;\u0413\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441;\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d;\u041d\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043e;\u041f\u0430\u043f\u0430 \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435;\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439;\u0423\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0435\u0435;\u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 / \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0439;\u0438\u0441\u0442\u0435\u043a\u0448\u0438\u0439;\u0441\u0442\u043e\u043b\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0435;\u043d\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043e".split(";");
1446
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+","+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"IPv6-\u0430\u0434\u0440\u0435\u0441\u0430 \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430":"IPv6-\u0430\u0434\u0440\u0435\u0441\u0430 \u0434\u043b\u044f \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430",
1447
+1,null,a+TableEnd())}}
1448
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d");QH("d21l1","IPv6 \u0432\u043a\u043b\u044e\u0447\u0435\u043d, \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439");QH("d21l2",
1449
+"IPv6 \u0432\u043a\u043b\u044e\u0447\u0435\u043d, \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 + \u0440\u0443\u0447\u043d\u043e\u0439 \u0430\u0434\u0440\u0435\u0441");d21o0.checked=!c;d21o1.checked=c&&!ipv6manual;d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==
1450
+b?"\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 IPv6 \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430":"\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 IPv6 \u0434\u043b\u044f \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1451
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1452
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1453
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1454
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1455
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}
1456
+function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 IPv6",format("\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 IPv6, \u043e\u0448\u0438\u0431\u043a\u0430 {0}",d))}
1457
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"Intel® AMT Ping Response",3,showPingActionDlgOk)}}
1458
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1459
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c DHCP-\u0441\u0435\u0440\u0432\u0435\u0440\u0430");
1460
+QH("d21l2","\u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a IPv4 \u043d\u0438\u0436\u0435");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=!d21o1.checked;c30.value=isIpAddress(b.IPAddress,"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=
1461
+isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 IPv4",3,showIPSetupDlgOk)}}
1462
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6 \u0432\u043a\u043b\u044e\u0447\u0435\u043d, \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 + \u0440\u0443\u0447\u043d\u043e\u0439 \u0430\u0434\u0440\u0435\u0441"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==
1463
+Q("d21ipsync").checked))}
1464
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1465
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}
1466
+function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 IPv4",format("\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0441\u0435\u0442\u0438, \u043e\u0448\u0438\u0431\u043a\u0430 {0}",d))}amtPowerBootCapabilities=null;
1467
+function showPowerActionDlg(){xxdialogMode||(statusbox("\u0421\u0438\u043b\u043e\u0432\u044b\u0435 \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044f","\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 ..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1468
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435",2);b&1&&(addOption("d5actionSelect","\u0421\u0431\u0440\u043e\u0441",10),addOption("d5actionSelect","\u0421\u0438\u043b\u043e\u0432\u043e\u0439 \u0446\u0438\u043a\u043b",5),addOption("d5actionSelect","\u0412\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c",
1469
+8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect","\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0443",300),b&1&&addOption("d5actionSelect","\u0421\u0431\u0440\u043e\u0441 \u043a \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0435",301));9<amtversion&&b&1&&(addOption("d5actionSelect","OS Wake \u0438\u0437 \u0440\u0435\u0436\u0438\u043c\u0430 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f",
1470
+500),addOption("d5actionSelect","\u041e\u0421 \u044d\u043d\u0435\u0440\u0433\u043e\u0441\u0431\u0435\u0440\u0435\u0436\u0435\u043d\u0438\u044f",501),addOption("d5actionSelect","Soft-\u043e\u0444\u0444",12),addOption("d5actionSelect","\u041c\u044f\u0433\u043a\u0438\u0439 \u0441\u0431\u0440\u043e\u0441",14),addOption("d5actionSelect","\u0421\u043f\u0430\u0442\u044c",4),addOption("d5actionSelect","Hibernate",7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&addOption("d5actionSelect","\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 BIOS",
1471
+100),b&1&&addOption("d5actionSelect","\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0432 BIOS",101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0435 \u0441\u0442\u0438\u0440\u0430\u043d\u0438\u0435",104),b&1&&addOption("d5actionSelect","\u0421\u0431\u0440\u043e\u0441 \u0434\u043b\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e \u0441\u0442\u0438\u0440\u0430\u043d\u0438\u044f",
1472
+105));b&1&&addOption("d5actionSelect","\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u043d\u0430 IDE-R \u0434\u0438\u0441\u043a\u0435\u0442\u0443",200);b&2&&addOption("d5actionSelect","\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 IDE-R Floppy",201);b&1&&addOption("d5actionSelect","\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u043d\u0430 IDE-R CDROM",202);b&2&&addOption("d5actionSelect","\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 IDR-R CDROM",203);b&1&&addOption("d5actionSelect",
1473
+"\u0421\u0431\u0440\u043e\u0441 \u043a PXE",400);b&2&&addOption("d5actionSelect","\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435 PXE",401);addOption("d5actionSelect","\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 ...",999);5<amtversion&&addOption("d5actionSelect","\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f ...",998);setDialogMode(5,
1474
+"\u0421\u0438\u043b\u043e\u0432\u044b\u0435 \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044f",3,powerActionDlgCheck)}else messagebox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",format("\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u043e\u0448\u0438\u0431\u043a\u0430 {0}",d))}
1475
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"\u0421\u0438\u043b\u043e\u0432\u043e\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e."):QH(66,format("\u041e\u0448\u0438\u0431\u043a\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043f\u0438\u0442\u0430\u043d\u0438\u044f # {0}.",
1476
+e));setDialogMode(1,"\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 Intel® Remote Secure Erase?<br>\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e \u0441\u0442\u0438\u0440\u0430\u043d\u0438\u044f, \u0435\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>\u043f\u0430\u0440\u043e\u043b\u044c</div></div><br><div style=color:red><b> \u041f\u0420\u0415\u0414\u0423\u041f\u0420\u0415\u0416\u0414\u0415\u041d\u0418\u0415. </ b> \u042d\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043a \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044e \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435.</div>",
1477
+rsepass=1,setDialogMode(11,"\u0421\u0438\u043b\u043e\u0432\u044b\u0435 \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044f",3,powerActionDlg,b)):powerActionDlg()}
1478
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ...");null!=rsepass&&1===rsepass&&
1479
+(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&(c=!1);c?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1480
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1481
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1482
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"Custom Power Action",
1483
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1484
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"\u0421\u0438\u043b\u043e\u0432\u043e\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e."):QH(66,format("\u041e\u0448\u0438\u0431\u043a\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043f\u0438\u0442\u0430\u043d\u0438\u044f # {0}.",e));setDialogMode(1,
1485
+"\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=Q("d24BiosSecureBoot").checked,AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,
1486
+AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=Q("d24LockSleepButton").checked,AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=
1487
+Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),statusbox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ..."),amtstack.Get("IPS_OptInService",powerActionResponse0,0,1))}
1488
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",format("\u041e\u0448\u0438\u0431\u043a\u0430 \u2116 {0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",11,powerActionSendConsent),
1489
+checkConsentDisplay(),consentChanged()):(statusbox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u041d\u0430\u0447\u0430\u043b\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438 ..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,0,1)):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",
1490
+"\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f."):(statusbox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1491
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",format("\u041e\u0448\u0438\u0431\u043a\u0430 #",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("\u041e\u0448\u0438\u0431\u043a\u0430 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",a.Body.ReturnValueStr.replace(/_/g,
1492
+" ")):(d6ConsentText.value="",setDialogMode(6,"\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",11,powerActionSendConsent),checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",function(a,b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<
1493
+amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1494
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f ..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1495
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",format("\u041e\u0448\u0438\u0431\u043a\u0430 \u2116 {0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f","\u0421\u043e\u0433\u043b\u0430\u0441\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0443\u0441\u043f\u0435\u0448\u043d\u043e."):
1496
+(statusbox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1497
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",format("\u041e\u0448\u0438\u0431\u043a\u0430 \u2116 {0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=
1498
+AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=AvdPowerDlg.IDERBootDevice,e.LockKeyboard=AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&
1499
+1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&(e.RSEPassword=AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&
1500
+(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,!0===e.SecureErase&&0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438: "+
1501
+b);console.log("\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438: "+ObjectToString2(e));statusbox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 ...");amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,
1502
+function(a,b,c,d){200!=d?messagebox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1503
+function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",format("PUT AMT_BootSettingData, \u041e\u0448\u0438\u0431\u043a\u0430 \u2116 {0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 ..."),
1504
+amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1505
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1506
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1507
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0441\u0438\u043b\u043e\u0432\u043e\u0433\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f ...");b=d5actionSelect.value;
1508
+if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);targetPowerAction=b;11==b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b","\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e.")}}
1509
+function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"\u0421\u0438\u043b\u043e\u0432\u043e\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e."),setDialogMode(1,"\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441\u0438\u043b\u044b",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}
1510
+function consentChanged(){QE("c49",6==d6ConsentText.value.length)}function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1511
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1512
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1513
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1514
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043c Intel® AMT \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430.<br><br>";
1515
+var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+" / "+r):e+"\u043a\u043e\u0440\u0435\u043d\u044c";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("\u0421\u043a\u0430\u0447\u0430\u0442\u044c","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+
1516
+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" \u0431\u0430\u0439\u0442\u043e\u0432</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==n&&(wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+=
1517
+"<div style=padding-left:15px><br><i>\u0424\u0430\u0439\u043b\u044b \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+(q?AddButton("\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c ...","UploadToStorage()"):""));QH(61,a)}else QH(61,"\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 ...<br/>"+
1518
+AddButton("\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435","PullStorage()"))}
1519
+function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("\u043f\u0440\u043e\u0434\u0430\u0432\u0435\u0446",b));""!=c&&(e+=addHtmlValue("\u0437\u0430\u044f\u0432\u043a\u0430",c));e+=addHtmlValue("\u0438\u043c\u044f",a);e+=addHtmlValue("\u0420\u0430\u0437\u043c\u0435\u0440",q.size+" bytes");q.link&&(e+=addHtmlValue("\u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0441\u0430\u0439\u0442",q.link));setDialogMode(11,"\u042d\u043b\u0435\u043c\u0435\u043d\u0442 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f",
1520
+5,showStorageDetailsEx,e,d)}}function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}
1521
+function storageDeleteResponse(b,c){200!=c?messagebox("\u041c\u0435\u0441\u0442\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f",format("\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0444\u0430\u0439\u043b (ERR {0}), \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u0432\u043a\u043b\u044e\u0447\u0435\u043d.",c)):PullStorage()}
1522
+function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}
1523
+function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}
1524
+function PushToStorageResponse(b,c,a){200!=c?messagebox("\u041c\u0435\u0441\u0442\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f",format("\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0444\u0430\u0439\u043b (ERR {0}), \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u0432\u043a\u043b\u044e\u0447\u0435\u043d.",c)):null!=a?PushToStorage(a[0],a[1],
1525
+!0):PullStorage()}
1526
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0438 \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430, \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430.<br>";a=
1527
+(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0444\u0430\u0439\u043b</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+'<br><div style=height:16px><input id=mstoragevendor placeholder="\u043f\u0440\u043e\u0434\u0430\u0432\u0435\u0446" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430</div></div>';
1528
+a+='<br><div style=height:16px><input id=mstorageapplication placeholder="\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>\u0418\u043c\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f</div></div>';a+='<br><div style=height:16px><input id=mstoragefilename placeholder="\u0418\u043c\u044f \u0444\u0430\u0439\u043b\u0430" maxlength=11 style=float:right;width:240px><div>\u0418\u043c\u044f \u0444\u0430\u0439\u043b\u0430</div></div>';
1529
+a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>MIME \u0422\u0438\u043f</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="\u0415\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e, \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u044d\u0442\u043e\u0442 \u043a\u043e\u043d\u0442\u0435\u043d\u0442 \u0441 \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b.">\u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0441\u0430\u0439\u0442</div></div><br>';
1530
+a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';a+="</datalist>";a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430",
1531
+3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1532
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1533
+b}
1534
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1535
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1536
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," \u0434\u043d\u0435\u0439").replace("H"," \u0447\u0430\u0441\u043e\u0432").replace("M"," \u043c\u0438\u043d\u0443\u0442");b=b.replace(" 1 \u0434\u043d\u0435\u0439"," 1 \u0434\u0435\u043d\u044c").replace(" 1 \u0447\u0430\u0441"," 1 \u0447\u0430\u0441").replace(" 1 \u043c\u0438\u043d\u0443\u0442\u0430"," 1 \u043c\u0438\u043d\u0443\u0442\u0430");return b.substring(0,b.length-1)}
1537
+function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1538
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a\u043e\u043c.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, \u043f\u0440\u043e\u0441\u043d\u0443\u0442\u044c\u0441\u044f "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", ",
1539
+" \u0432"),void 0!=d[c].Interval&&(a+=" \u0438 \u043a\u0430\u0436\u0434\u044b\u0439"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&(a+="\u0443\u0434\u0430\u043b\u0438\u0442\u0435 \u043a\u043e\u0433\u0434\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u0435"),b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c...",'showAddAlarm(" + i + ")')),
1540
+b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>\u041d\u0435\u0442 \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a\u0430 \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043e.</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0435 \u0442\u0440\u0435\u0432\u043e\u0433\u0438",
1541
+"RemoveAllAlarms()")+AddButton("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c","showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1542
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1543
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0435 \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a\u0438",3,RemoveAllAlarmsEx,"\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a\u043e\u0432?")}
1544
+function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1545
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1546
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1547
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}
1548
+function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1549
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1550
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a",format("\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a. \u0421\u0442\u0430\u0442\u0443\u0441: {0}. <br/> \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0435\u0435.",
1551
+d)):0!=c.Body.ReturnValue?messagebox("\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a",format("\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b \u0442\u0440\u0435\u0432\u043e\u0433\u0438 {0}. <br/> \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0441\u0438\u0433\u043d\u0430\u043b \u0442\u0440\u0435\u0432\u043e\u0433\u0438 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u0431\u0443\u0434\u0443\u0449\u0435\u043c\u0443 \u0432\u0440\u0435\u043c\u0435\u043d\u0438.",
1552
+c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",
1553
+d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1554
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("\u0438\u043c\u044f",c.ElementName)+addHtmlValue("\u0412\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("\u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("\u041f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f",
1555
+1==c.DeleteOnCompletion?"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0431\u0443\u0434\u0438\u043b\u044c\u043d\u0438\u043a":"\u0414\u0435\u0440\u0436\u0430\u0442\u044c \u0442\u0440\u0435\u0432\u043e\u0433\u0443")+"</div>";messagebox(format("\u0422\u0440\u0435\u0432\u043e\u0433\u0430 {0}",c.ElementName),a);setDialogMode(11,"\u0410\u0432\u0430\u0440\u0438\u0439\u043d\u0430\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f"+c.ElementName,5,showAlertDetailsDelete,a,b)}}
1556
+function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1557
+function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1558
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1559
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442",
1560
+"\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0441\u043a\u0440\u0438\u043f\u0442\u0430.")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1561
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1562
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1563
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1564
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1565
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}
1566
+function script_feditblock(b){xxdialogMode||setDialogMode(11,format("\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c {0}",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1567
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1568
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1569
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1570
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1571
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1572
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1573
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1574
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1575
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1576
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1577
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1578
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1579
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1580
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1581
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1582
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1583
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1584
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"\u0411\u0438\u043d\u0430\u0440\u043d\u044b\u0439 \u0444\u0430\u0439\u043b,"+script_BlockScript[c].vars[d].value.length+" \u0431\u0430\u0439\u0442\u043e\u0432":"\u041d\u0435 \u0437\u0430\u0434\u0430\u043d\u043e");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+
1585
+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+="<tr><td style=height:3px></table>"}b+="</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u0432\u0430\u0448 \u0441\u043a\u0440\u0438\u043f\u0442, \u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u044f \u0431\u043b\u043e\u043a\u0438 \u0441 \u043b\u0435\u0432\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0432 \u044d\u0442\u043e \u043f\u043e\u043b\u0435 \u0434\u043b\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432.<div>');
1586
+QH("scriptblocks",b+"<div style=height:80px></div>");for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1587
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1588
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}
1589
+function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"\u041d\u043e\u0432\u044b\u0439 \u0441\u043a\u0440\u0438\u043f\u0442",3,script_newScriptDlgOk,"<br>\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0438 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432?")}
1590
+function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1591
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("\u041e\u0448\u0438\u0431\u043a\u0430 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u0430",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0441\u044f");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&
1592
+(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,_mode:"Firmware"}),editscriptstate.wsstack=wsstack,editscriptstate.amtstack=amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}
1593
+function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0441\u044f","\u0411\u0435\u0433","\u041f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e"];
1594
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e, \u0431\u0435\u0437 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f";b&&null!=b&&
1595
+(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,b.ip)));50<c.length&&(c=c.substring(0,50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1596
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"\u0411\u043b\u043e\u043a \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1597
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1598
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1599
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1600
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1601
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1602
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1603
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}
1604
+var httpErrorTable={200:"\u0425\u043e\u0440\u043e\u0448\u043e",401:"\u041e\u0448\u0438\u0431\u043a\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438",408:"\u041e\u0448\u0438\u0431\u043a\u0430 \u0442\u0430\u0439\u043c-\u0430\u0443\u0442\u0430",601:"\u041e\u0448\u0438\u0431\u043a\u0430 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430 WSMAN",602:"\u041d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u043e\u0442\u0432\u0435\u0442\u0430 HTTP",
1605
+603:"\u041d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u044b\u0439 HTTP-\u043e\u0442\u0432\u0435\u0442 enum",604:"\u041d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u044b\u0439 HTTP-\u043e\u0442\u0432\u0435\u0442",997:"\u041d\u0435\u0432\u0435\u0440\u043d\u043e\u0435 \u0426\u0430\u0440\u0441\u0442\u0432\u043e \u0414\u0430\u0439\u0434\u0436\u0435\u0441\u0442\u0430"};
1606
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("\u041e\u0448\u0438\u0431\u043a\u0430 \u2116 {0}",b)),401==b&&QH(5,'\u041e\u0448\u0438\u0431\u043a\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),
1607
+go(100),QS(3).width=0);return 200!=b}function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}
1608
+function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1609
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1610
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1611
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("\u041e\u0448\u0438\u0431\u043a\u0430 \u0432\u044b\u0437\u043e\u0432\u0430",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}
1612
+function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}
1613
+function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}
1614
+function AddRefreshButton(b){return'<input type=button name=refreshbtn value="\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}
1615
+function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}
1616
+function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}
1617
+function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1618
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1619
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1620
+</script>
\ No newline at end of file
public/commander-zh-chs.htm
new
+1479
@@ -0,0 +1,1479 @@
1
+<!DOCTYPE html><html lang="zh-chs" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()" oncontextmenu=handleContextMenu(event)><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=连接 onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>断线</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>系统状况</a><p id=go14 class=nav1 onclick=go(14)><a>远程桌面</a><p id=go24 class=nav1 onclick=go(24)> <a>档案</a><p id=go13 class=nav1 onclick=go(13)><a>局域网串行</a><p id=go2 class=nav1 onclick=go(2)><a>硬件资讯</a><p id=go6 class=nav1 onclick=go(6)><a>事件簿</a><p id=go15 class=nav1 onclick=go(15)><a>审核日志</a><p id=go21 class=nav1 onclick=go(21)><a>存储</a><p id=go8 class=nav1 onclick=go(8)><a>网络设置</a><p id=go17 class=nav1 onclick=go(17)><a>网际网路设定</a><p id=go16 class=nav1 onclick=go(16)><a>安全设定</a><p id=go19 class=nav1 onclick=go(19)><a>代理人在场</a><p id=go18 class=nav1 onclick=go(18)><a>系统防御</a><p id=go11 class=nav1 onclick=go(11)><a>用户帐号</a><p id=go22 class=nav1 onclick=go(22)><a>订阅内容</a><p id=go23 class=nav1 onclick=go(23)><a>唤醒警报</a><p id=go20 class=nav1 onclick=go(20)><a>脚本编辑器</a><p id=go12 class=nav1 onclick=go(12)><a>WSMAN浏览器</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value=磁盘映射 onclick=iderToggleDiskMap()><input type=button value=停止IDE-R会话 onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>软盘块为512字节。</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CDROM,块为2048字节。</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value=停止脚本 onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>运行脚本</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>此计算机的固件应更新, <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>请在这里检查</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>载入中...</h1></div><div id=p1 style=display:none><h1>系统状况</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>硬件资讯</h1><span id=18></span></div><div id=p6 style=display:none><h1>事件簿</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>网络设置</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>用户帐号</h1><span id=23></span></div><div id=p12 style=display:none><h1>WSMAN浏览器</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tbody><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=询问 style=margin:4px onclick=wsmanQuery()><input type=button value=明确 style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=过滤 style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>局域网串行终端</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>英特尔®AMT重定向端口或LAN上串行功能已禁用<span id=28>,请点击此处启用它。</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>远程计算机未打开电源,请单击此处以发出电源命令。</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=电源动作... onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=依德 title="开始远程磁盘安装操作" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=开始捕捉 title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=连接 onclick=connectTerminal(event) disabled="disabled"> <span id=31>断开连接。</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="CR +低频" title="切换返回键将发送的内容" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="切换终端尺寸" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="英特尔(F10 = ESC + [OM)" title="切换F1至F10键仿真类型" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value=扩展的ASCII title="切换终端仿真类型" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=退出 onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=退格键 onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=糊 disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>远程桌面</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>英特尔®AMT重定向端口或KVM功能已禁用<span id=43>,请点击此处启用它。</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>远程计算机未打开电源,请单击此处以发出电源命令。</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tbody><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="向左旋转" onclick=drotate(-1)>↺</div><div class=rb title="右旋" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="切换全屏模式" onkeypress="return false" onkeydown="return false" value=充分 onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="保存远程桌面的屏幕截图" onkeypress="return false" onkeydown="return false" value=救... onclick=deskSaveImage() style=margin-right:3px><input type=button value=设定... title="编辑远程桌面设置" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=依德 title="开始远程磁盘安装操作" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="更改远程机器的电源状态" onkeypress="return false" onkeydown="return false" value=电源动作... onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=连接 onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>断开连接。</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>赢得<option value=1>胜负<option value=2>赢+<option value=3>赢+ L<option value=4>Win + M<option value=20>Win + R<option value=23>赢+左<option value=24>赢+右<option value=5>Shift + Win + M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=发送 onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=类型 onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>黑屏 </span><span id=53><input id=54 type=checkbox>只读 </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>审核日志</h1><span id=56></span></div><div id=p16 style=display:none><h1>安全设定</h1><span id=57></span></div><div id=p17 style=display:none><h1>网际网路设定</h1><span id=58></span></div><div id=p18 style=display:none><h1>系统防御</h1><span id=59></span></div><div id=p19 style=display:none><h1>代理人在场</h1><span id=60></span></div><div id=p20 style=display:none><h1>脚本编辑器</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>已停止</div><div><input type=button value=视图编辑器 title="切换到脚本行编辑器视图" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value=视图生成器 title="切换到块编辑器视图" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=新... title="清除脚本编辑器" onclick=script_newScriptDlg()><input type=button value=加载... title="从文件加载脚本" onclick=script_runScriptDlg()><input type=button value=救... title="将脚本保存到文件" onclick=script_saveScript(event)><input type=button value=重新开始 title="编译脚本并准备从头开始运行它" onclick=resetScriptButton()><input type=button value=继续 title="从当前执行点运行脚本" onclick=runScriptButton()><input type=button value=打破 title="暂停执行脚本" onclick=breakScriptButton()><input type=button value=步 title="执行脚本的一步" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>脚本制作器</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder=过滤块... onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>脚本</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>编译脚本</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>变数</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>安慰</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>存储</h1><span id=61></span></div><div id=p22 style=display:none><h1>活动订阅</h1><span id=62></span></div><div id=p23 style=display:none><h1>唤醒警报</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>档案</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tbody><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=上> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value=全选 onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=改名 onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=删除 onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value=新建文件夹 onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=上载 onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=切 onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=复制 onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=糊 onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=刷新 onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">按名称分类<option value=2>按大小排序<option value=3>按日期排序<option value=4>按名称降序<option value=5>按大小下降<option value=6>按日期降序</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tbody><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>用户名</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>密码*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>确认密码</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>本地<option value=1>网络<option value=2>任何</select><div>允许</div></div><div>授予的权限</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>*至少8个字符,大写,小写,0-9和!@#$%^&*()+-之一</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>权力行动</div></div><div><span style=color:red>警告:</span>某些电源操作可能会导致数据丢失,并可能断开桌面,终端或磁盘重定向会话。</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>同意码</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>主要展示<option value=1>辅助显示<option id=d6ThirdDisplay value=2 style=display:none>第三显示</select><div>同意显示</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16,颜色<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>图像编码</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>显示本地鼠标光标</label><br><label><input type=checkbox id=d7showcad>显示Ctrl-Alt-Del</label><br><label><input type=checkbox id=d7limitFrameRate>极限帧率</label><br><label><input type=checkbox id=d7noMouseRotate>不要旋转鼠标</label><br></div><div>其他设定</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">软件KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>质量</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87.5%<option value=768>75%<option value=640>62.5%<option value=512>50%<option value=384>37.5%<option value=256>25%<option value=128>12.5%</select><div style=height:20px>缩放比例</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=管理员 style=float:right;width:220px><div style=height:20px>用户名</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>密码</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>重定向端口</label><label id=c15 style=display:block><input type=checkbox id=c16>KVM远程桌面</label><label style=display:block><input type=checkbox id=c17>IDE重定向<br></label><label style=display:block><input type=checkbox id=c18>局域网串行<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>不需要<br></label><label><input type=radio name=d10 id=c20 value=1>仅KVM需要<br></label><label><input type=radio name=d10 id=c21 value=4294967295>始终需要<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="最多32个字符"><div title="最多32个字符">个人资料名称</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="最多32个字符"><div title="最多32个字符">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>优先</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>认证方式</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>认证协议<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>没有</select><div>加密</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="长度介于8到63个字符之间"><div title="长度介于8到63个字符之间">密码*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="长度介于8到63个字符之间"><div title="长度介于8到63个字符之间">确认密码</div></div></div><div id=dialog19 style=margin:auto;margin:3px>这会将此计算机的英特尔®AMT的整个状态保存到文件中。密码将不会保存,但可能会包含一些敏感数据。<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>残障人士<br><input type=radio name=d20 id=d20b value=1>ICMP回应<br><input type=radio name=d20 id=d20c value=2>RMCP响应<br><input type=radio name=d20 id=d20d value=3>ICMP和RMCP响应<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>操作系统IP地址同步</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>IP地址</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>子网标记</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>网关</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>主DNS</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>备用DNS</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>残障人士<option value=1>禁用,DHCP更新<option value=2>已启用</select><div>动态DNS客户端</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>更新间隔(分钟)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL(秒)</div></div><div style=font-size:10px><br>默认间隔时间是1440分钟,默认TTL是900秒。</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>充电<option value=10>重启<option value=5>电源周期<option value=8>掉电<option id=d24p500 value=500>操作系统从待机状态唤醒<option id=d24p501 value=501>操作系统省电<option value=999>设置启动选项</select><div>远程命令</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>BIOS暂停</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>强制执行安全启动</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>BIOS设置</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>强制进度事件</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>锁定电源按钮</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>锁定重置按钮</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>锁定睡眠按钮</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>锁键盘</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>BIOS密码绕过</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>重新刷新BIOS</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>安全模式</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>使用IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>局域网串行</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>英特尔®远程安全擦除</label><br></div></div><div>开机设定</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>没有<option id=ForceDVDBootOption value=1>强制启动CD / DVD<option id=ForcePXEBootOption value=2>强制PXE引导<option id=ForceHDBootOption value=3>强制硬盘启动<option id=ForceDiagBootOption value=4>强制诊断启动</select><div>引导源</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>没有<option value=1>索引1<option value=2>索引2<option value=3>索引3<option value=3>索引4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>引导到软盘<option value=1>引导至CDROM</select><div>IDER引导设备</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>系统默认<option id=c45 value=1>安静<option id=c46 value=2>详细<option id=c47 value=3>黑屏</select><div>详细性</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>RSE密码</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>报警名称</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>唤醒日期(年月日)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>唤醒时间(小时:分钟:秒)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>间隔(天-小时-分钟)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>保持警惕<option value=1>完成时删除</select></div><div style=padding-top:4px>醒后</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=取消 style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=好 style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=删除 style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
+$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
+$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
+$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
5
+$jscomp.inherits=function(b,c){function a(){}a.prototype=c.prototype;b.prototype=new a;b.prototype.constructor=b;for(var d in c)if($jscomp.global.Object.defineProperties){var e=$jscomp.global.Object.getOwnPropertyDescriptor(c,d);void 0!==e&&$jscomp.global.Object.defineProperty(b,d,e)}else b[d]=c[d]};String.prototype.startsWith||(String.prototype.startsWith=function(b){return 0===this.lastIndexOf(b,0)});
6
+String.prototype.endsWith||(String.prototype.endsWith=function(b){return-1!==this.indexOf(b,this.length-b.length)});function Q(b){return document.getElementById(b)}function QS(b){try{return Q(b).style}catch(c){}}function QE(b,c){try{Q(b).disabled=!c}catch(a){}}function QV(b,c){try{QS(b).display=c?"":"none"}catch(a){}}function QA(b,c){Q(b).innerHTML+=c}function QH(b,c){Q(b).innerHTML=c}function inputBoxFocus(b){Q(b).focus();var c=Q(b).value;Q(b).value="";Q(b).value=c}
7
+function ReadShort(b,c){return(b.charCodeAt(c)<<8)+b.charCodeAt(c+1)}function ReadShortX(b,c){return(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}function ReadInt(b,c){return 16777216*b.charCodeAt(c)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadSInt(b,c){return(b.charCodeAt(c)<<24)+(b.charCodeAt(c+1)<<16)+(b.charCodeAt(c+2)<<8)+b.charCodeAt(c+3)}function ReadIntX(b,c){return 16777216*b.charCodeAt(c+3)+(b.charCodeAt(c+2)<<16)+(b.charCodeAt(c+1)<<8)+b.charCodeAt(c)}
8
+function ShortToStr(b){return String.fromCharCode(b>>8&255,b&255)}function ShortToStrX(b){return String.fromCharCode(b&255,b>>8&255)}function IntToStr(b){return String.fromCharCode(b>>24&255,b>>16&255,b>>8&255,b&255)}function IntToStrX(b){return String.fromCharCode(b&255,b>>8&255,b>>16&255,b>>24&255)}function MakeToArray(b){return b&&null!=b&&"object"!=typeof b?[b]:b}function SplitArray(b){return b.split(",")}function Clone(b){return JSON.parse(JSON.stringify(b))}
9
+function EscapeHtml(b){if("string"==typeof b)return b.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,""").replace(/'/g,"'");if("boolean"==typeof b||"number"==typeof b)return b}function NoBreak(b){return b.split(" ").join(" ")}function ArrayElementMove(b,c,a){b.splice(a,0,b.splice(c,1)[0])}
10
+function ObjectToStringEx(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="<br />"+gap(c)+"Item #"+d+": "+ObjectToStringEx(b[d],c+1);else if(b instanceof Object)for(d in b)a+="<br />"+gap(c)+d+" = "+ObjectToStringEx(b[d],c+1);else a+=EscapeHtml(b);return a}
11
+function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";if(b instanceof Array)for(var d in b)a+="\r\n"+gap2(c)+"Item #"+d+": "+ObjectToStringEx2(b[d],c+1);else if(b instanceof Object)for(d in b)a+="\r\n"+gap2(c)+d+" = "+ObjectToStringEx2(b[d],c+1);else a+=EscapeHtml(b);return a}function gap(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function gap2(b){for(var c="",a=0;a<4*b;a++)c+=" ";return c}function ObjectToString(b){return ObjectToStringEx(b,0)}
12
+function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
+function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
+function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
+135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
+!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
+ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
+c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
+d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
+b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
+case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
+c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
+function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
+0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"Invalid Data":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",
92
+v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"Agent watchdog "+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... changed to "+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"Case intrusion";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"A remote Serial Over LAN session was established.";if(1==c[2])return"Remote Serial Over LAN session finished. User control was restored.";
93
+if(2==c[2])return"A remote IDE-Redirection session was established.";if(3==c[2])return"Remote IDE-Redirection session finished. User control was restored."}if(36==a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="wired"),4294967293==a?"All received packet filter was matched on "+b+" interface.":4294967292==a?"All outbound packet filter was matched on "+b+" interface.":4294967290==a?"Spoofed packet filter was matched on "+b+" interface.":"Filter "+a+" was matched on "+b+" interface.";
94
+if(192==a)return 0==c[2]?"Security policy invoked. Some or all network traffic (TX) was stopped.":2==c[2]?"Security policy invoked. Some or all network traffic (RX) was stopped.":"Security policy invoked.";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"User request for remote connection.";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"EAC error: attempt to get posture while NAC in Intel\ufffd AMT is disabled.";if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"HWA Error: general error"}return 6==
95
+a?"Authentication failed "+(c[1]+(c[2]<<8))+" times. The system may be under attack.":30==a?"No bootable media":32==a?"Operating system lockup or power interrupt":35==a?"System boot failure":37==a?"System firmware started (at least one CPU is properly executing).":"Unknown Sensor Type #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+
96
+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>Local</i>",g=5);3==b.InitiatorType&&(b.Initiator=
97
+"<i>KVM Default Port</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/",
98
+"http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,
99
+b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,
100
+z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,
101
+y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=
102
+l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
103
+null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
104
+null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
105
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
106
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
107
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
108
+"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
109
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
110
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
111
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
112
+{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
113
+"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
114
+function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
115
+PostureHashAlgorithm:b},c)};l.AMT_EnvironmentDetectionSettingData_SetSystemDefensePolicy=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","SetSystemDefensePolicy",{Policy:a},b)};l.AMT_EnvironmentDetectionSettingData_EnableVpnRouting=function(a,b){l.Exec("AMT_EnvironmentDetectionSettingData","EnableVpnRouting",{Enable:a},b)};l.AMT_EthernetPortSettings_SetLinkPreference=function(a,b,c){l.Exec("AMT_EthernetPortSettings","SetLinkPreference",{LinkPreference:a,Timeout:b},c)};l.AMT_GeneralSettings_AMTAuthenticate=
116
+function(a,b){l.Exec("AMT_GeneralSettings","AMTAuthenticate",{MC_Nonce:a},b)};l.AMT_HeuristicPacketFilterStatistics_ResetSelectedStats=function(a,b){l.Exec("AMT_HeuristicPacketFilterStatistics","ResetSelectedStats",{SelectedStatistics:a},b)};l.AMT_KerberosSettingData_GetCredentialCacheState=function(a){l.Exec("AMT_KerberosSettingData","GetCredentialCacheState",{},a)};l.AMT_KerberosSettingData_SetCredentialCacheState=function(a,b){l.Exec("AMT_KerberosSettingData","SetCredentialCacheState",{Enable:a},
117
+b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","CancelIteration",{IterationIdentifier:a},b)};l.AMT_MessageLog_RequestStateChange=function(a,b,c){l.Exec("AMT_MessageLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_MessageLog_ClearLog=function(a){l.Exec("AMT_MessageLog","ClearLog",{},a)};l.AMT_MessageLog_GetRecords=function(a,b,c,d){l.Exec("AMT_MessageLog","GetRecords",{IterationIdentifier:a,MaxReadRecords:b},c,d)};l.AMT_MessageLog_GetRecord=function(a,
118
+b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
119
+"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
120
+function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
121
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
122
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
123
+"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
124
+l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
125
+"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
126
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
127
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
128
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
129
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
130
+c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
131
+c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
132
+{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
133
+b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
134
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
135
+"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
136
+{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
137
+{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
138
+{},a)};l.CIM_RecordLog_RequestStateChange=function(a,b,c){l.Exec("CIM_RecordLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RedirectionService_RequestStateChange=function(a,b,c){l.Exec("CIM_RedirectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Sensor_SetPowerState=function(a,b,c){l.Exec("CIM_Sensor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Sensor_Reset=function(a){l.Exec("CIM_Sensor","Reset",{},a)};l.CIM_Sensor_EnableDevice=function(a,
139
+b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=function(a,b){l.Exec("CIM_Sensor","OnlineDevice",{Online:a},b)};l.CIM_Sensor_QuiesceDevice=function(a,b){l.Exec("CIM_Sensor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Sensor_SaveProperties=function(a){l.Exec("CIM_Sensor","SaveProperties",{},a)};l.CIM_Sensor_RestoreProperties=function(a){l.Exec("CIM_Sensor","RestoreProperties",{},a)};l.CIM_Sensor_RequestStateChange=function(a,b,c){l.Exec("CIM_Sensor","RequestStateChange",{RequestedState:a,
140
+TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
141
+b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
142
+c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
143
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
144
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
145
+DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
146
+"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
147
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
148
+TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
149
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
150
+11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
151
+32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
152
+2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
153
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="Unspecified.;No system memory is physically installed in the system.;No usable system memory, all installed memory has experienced an unrecoverable failure.;Unrecoverable hard-disk/ATAPI/IDE device failure.;Unrecoverable system-board failure.;Unrecoverable diskette subsystem failure.;Unrecoverable hard-disk controller failure.;Unrecoverable PS/2 or USB keyboard failure.;Removable boot media not found.;Unrecoverable video controller failure.;No video device detected.;Firmware (BIOS) ROM corruption detected.;CPU voltage mismatch (processors that share same supply have mismatched voltage requirements);CPU speed matching failure".split(";"),
154
+h="Unspecified.;Memory initialization.;Starting hard-disk initialization and test;Secondary processor(s) initialization;User authentication;User-initiated system setup;USB resource configuration;PCI resource configuration;Option ROM initialization;Video initialization;Cache initialization;SM Bus initialization;Keyboard controller initialization;Embedded controller/management controller initialization;Docking station attachment;Enabling docking station;Docking station ejection;Disabling docking station;Calling operating system wake-up vector;Starting operating system boot process;Baseboard or motherboard initialization;reserved;Floppy initialization;Keyboard test;Pointing device test;Primary processor initialization".split(";"),
155
+g="Unspecified;Other;Unknown;Processor;Disk;Peripheral;System management module;System board;Memory module;Processor module;Power supply;Add in card;Front panel board;Back panel board;Power system board;Drive backplane;System internal expansion board;Other system board;Processor board;Power unit;Power module;Power management board;Chassis back panel board;System chassis;Sub chassis;Other chassis board;Disk drive bay;Peripheral bay;Device bay;Fan cooling;Cooling unit;Cable interconnect;Memory device;System management software;BIOS;Intel(r) ME;System bus;Group;Intel(r) ME;External environment;Battery;Processing blade;Connectivity switch;Processor/memory module;I/O module;Processor I/O module;Management controller firmware;IPMI channel;PCI bus;PCI express bus;SCSI bus;SATA/SAS bus;Processor front side bus".split(";");
156
+l.RealmNames=";;Redirection;;Hardware Asset;Remote Control;Storage;Event Manager;Storage Admin;Agent Presence Local;Agent Presence Remote;Circuit Breaker;Network Time;General Information;Firmware Update;EIT;LocalUN;Endpoint Access Control;Endpoint Access Control Admin;Event Log Reader;Audit Log;ACL Realm;;;Local System".split(";");l.WatchdogCurrentStates={1:"Not Started",2:"Stopped",4:"Running",8:"Expired",16:"Suspended"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),
157
+F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),D={1:"",2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"Security Admin",17:"RCO",18:"Redirection Manager",19:"Firmware Update Manager",20:"Security Audit Log",21:"Network Time",22:"Network Administration",23:"Storage Administration",24:"Event Manager",25:"Circuit Breaker Manager",
158
+26:"Agent Presence Manager",27:"Wireless Configuration",28:"EAC",29:"KVM",30:"User Opt-In Events",32:"Screen Blanking",33:"Watchdog Events",1600:"Provisioning Started",1601:"Provisioning Completed",1602:"ACL Entry Added",1603:"ACL Entry Modified",1604:"ACL Entry Removed",1605:"ACL Access with Invalid Credentials",1606:"ACL Entry State",1607:"TLS State Changed",1608:"TLS Server Certificate Set",1609:"TLS Server Certificate Remove",1610:"TLS Trusted Root Certificate Added",1611:"TLS Trusted Root Certificate Removed",
159
+1612:"TLS Preshared Key Set",1613:"Kerberos Settings Modified",1614:"Kerberos Main Key Modified",1615:"Flash Wear out Counters Reset",1616:"Power Package Modified",1617:"Set Realm Authentication Mode",1618:"Upgrade Client to Admin Control Mode",1619:"Unprovisioning Started",1700:"Performed Power Up",1701:"Performed Power Down",1702:"Performed Power Cycle",1703:"Performed Reset",1704:"Set Boot Options",1800:"IDER Session Opened",1801:"IDER Session Closed",1802:"IDER Enabled",1803:"IDER Disabled",1804:"SoL Session Opened",
160
+1805:"SoL Session Closed",1806:"SoL Enabled",1807:"SoL Disabled",1808:"KVM Session Started",1809:"KVM Session Ended",1810:"KVM Enabled",1811:"KVM Disabled",1812:"VNC Password Failed 3 Times",1900:"Firmware Updated",1901:"Firmware Update Failed",2E3:"Security Audit Log Cleared",2001:"Security Audit Policy Modified",2002:"Security Audit Log Disabled",2003:"Security Audit Log Enabled",2004:"Security Audit Log Exported",2005:"Security Audit Log Recovered",2100:"Intel® ME Time Set",2200:"TCPIP Parameters Set",
161
+2201:"Host Name Set",2202:"Domain Name Set",2203:"VLAN Parameters Set",2204:"Link Policy Set",2205:"IPv6 Parameters Set",2300:"Global Storage Attributes Set",2301:"Storage EACL Modified",2302:"Storage FPACL Modified",2303:"Storage Write Operation",2400:"Alert Subscribed",2401:"Alert Unsubscribed",2402:"Event Log Cleared",2403:"Event Log Frozen",2500:"CB Filter Added",2501:"CB Filter Removed",2502:"CB Policy Added",2503:"CB Policy Removed",2504:"CB Default Policy Set",2505:"CB Heuristics Option Set",
162
+2506:"CB Heuristics State Cleared",2600:"Agent Watchdog Added",2601:"Agent Watchdog Removed",2602:"Agent Watchdog Action Set",2700:"Wireless Profile Added",2701:"Wireless Profile Removed",2702:"Wireless Profile Updated",2800:"EAC Posture Signer SET",2801:"EAC Enabled",2802:"EAC Disabled",2803:"EAC Posture State",2804:"EAC Set Options",2900:"KVM Opt-in Enabled",2901:"KVM Opt-in Disabled",2902:"KVM Password Changed",2903:"KVM Consent Succeeded",2904:"KVM Consent Failed",3E3:"Opt-In Policy Change",3001:"Send Consent Code Event",
163
+3002:"Start Opt-In Blocked Event"};l.GetAuditLogExtendedDataStr=function(a,b){if((1602==a||1604==a)&&0==b.charCodeAt(0))return b.substring(2,2+b.charCodeAt(1));if(1603==a)return 0==b.charCodeAt(1)?b.substring(3):null;if(1605==a)return["Invalid ME access","Invalid MEBx access"][b.charCodeAt(0)];if(1606==a){var c=["Disabled","Enabled"][b.charCodeAt(0)];0==b.charCodeAt(1)&&(c+=", "+b.substring(3));return c}return 1607==a?"Remote "+["NoAuth","ServerAuth","MutualAuth"][b.charCodeAt(0)]+", Local "+["NoAuth",
164
+"ServerAuth","MutualAuth"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+", "+["NoAuth","Auth","Disabled"][b.charCodeAt(4)]:1619==a?["BIOS","MEBx","Local MEI","Local WSMAN","Remote WSAMN"][b.charCodeAt(0)]:1900==a?"From "+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" to "+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"From "+["None",
165
+"KVM","All"][b.charCodeAt(0)]+" to "+["None","KVM","All"][b.charCodeAt(1)]:3001==a?["Success","Failed 3 times"][b.charCodeAt(0)]:null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}
166
+function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
167
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
168
+function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
169
+function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
170
+function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
171
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
172
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
173
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
174
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
175
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
176
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
177
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
178
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
179
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
180
+d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
181
+d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
182
+255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
183
+8&255))};d.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))};d.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))};d.ByteStringBuffer.prototype.putInt=function(a,b){var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(0<b);return this.putBytes(c)};
184
+d.ByteStringBuffer.prototype.putSignedInt=function(a,b){0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())};d.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};d.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<
185
+16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);this.read+=4;return a};d.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;this.read+=2;return a};d.ByteStringBuffer.prototype.getInt24Le=
186
+function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;this.read+=3;return a};d.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;this.read+=4;return a};d.ByteStringBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(0<a);return b};d.ByteStringBuffer.prototype.getSignedInt=
187
+function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
188
+a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
189
+function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
190
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
191
+d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
192
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
193
+typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
194
+b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
195
+b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
196
+d.DataBuffer.prototype.putInt32=function(a){this.accommodate(4);this.data.setInt32(this.write,a);this.write+=4;return this};d.DataBuffer.prototype.putInt16Le=function(a){this.accommodate(2);this.data.setInt16(this.write,a,!0);this.write+=2;return this};d.DataBuffer.prototype.putInt24Le=function(a){this.accommodate(3);this.data.setInt8(this.write,a>>16&255);this.data.setInt16(this.write,a>>8&65535,!0);this.write+=3;return this};d.DataBuffer.prototype.putInt32Le=function(a){this.accommodate(4);this.data.setInt32(this.write,
197
+a,!0);this.write+=4;return this};d.DataBuffer.prototype.putInt=function(a,b){this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(0<b);return this};d.DataBuffer.prototype.putSignedInt=function(a,b){this.accommodate(b/8);0>a&&(a+=2<<b-1);return this.putInt(a,b)};d.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};d.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);this.read+=2;return a};d.DataBuffer.prototype.getInt24=
198
+function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);this.read+=3;return a};d.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);this.read+=4;return a};d.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);this.read+=2;return a};d.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;this.read+=3;return a};d.DataBuffer.prototype.getInt32Le=function(){var a=
199
+this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.getInt=function(a){var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(0<a);return b};d.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.DataBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};
200
+d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
201
+new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
202
+this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
203
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
204
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
205
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
206
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
207
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
208
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
209
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
210
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
211
+b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
212
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
213
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
214
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
215
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
216
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
217
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
218
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
219
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
220
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
221
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
222
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
223
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
224
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
225
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
226
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
227
+(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
228
+a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
229
+this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
230
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
231
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
232
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
233
+Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
234
+this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
235
+this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
236
+this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
237
+b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
238
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
239
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
240
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
241
+if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
242
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
243
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
244
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
245
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
246
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
247
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
248
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
249
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
250
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
251
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
252
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
253
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
254
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
255
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
256
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
257
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
258
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
259
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
260
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
261
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
262
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
263
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
264
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
265
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
266
+a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
267
+"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
268
+a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
269
+a["1.2.840.113549.1.7.5"]="digestedData";a.digestedData="1.2.840.113549.1.7.5";a["1.2.840.113549.1.7.6"]="encryptedData";a.encryptedData="1.2.840.113549.1.7.6";a["1.2.840.113549.1.9.1"]="emailAddress";a.emailAddress="1.2.840.113549.1.9.1";a["1.2.840.113549.1.9.2"]="unstructuredName";a.unstructuredName="1.2.840.113549.1.9.2";a["1.2.840.113549.1.9.3"]="contentType";a.contentType="1.2.840.113549.1.9.3";a["1.2.840.113549.1.9.4"]="messageDigest";a.messageDigest="1.2.840.113549.1.9.4";a["1.2.840.113549.1.9.5"]=
270
+"signingTime";a.signingTime="1.2.840.113549.1.9.5";a["1.2.840.113549.1.9.6"]="counterSignature";a.counterSignature="1.2.840.113549.1.9.6";a["1.2.840.113549.1.9.7"]="challengePassword";a.challengePassword="1.2.840.113549.1.9.7";a["1.2.840.113549.1.9.8"]="unstructuredAddress";a.unstructuredAddress="1.2.840.113549.1.9.8";a["1.2.840.113549.1.9.14"]="extensionRequest";a.extensionRequest="1.2.840.113549.1.9.14";a["1.2.840.113549.1.9.20"]="friendlyName";a.friendlyName="1.2.840.113549.1.9.20";a["1.2.840.113549.1.9.21"]=
271
+"localKeyId";a.localKeyId="1.2.840.113549.1.9.21";a["1.2.840.113549.1.9.22.1"]="x509Certificate";a.x509Certificate="1.2.840.113549.1.9.22.1";a["1.2.840.113549.1.12.10.1.1"]="keyBag";a.keyBag="1.2.840.113549.1.12.10.1.1";a["1.2.840.113549.1.12.10.1.2"]="pkcs8ShroudedKeyBag";a.pkcs8ShroudedKeyBag="1.2.840.113549.1.12.10.1.2";a["1.2.840.113549.1.12.10.1.3"]="certBag";a.certBag="1.2.840.113549.1.12.10.1.3";a["1.2.840.113549.1.12.10.1.4"]="crlBag";a.crlBag="1.2.840.113549.1.12.10.1.4";a["1.2.840.113549.1.12.10.1.5"]=
272
+"secretBag";a.secretBag="1.2.840.113549.1.12.10.1.5";a["1.2.840.113549.1.12.10.1.6"]="safeContentsBag";a.safeContentsBag="1.2.840.113549.1.12.10.1.6";a["1.2.840.113549.1.5.13"]="pkcs5PBES2";a.pkcs5PBES2="1.2.840.113549.1.5.13";a["1.2.840.113549.1.5.12"]="pkcs5PBKDF2";a.pkcs5PBKDF2="1.2.840.113549.1.5.12";a["1.2.840.113549.1.12.1.1"]="pbeWithSHAAnd128BitRC4";a.pbeWithSHAAnd128BitRC4="1.2.840.113549.1.12.1.1";a["1.2.840.113549.1.12.1.2"]="pbeWithSHAAnd40BitRC4";a.pbeWithSHAAnd40BitRC4="1.2.840.113549.1.12.1.2";
273
+a["1.2.840.113549.1.12.1.3"]="pbeWithSHAAnd3-KeyTripleDES-CBC";a["pbeWithSHAAnd3-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.3";a["1.2.840.113549.1.12.1.4"]="pbeWithSHAAnd2-KeyTripleDES-CBC";a["pbeWithSHAAnd2-KeyTripleDES-CBC"]="1.2.840.113549.1.12.1.4";a["1.2.840.113549.1.12.1.5"]="pbeWithSHAAnd128BitRC2-CBC";a["pbeWithSHAAnd128BitRC2-CBC"]="1.2.840.113549.1.12.1.5";a["1.2.840.113549.1.12.1.6"]="pbewithSHAAnd40BitRC2-CBC";a["pbewithSHAAnd40BitRC2-CBC"]="1.2.840.113549.1.12.1.6";a["1.2.840.113549.3.7"]=
274
+"des-EDE3-CBC";a["des-EDE3-CBC"]="1.2.840.113549.3.7";a["2.16.840.1.101.3.4.1.2"]="aes128-CBC";a["aes128-CBC"]="2.16.840.1.101.3.4.1.2";a["2.16.840.1.101.3.4.1.22"]="aes192-CBC";a["aes192-CBC"]="2.16.840.1.101.3.4.1.22";a["2.16.840.1.101.3.4.1.42"]="aes256-CBC";a["aes256-CBC"]="2.16.840.1.101.3.4.1.42";a["2.5.4.3"]="commonName";a.commonName="2.5.4.3";a["2.5.4.5"]="serialName";a.serialName="2.5.4.5";a["2.5.4.6"]="countryName";a.countryName="2.5.4.6";a["2.5.4.7"]="localityName";a.localityName="2.5.4.7";
275
+a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]="organizationName";a.organizationName="2.5.4.10";a["2.5.4.11"]="organizationalUnitName";a.organizationalUnitName="2.5.4.11";a["2.16.840.1.113730.1.1"]="nsCertType";a.nsCertType="2.16.840.1.113730.1.1";a["2.5.29.1"]="authorityKeyIdentifier";a["2.5.29.2"]="keyAttributes";a["2.5.29.3"]="certificatePolicies";a["2.5.29.4"]="keyUsageRestriction";a["2.5.29.5"]="policyMapping";a["2.5.29.6"]="subtreesConstraint";a["2.5.29.7"]=
276
+"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
277
+a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
278
+a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
279
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
280
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
281
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
282
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
283
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
284
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
285
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
286
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
287
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
288
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
289
+typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
290
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
291
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
292
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
293
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
294
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
295
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
296
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
297
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
298
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
299
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
300
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
301
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
302
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
303
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
304
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
305
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
306
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
307
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
308
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
309
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
310
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
311
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
312
+64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
313
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
314
+messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
315
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
316
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
317
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
318
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
319
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
320
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
321
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
322
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
323
+3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
324
+[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
325
+106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
326
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
327
+[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
328
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
329
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
330
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
331
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
332
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
333
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
334
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
335
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
336
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
337
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
338
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
339
+e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
340
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
341
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
342
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
343
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
344
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
345
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
346
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
347
+output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
348
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
349
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
350
+8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
351
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
352
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
353
+c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
354
+16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
355
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
356
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
357
+34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
358
+524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
359
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
360
+0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
361
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
362
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
363
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
364
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
365
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
366
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
367
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
368
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
369
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
370
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
371
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
372
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
373
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
374
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
375
+0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
376
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
377
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
378
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
379
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
380
+139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
381
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
382
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
383
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
384
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
385
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
386
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
387
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
388
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
389
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
390
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
391
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
392
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
393
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
394
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
395
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
396
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
397
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
398
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
399
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
400
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
401
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
402
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
403
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
404
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
405
+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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
406
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
407
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
408
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
409
+this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
410
+0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
411
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
412
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
413
+function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
414
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
415
+z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
416
+0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
417
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
418
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
419
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
420
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
421
+new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
422
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
423
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
424
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
425
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
426
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
427
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
428
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
429
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
430
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
431
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
432
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
433
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
434
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
435
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
436
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
437
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
438
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
439
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
440
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
441
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
442
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
443
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
444
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
445
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
446
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
447
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
448
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
449
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
450
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
451
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
452
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
453
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
454
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
455
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
456
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
457
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
458
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
459
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
460
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
461
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
462
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
463
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
464
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
465
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
466
+tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
467
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
468
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
469
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
470
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
471
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
472
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
473
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
474
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
475
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
476
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
477
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
478
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
479
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
480
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
481
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
482
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
483
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
484
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
485
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
486
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
487
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
488
+a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
489
+tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
490
+tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
491
+tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"}].concat(e)};d.signedDataValidator={name:"SignedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,
492
+captureAsn1:"digestAlgorithms"},a,{name:"SignedData.Certificates",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,capture:"signerInfos",optional:!0,value:[{name:"SignerInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:c.Class.UNIVERSAL,
493
+type:c.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
494
+value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,
495
+constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
496
+constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
497
+value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
498
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
499
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
500
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
501
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
502
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
503
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
504
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
505
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
506
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
507
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
508
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
509
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
510
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
511
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
512
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
513
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
514
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
515
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
516
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
517
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
518
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
519
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
520
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
521
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
522
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
523
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
524
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
525
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
526
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
527
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
528
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
529
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
530
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
531
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
532
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
533
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
534
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
535
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
536
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
537
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
538
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
539
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
540
+null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
541
+b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
542
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
543
+e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
544
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
545
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
546
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
547
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
548
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
549
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
550
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
551
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
552
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
553
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
554
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
555
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
556
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
557
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
558
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
559
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
560
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
561
+null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
562
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
563
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
564
+if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
565
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
566
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
567
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
568
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
569
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
570
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
571
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
572
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
573
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
574
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
575
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
576
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
577
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
578
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
579
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
580
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
581
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
582
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
583
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
584
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
585
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
586
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
587
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
588
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
589
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
590
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
591
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
592
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
593
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
594
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
595
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
596
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
597
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
598
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
599
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
600
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
601
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
602
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
603
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
604
+e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
605
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
606
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
607
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
608
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
609
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
610
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
611
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
612
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
613
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
614
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
615
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
616
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
617
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
618
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
619
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
620
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
621
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
622
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
623
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
624
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
625
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
626
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
627
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
628
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
629
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
630
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
631
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
632
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
633
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
634
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
635
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
636
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
637
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
638
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
639
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
640
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
641
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
642
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
643
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
644
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
645
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
646
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
647
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
648
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
649
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
650
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
651
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
652
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
653
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
654
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
655
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
656
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
657
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
658
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
659
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
660
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
661
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
662
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
663
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
664
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
665
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
666
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
667
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
668
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
669
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
670
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
671
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
672
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
673
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
674
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
675
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
676
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
677
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
678
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
679
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
680
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
681
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
682
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
683
+typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
684
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
685
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
686
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
687
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
688
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
689
+"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
690
+l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
691
+a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
692
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
693
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
694
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
695
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
696
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
697
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
698
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
699
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
700
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
701
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
702
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
703
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
704
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
705
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
706
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
707
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
708
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
709
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
710
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
711
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
712
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
713
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
714
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
715
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
716
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
717
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
718
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
719
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
720
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
721
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
722
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
723
+Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
724
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
725
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
726
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
727
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
728
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
729
+function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
730
+"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
731
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
732
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
733
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
734
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
735
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
736
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
737
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
738
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
739
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
740
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
741
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
742
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
743
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
744
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
745
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
746
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
747
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
748
+function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
749
+function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
750
+function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
751
+require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,method:"GET",rejectUnauthorized:!1},function(a){var e="";a.on("data",function(a){null!=e&&(e+=a.toString("binary"));5E5<e.length&&(e=null)});a.on("end",function(){certUrlCache[b]={data:btoa(e),time:Date.now()};try{require("fs").writeFileSync(certUrlCacheFile,JSON.stringify(certUrlCache,null,2))}catch(a){}c(b,e)})}).on("error",function(a){console.log("Error: "+a.message);c(b,null)})}script_functionTable1="nop jump set print dialog getitem substr indexof split join length jsonparse jsonstr add substract parseint wsbatchenum wsput wscreate wsdelete wsexec scriptspeed wssubscribe wsunsubscribe readchar signwithdummyca".split(" ");
752
+script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
753
+script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
754
+function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
755
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
756
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
757
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
758
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
759
+c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
760
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
761
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
762
+a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
763
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
764
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
765
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
766
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
767
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
768
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
769
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
770
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
771
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
772
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
773
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
774
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
775
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
776
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
777
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
778
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
779
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
780
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
781
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
782
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
783
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
784
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
785
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
786
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
787
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
788
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
789
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
790
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
791
+Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
792
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
793
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
794
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
795
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
796
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
797
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
798
+function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
799
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
800
+a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
801
+a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
802
+if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
803
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
804
+a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
805
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
806
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
807
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
808
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
809
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
810
+{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
811
+Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
812
+d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
813
+a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
814
+67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
815
+delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
816
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
817
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
818
+b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
819
+a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
820
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
821
+b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyDown=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.DOWN,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxKeyPress=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};a.handleKeys=function(b){return 1==a.stopInput||3!=desktop.State?!1:a.xxKeyPress(b)};a.handleKeyUp=function(b){if(1==a.stopInput||3!=desktop.State)return!1;if(5>a.firstUpKeys.length&&
822
+(a.firstUpKeys.push(b.keyCode),5==a.firstUpKeys.length)){var c=a.firstUpKeys.join(",");if("16,17,91,91,16"==c||"16,17,18,91,92"==c)a.stopInput=!0}16==b.keyCode&&(a.shiftPressed=!1);17==b.keyCode&&(a.ctrlPressed=!1);18==b.keyCode&&(a.altPressed=!1);return a.xxKeyUp(b)};a.handleKeyDown=function(b){if(1==a.stopInput||3!=desktop.State)return!1;16==b.keyCode&&(a.shiftPressed=!0);17==b.keyCode&&(a.ctrlPressed=!0);18==b.keyCode&&(a.altPressed=!0);return a.xxKeyDown(b)};a.handleReleaseKeys=function(){a.shiftPressed&&
823
+a.SendKeyMsgKC(a.KeyAction.UP,16);a.ctrlPressed&&a.SendKeyMsgKC(a.KeyAction.UP,17);a.altPressed&&a.SendKeyMsgKC(a.KeyAction.UP,18);a.shiftPressed=a.ctrlPressed=a.altPressed=!1};a.mousedblclick=function(b){return 1==a.stopInput?!1:a.xxMouseDblClick(b)};a.mousedown=function(b){return 1==a.stopInput?!1:a.xxMouseDown(b)};a.mouseup=function(b){return 1==a.stopInput?!1:a.xxMouseUp(b)};a.mousemove=function(b){return 1==a.stopInput?!1:a.xxMouseMove(b)};a.mousewheel=function(b){return 1==a.stopInput?!1:a.xxMouseWheel(b)};
824
+a.xxMsTouchEvent=function(b){if(4!=b.originalEvent.pointerType){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();if("MSPointerDown"==b.type||"MSPointerMove"==b.type||"MSPointerUp"==b.type){var c=0,d=b.originalEvent.pointerId%256,e=Canvas.canvas.width/a.CanvasId.clientWidth*b.offsetX,l=Canvas.canvas.height/a.CanvasId.clientHeight*b.offsetY;"MSPointerDown"==b.type?c=65542:"MSPointerMove"==b.type?c=131078:"MSPointerUp"==b.type&&(c=262144);a.TouchArray[d]||(a.TouchArray[d]=
825
+{x:e,y:l});a.SendTouchMsg2(d,c);"MSPointerUp"==b.type&&delete a.TouchArray[d]}else alert(b.type);return!0}};a.xxTouchStart=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(KeyAction.DOWN,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=
826
+b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]||(a.TouchArray[e]={x:Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),y:Canvas.canvas.height/a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]),f:1})}0<Object.keys(a.TouchArray).length&&null==touchtimer&&(a.touchtimer=setInterval(function(){a.SendTouchMsg2(256,0)},50))}};a.xxTouchMove=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled){if(!(1<
827
+b.originalEvent.touches.length)){var c=b.originalEvent.touches[0];b.which=1;a.LastX=b.pageX=c.pageX;a.LastY=b.pageY=c.pageY;a.SendMouseMsg(a.KeyAction.NONE,b)}}else{var c=a.GetPositionOfControl(Canvas.canvas),d;for(d in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[d].identifier){var e=b.originalEvent.changedTouches[d].identifier%256;a.TouchArray[e]&&(a.TouchArray[e].x=a.Canvas.canvas.width/a.CanvasId.clientWidth*(b.originalEvent.touches[d].pageX-c[0]),a.TouchArray[e].y=a.Canvas.canvas.height/
828
+a.CanvasId.clientHeight*(b.originalEvent.touches[d].pageY-c[1]))}}};a.xxTouchEnd=function(b){if(3==a.State)if(b.preventDefault&&b.preventDefault(),0==a.touchenabled||1==a.touchenabled)1<b.originalEvent.touches.length||(b.which=1,b.pageX=LastX,b.pageY=LastY,a.SendMouseMsg(KeyAction.UP,b));else for(var c in b.originalEvent.changedTouches)if(b.originalEvent.changedTouches[c].identifier){var d=b.originalEvent.changedTouches[c].identifier%256;a.TouchArray[d]&&(a.TouchArray[d].f=2)}};a.GrabMouseInput=function(){if(1!=
829
+a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=a.xxMouseMove;b.onmouseup=a.xxMouseUp;b.onmousedown=a.xxMouseDown;b.touchstart=a.xxTouchStart;b.touchmove=a.xxTouchMove;b.touchend=a.xxTouchEnd;b.MSPointerDown=a.xxMsTouchEvent;b.MSPointerMove=a.xxMsTouchEvent;b.MSPointerUp=a.xxMsTouchEvent;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=a.xxDOMMouseScroll:b.onmousewheel=a.xxMouseWheel;a.xxMouseInputGrab=!0}};a.UnGrabMouseInput=function(){if(0!=a.xxMouseInputGrab){var b=a.CanvasId;b.onmousemove=
830
+null;b.onmouseup=null;b.onmousedown=null;b.touchstart=null;b.touchmove=null;b.touchend=null;b.MSPointerDown=null;b.MSPointerMove=null;b.MSPointerUp=null;navigator.userAgent.match(/mozilla/i)?b.DOMMouseScroll=null:b.onmousewheel=null;a.xxMouseInputGrab=!1}};a.GrabKeyInput=function(){1!=a.xxKeyInputGrab&&(document.onkeyup=a.xxKeyUp,document.onkeydown=a.xxKeyDown,document.onkeypress=a.xxKeyPress,a.xxKeyInputGrab=!0)};a.UnGrabKeyInput=function(){0!=a.xxKeyInputGrab&&(document.onkeyup=null,document.onkeydown=
831
+null,document.onkeypress=null,a.xxKeyInputGrab=!1)};a.GetPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};a.crotX=function(b,c){if(0==a.rotation)return b;if(1==a.rotation)return c;if(2==a.rotation)return a.Canvas.canvas.width-b;if(3==a.rotation)return a.Canvas.canvas.height-c};a.crotY=function(b,c){if(0==a.rotation)return c;if(1==a.rotation)return a.Canvas.canvas.width-b;if(2==a.rotation)return a.Canvas.canvas.height-c;
832
+if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)return b;if(2==a.rotation)return b-a.Canvas.canvas.width;if(3==a.rotation)return b-a.Canvas.canvas.height};a.rotY=function(b,c){if(0==a.rotation||3==a.rotation)return c;if(1==a.rotation)return c-a.Canvas.canvas.width;if(2==a.rotation)return c-a.Canvas.canvas.height};a.tcanvas=null;a.setRotation=function(b){for(;0>b;)b+=4;b%=4;if(b==a.rotation)return!0;var c=a.Canvas.canvas.width,d=a.Canvas.canvas.height;if(1==a.rotation||
833
+3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
834
+0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
835
+a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
836
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
837
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
838
+function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
839
+a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
840
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
841
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
842
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
843
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
844
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
845
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
846
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
847
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
848
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
849
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
850
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
851
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
852
+9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
853
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
854
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
855
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
856
+79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
857
+91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
858
+var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
859
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
860
+break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
861
+k.Init();return k},ZLIB=ZLIB||{};
862
+"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
863
+this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
864
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
865
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
866
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
867
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
868
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
869
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
870
+16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
871
+e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
872
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
873
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
874
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
875
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
876
+d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
877
+512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
878
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
879
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
880
+{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
881
+bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
882
+val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
883
+{op:20,bits:7,val:67},{op:0,bits:8,val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:212},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:180},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:244},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:204},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,
884
+bits:9,val:172},{op:0,bits:8,val:6},{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:236},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:156},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:220},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:188},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:252},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,
885
+val:17},{op:21,bits:8,val:131},{op:18,bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:194},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:162},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:226},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:146},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:210},{op:17,bits:7,val:17},{op:0,bits:8,val:105},
886
+{op:0,bits:8,val:41},{op:0,bits:9,val:178},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:242},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:202},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:170},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:234},{op:16,bits:7,val:8},{op:0,bits:8,
887
+val:93},{op:0,bits:8,val:29},{op:0,bits:9,val:154},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:218},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:186},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:250},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:198},{op:17,bits:7,val:11},
888
+{op:0,bits:8,val:99},{op:0,bits:8,val:35},{op:0,bits:9,val:166},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:230},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:150},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:214},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:182},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:246},{op:16,
889
+bits:7,val:5},{op:0,bits:8,val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:206},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:174},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:238},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:158},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:222},
890
+{op:18,bits:7,val:27},{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:190},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:254},{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:193},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:161},{op:0,bits:8,val:0},{op:0,bits:8,val:128},{op:0,bits:8,val:64},{op:0,
891
+bits:9,val:225},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:145},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:209},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:177},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:241},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,bits:8,val:116},{op:0,bits:8,
892
+val:52},{op:0,bits:9,val:201},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:169},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:233},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:153},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:217},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:185},{op:0,bits:8,val:12},{op:0,bits:8,val:140},
893
+{op:0,bits:8,val:76},{op:0,bits:9,val:249},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:197},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:165},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:229},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:149},{op:20,bits:7,val:67},{op:0,bits:8,
894
+val:122},{op:0,bits:8,val:58},{op:0,bits:9,val:213},{op:18,bits:7,val:19},{op:0,bits:8,val:106},{op:0,bits:8,val:42},{op:0,bits:9,val:181},{op:0,bits:8,val:10},{op:0,bits:8,val:138},{op:0,bits:8,val:74},{op:0,bits:9,val:245},{op:16,bits:7,val:5},{op:0,bits:8,val:86},{op:0,bits:8,val:22},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:118},{op:0,bits:8,val:54},{op:0,bits:9,val:205},{op:17,bits:7,val:15},{op:0,bits:8,val:102},{op:0,bits:8,val:38},{op:0,bits:9,val:173},{op:0,bits:8,val:6},
895
+{op:0,bits:8,val:134},{op:0,bits:8,val:70},{op:0,bits:9,val:237},{op:16,bits:7,val:9},{op:0,bits:8,val:94},{op:0,bits:8,val:30},{op:0,bits:9,val:157},{op:20,bits:7,val:99},{op:0,bits:8,val:126},{op:0,bits:8,val:62},{op:0,bits:9,val:221},{op:18,bits:7,val:27},{op:0,bits:8,val:110},{op:0,bits:8,val:46},{op:0,bits:9,val:189},{op:0,bits:8,val:14},{op:0,bits:8,val:142},{op:0,bits:8,val:78},{op:0,bits:9,val:253},{op:96,bits:7,val:0},{op:0,bits:8,val:81},{op:0,bits:8,val:17},{op:21,bits:8,val:131},{op:18,
896
+bits:7,val:31},{op:0,bits:8,val:113},{op:0,bits:8,val:49},{op:0,bits:9,val:195},{op:16,bits:7,val:10},{op:0,bits:8,val:97},{op:0,bits:8,val:33},{op:0,bits:9,val:163},{op:0,bits:8,val:1},{op:0,bits:8,val:129},{op:0,bits:8,val:65},{op:0,bits:9,val:227},{op:16,bits:7,val:6},{op:0,bits:8,val:89},{op:0,bits:8,val:25},{op:0,bits:9,val:147},{op:19,bits:7,val:59},{op:0,bits:8,val:121},{op:0,bits:8,val:57},{op:0,bits:9,val:211},{op:17,bits:7,val:17},{op:0,bits:8,val:105},{op:0,bits:8,val:41},{op:0,bits:9,
897
+val:179},{op:0,bits:8,val:9},{op:0,bits:8,val:137},{op:0,bits:8,val:73},{op:0,bits:9,val:243},{op:16,bits:7,val:4},{op:0,bits:8,val:85},{op:0,bits:8,val:21},{op:16,bits:8,val:258},{op:19,bits:7,val:43},{op:0,bits:8,val:117},{op:0,bits:8,val:53},{op:0,bits:9,val:203},{op:17,bits:7,val:13},{op:0,bits:8,val:101},{op:0,bits:8,val:37},{op:0,bits:9,val:171},{op:0,bits:8,val:5},{op:0,bits:8,val:133},{op:0,bits:8,val:69},{op:0,bits:9,val:235},{op:16,bits:7,val:8},{op:0,bits:8,val:93},{op:0,bits:8,val:29},
898
+{op:0,bits:9,val:155},{op:20,bits:7,val:83},{op:0,bits:8,val:125},{op:0,bits:8,val:61},{op:0,bits:9,val:219},{op:18,bits:7,val:23},{op:0,bits:8,val:109},{op:0,bits:8,val:45},{op:0,bits:9,val:187},{op:0,bits:8,val:13},{op:0,bits:8,val:141},{op:0,bits:8,val:77},{op:0,bits:9,val:251},{op:16,bits:7,val:3},{op:0,bits:8,val:83},{op:0,bits:8,val:19},{op:21,bits:8,val:195},{op:19,bits:7,val:35},{op:0,bits:8,val:115},{op:0,bits:8,val:51},{op:0,bits:9,val:199},{op:17,bits:7,val:11},{op:0,bits:8,val:99},{op:0,
899
+bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{op:0,bits:8,val:67},{op:0,bits:9,val:231},{op:16,bits:7,val:7},{op:0,bits:8,val:91},{op:0,bits:8,val:27},{op:0,bits:9,val:151},{op:20,bits:7,val:67},{op:0,bits:8,val:123},{op:0,bits:8,val:59},{op:0,bits:9,val:215},{op:18,bits:7,val:19},{op:0,bits:8,val:107},{op:0,bits:8,val:43},{op:0,bits:9,val:183},{op:0,bits:8,val:11},{op:0,bits:8,val:139},{op:0,bits:8,val:75},{op:0,bits:9,val:247},{op:16,bits:7,val:5},{op:0,bits:8,
900
+val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
901
+{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
902
+bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
903
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
904
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
905
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
906
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
907
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
908
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
909
+u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
910
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
911
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
912
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
913
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
914
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
915
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
916
+e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
917
+function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
918
+"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
919
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
920
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
921
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
922
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
923
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
924
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
925
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
926
+3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
927
+476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
928
+3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
929
+1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
930
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
931
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
932
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
933
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
934
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
935
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
936
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
937
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
938
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
939
+"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
940
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
941
+null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>\u8f7d\u5165\u4e2d...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
942
+StatusStrs=["\u65ad\u7ebf","\u6b63\u5728\u8fde\u7ebf...","\u8bbe\u5b9a...","\u8fde\u63a5\u7684"],scriptstate,t,t2,rsepass=null;
943
+function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
944
+applyDesktopSettings();terminal=CreateAmtRedirect(CreateAmtRemoteTerminal("Term"));terminal.onStateChanged=onTerminalStateChange;Q(35).value=terminalEmulations[terminal.m.terminalEmulation];Q(32).value="\r\n"==terminal.m.lineFeed?"CR +\u4f4e\u9891":"\u5982\u679c";QE("c4",!0);Q("p13").addEventListener("dragover",haltEvent,!1);Q("p13").addEventListener("dragleave",haltEvent,!1);Q("p13").addEventListener("drop",terminal_FileSelectHandler,!1);document.addEventListener("dragover",
945
+haltEvent,!1);document.addEventListener("dragleave",haltEvent,!1);document.addEventListener("drop",documentFileSelectHandler,!1);Q("p16").addEventListener("dragover",haltEvent,!1);Q("p16").addEventListener("dragleave",haltEvent,!1);Q("p16").addEventListener("drop",cert_FileSelectHandler,!1);Q("Desk").toBlob||QV("c6",!1);document.onkeyup=handleKeyUp;document.onkeydown=handleKeyDown;document.onkeypress=handleKeyPress;window.onresize=center;center();scriptLoadStartingBlocks();Q("p24filetable").addEventListener("drop",
946
+p24fileDragDrop,!1);Q("p24filetable").addEventListener("dragover",p24fileDragOver,!1);Q("p24filetable").addEventListener("dragleave",p24fileDragLeave,!1)}
947
+function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTransfer.files.length;a++)0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".img")&&0==b.dataTransfer.files[a].name.toLowerCase().endsWith(".iso")&&(c=!1);1==c&&null!=b.dataTransfer&&0<currentView&&100>currentView&&(1==b.dataTransfer.files.length||2==b.dataTransfer.files.length)?(a=c=null,b.dataTransfer.files[0].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[0]),b.dataTransfer.files[0].name.toLowerCase().endsWith(".img")&&
948
+(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
949
+(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="\u65ad\u5f00"}function getCurrentMeshNode(){return currentMeshNode}
950
+function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="\u5f00\u59cb\u6355\u6349";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
951
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
952
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
953
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
954
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
955
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
956
+QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
957
+!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
958
+function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="\u8fde\u63a5";QH(5,"\u65ad\u7ebf");go(100)}
959
+function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
960
+function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
961
+function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicalelements=[];null!=a&&null!=a.CIM_SoftwareIdentity&&null!=a.CIM_SoftwareIdentity.responses&&(amtlogicalelements=a.CIM_SoftwareIdentity.responses,null!=a.AMT_SetupAndConfigurationService&&null!=a.AMT_SetupAndConfigurationService.response&&amtlogicalelements.push(a.AMT_SetupAndConfigurationService.response));if(0==amtlogicalelements.length){console.error("ERROR: Could not get Intel AMT version.");disconnect();return}c=getInstance(amtlogicalelements,
962
+"AMT").VersionString}else if(c=b.wsman.comm.amtVersion,!c){errcheck(400,b);return}amtversion=parseInt(c.split(".")[0]);amtversionmin=parseInt(c.split(".")[1]);QV(13,checkAmtVersion(c));PullSystemStatus();updateSystemStatus();1!=urlvars.kvmonly&&0==fullscreenonly&&(PullUserInfo(),8<=amtversion&&PullAlarms());connectFunc&&(connectFunc(connectFuncTag),connectFuncTag=connectFunc=null);1==urlvars.kvm&&(go(14),connectDesktop());if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),connectDesktop();
963
+1==urlvars.sol&&(go(13),connectTerminal())}else errcheck(d,b)}var refreshButtonsState=!0;function refreshButtons(b){if(refreshButtonsState!=b){refreshButtonsState=b;for(var c=0,a=document.getElementsByTagName("input");c<a.length;c++)"refreshbtn"==a[c].name&&(a[c].disabled=!b)}}
964
+function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
965
+amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
966
+function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
967
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
968
+function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
969
+200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"\u540c\u6b65\u65f6\u949f",3,syncClockEx,"\u5c06Intel AMT\u65f6\u949f\u4e0e\u6b64\u8ba1\u7b97\u673a\u540c\u6b65\uff1f")}
970
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","\u8bbe\u7f6e\u65f6\u95f4\u5931\u8d25\uff0c\u72b6\u6001="+d):0!=a.Body.ReturnValue?messagebox("","\u8bbe\u7f6e\u65f6\u95f4\u5931\u8d25\uff0c\u9519\u8bef\uff1a"+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}
971
+var DMTFPowerStates=" \u6253\u5f00 \u6d45\u7761\u7720 \u6c89\u7761 \u5173\u673a\u540e\u518d\u5f00\u673a\uff08\u8f6f\u5173\u673a\uff09 \u5173-\u786c \u4f11\u7720\uff08\u8f6f\u5173\u95ed\uff09 \u8f6f\u5173\u95ed \u5173\u673a\u540e\u518d\u5f00\u673a \u4e3b\u603b\u7ebf\u590d\u4f4d \u8bca\u65ad\u4e2d\u65ad\uff08NMI\uff09 \u4e0d\u9002\u7528 \u5173-\u67d4\u8f6f\u4f18\u7f8e \u5173-\u786c\u6717 \u4e3b\u603b\u7ebf\u590d\u4f4d\u6b63\u5e38 \u5173\u673a\u540e\u518d\u5f00\u673a\uff08\u8f6f\u5173\u95ed\uff09 \u5173\u673a\u540e\u518d\u5f00\u673a\uff08\u5173\u95ed-\u786c\u542f\u52a8\uff09 \u8bca\u65ad\u4e2d\u65ad\uff08INIT\uff09".split(" ");
972
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>\u672a\u77e5</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"\u6253\u5f00"==a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&
973
+3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));q.PowerSource&&(a+=["\uff0c \u63d2\u5165","\uff0c \u7535\u6c60"][q.PowerSource]);d+=TableEntry("\u529f\u7387",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>\u6ca1\u6709</i>":EscapeHtml(c);d+=TableEntry("\u540d\u79f0\u548c\u57df\u540d",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));
974
+amtstack.amtauth&&amtstack.amtauth.uuidStr?d+=TableEntry("\u7cfb\u7edf\u7f16\u53f7",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("\u7cfb\u7edf\u7f16\u53f7",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" \u5728\u7ba1\u7406\u5458\u63a7\u5236\u6a21\u5f0f\uff08ACM\uff09\u4e2d\u6fc0\u6d3b",
975
+4==k.ProvisioningMode&&(p=" \u5728\u5ba2\u6237\u7aef\u63a7\u5236\u6a21\u5f0f\uff08CCM\uff09\u4e2d\u6fc0\u6d3b",b=9));d+=TableEntry("\u82f1\u7279\u5c14®ME","v"+getItem(amtlogicalelements,"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,
976
+2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&
977
+2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);r&&(e+="\uff0c\u91cd\u5b9a\u5411\u7aef\u53e3");n&&(e+="\uff0cLAN\u4e0a\u4e32\u884c");p&&(e+="\uff0cIDE\u91cd\u5b9a\u5411");w&&(e+="\uff0cKVM");""==e&&(e=" \u6ca1\u6709");d+=TableEntry("\u6d3b\u52a8\u529f\u80fd",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&
978
+amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="\u4e3b\u8981\u5c55\u793a",7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["\u4e3b\u8981\u5c55\u793a","\u8f85\u52a9\u663e\u793a","\u7b2c\u4e09\u663e\u793a"][p.DefaultScreen]),e='<span title="'+format("\u9ed8\u8ba4\u8fdc\u7a0b\u663e\u793a\u4e3a{0}",e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+="\uff0c\u542f\u7528\u7aef\u53e35900"),1==p.OptInPolicy&&(e+="\uff0c"+
979
+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"\u52a0\u5165\u79d2\u6570":"\u4e8c\u6b21\u9009\u62e9")),e+="\uff0c"+p.SessionTimeout+" \u5206\u949f"+(0<p.SessionTimeout?"s":"")+" \u4f1a\u8bdd\u8d85\u65f6",9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService?((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&1))&&(e+="\uff0c\u5141\u8bb8\u4e0b\u6599"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("\u8fdc\u7a0b\u684c\u9762",addLinkConditional(e,
980
+"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(42,!r||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="\u672a\u77e5\u72b6\u6001",r=amtsysstate.IPS_OptInService.response.OptInRequired,0==r&&(e="\u4e0d\u9700\u8981"),1==r&&(e="\u4ec5KVM\u9700\u8981"),4294967295==r&&(e="\u59cb\u7ec8\u9700\u8981"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&
981
+(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("\u7528\u6237\u540c\u610f",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(r=e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==
982
+r&&(d+=TableEntry("\u7535\u6e90\u653f\u7b56",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&(d+=TableEntry("\u7ea6\u4f1a\u65f6\u95f4",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";e+=AddButton("\u7535\u6e90\u52a8\u4f5c...","showPowerActionDlg()")+" ";e+=AddButton("\u4fdd\u5b58\u72b6\u6001...","saveEntireAmtState()")+
983
+" ";e+=AddButton("\u8fd0\u884c\u811a\u672c...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");QH(17,d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+" \u66f4\u6539\u7f51\u7edc\u8bbe\u7f6e\u53ef\u80fd\u4f1a\u5bfc\u81f4\u6b64\u9875\u9762\u4e0d\u53ef\u7528\u3002");
984
+d=d+"<br><h2>\u5e38\u89c4\u8bbe\u7f6e</h2>"+TableStart();e="";"<i>\u6ca1\u6709</i>"!=c&&(1==q.SharedFQDN&&(e="\uff0c\u4e0e\u64cd\u4f5c\u7cfb\u7edf\u5171\u4eab"),0==q.SharedFQDN&&(e="\uff0c\u4e0d\u540c\u4e8eOS"));d+=TableEntry("\u540d\u79f0\u548c\u57df\u540d",addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));c="\u6b8b\u969c\u4eba\u58eb";1==q.DDNSUpdateEnabled?c="\u6bcf\u4e2a\u542f\u7528"+q.DDNSPeriodicUpdateInterval+" \u5206\u949f\uff0cTTL\u4e3a"+q.DDNSTTL+" \u5206\u949f":1==q.DDNSUpdateByDHCPServerEnabled&&
985
+(c="\u901a\u8fc7DHCP\u670d\u52a1\u5668\u66f4\u65b0");d+=TableEntry("\u52a8\u6001DNS",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"\u65e0\u7ebf\u4ecb\u9762":"\u6709\u7ebf\u63a5\u53e3")+"</h2>";d+=TableStart();
986
+d+=TableEntry("\u94fe\u63a5\u72b6\u6001",1==c.LinkIsUp?"\u94fe\u63a5\u5df2\u5efa\u7acb":"\u94fe\u63a5\u5df2\u65ad\u5f00");if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0 /\u4ea4\u6d41"),14==c.LinkPolicy[l]&&e.push("Sx /\u4ea4\u6d41"),16==c.LinkPolicy[l]&&e.push("S0 /\u76f4\u6d41"),224==c.LinkPolicy[l]&&e.push("Sx /\u76f4\u6d41");0==e.length&&e.push("");d+=TableEntry("\u8fde\u7ed3\u653f\u7b56",addLinkConditional(0==e.length?"\u65e0\u6cd5\u4f7f\u7528":
987
+"\u9002\u7528\u4e8e\uff1a"+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("MAC\u5730\u5740",c.MACAddress));amtwirelessif==a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("\u5dde",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("\u65e0\u7ebf\u7535\u72b6\u6001",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+
988
+"\uff0cSSID\uff1a"+(s?s:"<i>\u6ca1\u6709</i>")));amtwirelessif!=a&&(d+=TableEntry("\u56de\u5e94ping",addLinkConditional(["\u6b8b\u969c\u4eba\u58eb","ICMP\u56de\u5e94","RMCP\u54cd\u5e94","ICMP\u548cRMCP\u54cd\u5e94"][q.PingResponseEnabled+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"\u81ea\u52a8\u4f7f\u7528DHCP\u670d\u52a1\u5668":"\u9759\u6001IP\u5730\u5740",1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("IPv4\u72b6\u6001",addLinkConditional(e,
989
+"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("IPv4\u5730\u5740",isIpAddress(c.IPAddress,"\u6ca1\u6709"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("IPv4\u7f51\u5173/\u63a9\u7801",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"\u6ca1\u6709")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&(e+=" / "+c.SecondaryDNS),d+=TableEntry("IPv4\u57df\u540d\u670d\u52a1\u5668",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r=
990
+"\u6b8b\u969c\u4eba\u58eb",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||isIpAddress(c.SecondaryDNS))?"\u542f\u7528\u7684\u81ea\u52a8\u548c\u624b\u52a8\u5730\u5740":"\u542f\u7528\u7684\u81ea\u52a8\u5730\u5740");d+=TableEntry("IPv6\u72b6\u6001",
991
+addLinkConditional(r,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+="\uff0c"),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("IPv6\u5730\u5740",addLink(ipv6addr,"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("IPv6\u5730\u5740","\u6ca1\u6709");isIpAddress(c.CurrentDefaultRouter)&&
992
+(d+=TableEntry("IPv6\u9ed8\u8ba4\u8def\u7531\u5668",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("IPv6\u57df\u540d\u670d\u52a1\u5668",e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<amtversion||11==amtversion&&
993
+5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
994
+function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
995
+"")+">Available in S0/DC - Powered on & on battery</label><br>";a+="<label><input type=checkbox id=d11p4 value=224 "+(0<=c.LinkPolicy.indexOf(224)?"checked":"")+">Available in Sx/DC - Sleeping & on battery</label><br>";setDialogMode(11,"\u8fde\u7ed3\u653f\u7b56",3,showLinkPolicyDlgEx,a,b)}}
996
+function showLinkPolicyDlgEx(b,c){var a=Clone(amtsysstate.AMT_EthernetPortSettings.responses[c]);a.DHCPEnabled&&(delete a.IPAddress,delete a.SubnetMask,delete a.DefaultGateway,delete a.PrimaryDNS,delete a.SecondaryDNS);a.LinkPolicy=[];Q("d11p1").checked&&a.LinkPolicy.push(1);Q("d11p2").checked&&a.LinkPolicy.push(14);Q("d11p3").checked&&a.LinkPolicy.push(16);Q("d11p4").checked&&a.LinkPolicy.push(224);amtstack.Put("AMT_EthernetPortSettings",a,showLinkPolicyDlgExDone,0,1,a)}
997
+function showLinkPolicyDlgExDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("\u8fde\u7ed3\u653f\u7b56",format("\u65e0\u6cd5\u8bbe\u7f6e\u65b0\u7684\u94fe\u63a5\u7b56\u7565\uff0c\u9519\u8bef{0}",d))}
998
+function showAuthCsme(){if(!xxdialogMode){var b;b="<div style=margin-top:8px>Intel® AMT supports authentic CSME feature, however MeshCommander cannot verify the authenticity yet.</div><hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray />"+addHtmlValue("FW Version",amtstack.amtauth.FWVersion);b+=addHtmlValue("FQDN",amtstack.amtauth.FQDN?amtstack.amtauth.FQDN:"<i>\u6ca1\u6709</i>");b+="<hr style=margin-top:8px;margin-bottom:8px;height:2px;border-width:0;color:gray;background-color:gray /><div style=max-height:200px;overflow-y:auto><table>";
999
+for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[c];b+="<tr><td style=width:32px;vertical-align:top><img src=images-commander/cert1.png height=32 width=32 />";b+="<td style=padding-bottom:6px><b>"+EscapeHtml(a.subject.getField("CN").value)+(!0===a.xTrusted?", <span style=color:#080>\u503c\u5f97\u4fe1\u8d56</span>":"")+"</b><br />";a.subject.getField("OU")&&(b+=EscapeHtml(a.subject.getField("OU").value)+"<br />");b+=amtstack.amtauth.CertificatesDer[c].length+" \u5b57\u8282<a style=cursor:pointer;color:blue onclick=downloadAuthCert("+
1000
+c+")>\u4e0b\u8f7d</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" \u5b57\u8282<a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>\u4e0b\u8f7d</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
1001
+function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
1002
+function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"\u4fdd\u5b58\u6574\u4e2a\u82f1\u7279\u5c14®AMT\u72b6\u6001",3,saveEntireAmtStateOk)}}
1003
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"\u4fdd\u5b58\u6574\u4e2a\u82f1\u7279\u5c14®AMT\u72b6\u6001",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1004
+function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1005
+function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>\u4e3b\u8981\u5c55\u793a</option><option value=1>\u8f85\u52a9\u663e\u793a</option>";9<amtversion&&(c+="<option value=2>\u7b2c\u4e09\u663e\u793a</option>");c+='</select><div style=padding-top:4px>\u9ed8\u8ba4\u663e\u793a</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>\u4f1a\u8bdd\u8d85\u65f6\uff08\u5206\u949f\uff09</div></div>';
1006
+1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>\u9009\u62e9\u52a0\u5165\u8d85\u65f6\uff08\u79d2\uff09</div></div>');c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>\u7981\u7528\uff0c\u63a8\u8350</option><option value=1>\u5df2\u542f\u7528\u7684\u65e7\u7248KVM\u67e5\u770b\u5668</option></select><div style=padding-top:4px>5900\u7aef\u53e3</div></div>";
1007
+c+="<div style=height:26px;margin-top:4px id=subspassx><input id=subspass type=password autocomplete=off style=float:right;width:200px maxlength=8 onkeyup=showDesktopSettingsDlgUpdate()><div style=padding-top:4px>5900\u5bc6\u7801\uff088\u4e2a\u5b57\u7b26\uff09</div></div>";9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(c+='<div style=height:26px;margin-top:4px><select id=subsb style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>\u6b8b\u969c\u4eba\u58eb</option><option value=1>\u5df2\u542f\u7528</option></select><div style=padding-top:4px title="\u7ecf\u5e38\u4e0d\u652f\u6301\u6b64\u529f\u80fd">\u5c4f\u5e55\u6d88\u9690</div></div>');
1008
+c+="</div>";setDialogMode(11,"\u8fdc\u7a0b\u684c\u9762\u8bbe\u7f6e",3,showDesktopSettingsDlgOk,c);Q("subddisplay").value=b.DefaultScreen;Q("subsessiontimeout").value=b.SessionTimeout;1==b.OptInPolicy&&(Q("suboptintimeout").value=b.OptInPolicyTimeout);Q("subdlegacy").value=1==b.Is5900PortEnabled?1:0;9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService&&(Q("subsb").value=amtsysstate.IPS_ScreenConfigurationService.response.EnabledState);showDesktopSettingsDlgUpdate()}}
1009
+function showDesktopSettingsDlgUpdate(){QV("subspassx",1==Q("subdlegacy").value);var b=(0==Q("subdlegacy").value||8==Q("subspass").value.length||0==Q("subspass").value.length)&&0<Q("subsessiontimeout").value.length;1==amtsysstate.IPS_KVMRedirectionSettingData.response.OptInPolicy&&0==Q("suboptintimeout").value.length&&(b=!1);QE("c49",b)}
1010
+function showDesktopSettingsDlgOk(){var b=Clone(amtsysstate.IPS_KVMRedirectionSettingData.response);b.DefaultScreen=Q("subddisplay").value;b.SessionTimeout=Q("subsessiontimeout").value;b.Is5900PortEnabled=1==Q("subdlegacy").value;1==b.OptInPolicy&&(b.OptInPolicyTimeout=Q("suboptintimeout").value);1==b.Is5900PortEnabled&&(b.RFBPassword=Q("subspass").value);amtstack.Put("IPS_KVMRedirectionSettingData",b,showDesktopSettingsDlgOk2);b=Clone(amtsysstate.IPS_ScreenConfigurationService.response);b.EnabledState=
1011
+parseInt(Q("subsb").value);amtstack.Put("IPS_ScreenConfigurationService",b,showDesktopSettingsDlgOk3)}function showDesktopSettingsDlgOk2(b,c,a,d){200==d?PullSystemStatus():messagebox("\u8fdc\u7a0b\u684c\u9762\u8bbe\u7f6e",format("\u9519\u8bef{0}\uff0c\u65e0\u6cd5\u8bbe\u7f6e\u503c\u3002",d))}
1012
+function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("\u9519\u8bef",format("\u65e0\u6cd5\u8bbe\u7f6e\u5c4f\u5e55\u6d88\u9690\uff0c\u8be5\u7cfb\u7edf\u53ef\u80fd\u4e0d\u652f\u6301\u6d88\u9690\uff08{0}\uff09\u3002",d)):amtstack.Get("IPS_ScreenConfigurationService",function(a,b,c,d){200==d&&(amtsysstate.IPS_ScreenConfigurationService.response=c.Body,updateSystemStatus())},0,1)}
1013
+function PullEventLog(b){1==b&&xxdialogMode||(amtFirstPull|=16,amtstack.Enum("AMT_MessageLog",processMessageLog0),amtstack.GetMessageLog(processMessageLog1))}var processMessageLog0responses=null;
1014
+function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("\u53d6\u6d88\u51bb\u7ed3\u65e5\u5fd7","FreezeLog(0)"):AddButton("\u51bb\u7ed3\u65e5\u5fd7","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="\u8fc7\u6ee4" style=margin:4px onkeyup=eventFilter()> </div><div> '+
1015
+AddRefreshButton("PullEventLog(1)")+AddButton("\u6e05\u9664\u65e5\u5fd7","ClearLog()")+AddButton("\u6551...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1016
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>\u8d44\u6e90</b><td class=r1><b>\u63cf\u8ff0</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1017
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1018
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"\u6e05\u9664\u4e8b\u4ef6\u65e5\u5fd7\uff1f"),setDialogMode(1,"\u4e8b\u4ef6\u7c3f",3,ClearLogEx))}function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("\u4e8b\u4ef6\u7c3f","\u65e0\u6cd5\u6e05\u9664\uff0c\u9519\u8bef\uff1a"+d):PullEventLog()})}
1019
+function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("\u65f6\u95f4",c.Time.toLocaleString());a+=addHtmlValue("\u8d44\u6e90",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("\u63cf\u8ff0",c.Desc);a+=MoreStart();a+=addHtmlValue("\u8bbe\u5907\u5730\u5740",c.DeviceAddress);a+=addHtmlValue("\u5b9e\u4f53",c.Entity);a+=addHtmlValue("\u5b9e\u4f53\u5b9e\u4f8b",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];
1020
+a+=addHtmlValue("\u6570\u636e",d);a+=addHtmlValue("\u504f\u79fb\u91cf",c.EventOffset);a+=addHtmlValue("\u4f20\u611f\u5668\u7c7b\u578b",c.EventSensorType);a+=addHtmlValue("\u4e25\u91cd\u7a0b\u5ea6",c.EventSeverity);a+=addHtmlValue("\u6765\u6e90\u7c7b\u578b",c.EventSourceType);a+=addHtmlValue("\u7c7b\u578b",c.EventType);a+=addHtmlValue("\u4f20\u611f\u5668\u7f16\u53f7",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("\u4e8b\u4ef6\uff03{0}\u8be6\u7ec6\u4fe1\u606f",b+1),a)}}
1021
+function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1022
+function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1023
+function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u7ba1\u7406\u4e8b\u4ef6\u8ba2\u9605\u8005\u3002<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],
1024
+b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>\u627e\u4e0d\u5230\u8ba2\u9605\u3002</i></div><br>");e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("\u65b0\u8ba2\u9605","newSubscriptionButton()"));b+=
1025
+"<br><td class=r1>"+TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"\u63a8",3:"\u63a8\u9001\u786e\u8ba4",4:"\u5927\u4e8b\u8bb0",5:"\u62c9"};
1026
+function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("\u76ee\u7684\u5730",a.Destination);d+=addHtmlValue("\u8fc7\u6ee4",c);d+=addHtmlValue("\u6295\u653e\u65b9\u5f0f",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"\u8ba2\u9605"+
1027
+(b+1),xxAccountAdminName?5:1,deleteSubscriptionButton,d+"</div>",b)}}
1028
+function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
1029
+Handler:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ListenerDestinationWSManagement</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_ListenerDestinationWSMAN</w:Selector><w:Selector Name="Name">'+subscriptionsListeners.CIM_ListenerDestination.responses[c].Name+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>'})}
1030
+function newSubscriptionButton(){if(!xxdialogMode&&null!=subscriptionsFilters){var b;b="<div style=height:26px;margin-top:4px><select id=subtype style=float:right;width:260px><option value=Push>\u63a8</option><option value=PushWithAck>\u63a8\u9001\u786e\u8ba4</option></select><div style=padding-top:4px>\u7c7b\u578b</div></div><div style=height:26px;margin-top:4px><select id=subfilter style=float:right;width:260px>";for(var c in subscriptionsFilters)b+='<option value="'+subscriptionsFilters[c].InstanceID+
1031
+'">'+subscriptionsFilters[c].CollectionName.substring(13)+"</option>";b+="</select><div style=padding-top:4px>\u8fc7\u6ee4</div></div>";b+='<div style=height:26px;margin-top:4px><input id=suburl style=float:right;width:260px maxlength=253 onkeyup=newSubscriptionUpdate() value="http://"><div style=padding-top:4px>\u7f51\u5740</div></div>';b+="<div style=height:26px;margin-top:4px><select id=subauth style=float:right;width:260px onchange=newSubscriptionUpdate()><option value=0>\u6ca1\u6709</option><option value=1>\u6d88\u5316</option></select><div style=padding-top:4px>\u8ba4\u8bc1\u65b9\u5f0f</div></div>";
1032
+b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>\u7528\u6237\u540d</div></div>";b+="<div style=height:26px;margin-top:4px id=subxpass><input id=subpass style=float:right;width:260px maxlength=32 onkeyup=newSubscriptionUpdate()><div style=padding-top:4px>\u5bc6\u7801</div></div>";b+="<div style=height:26px;margin-top:4px><input id=subargs style=float:right;width:260px maxlength=128><div style=padding-top:4px>\u4e89\u8bba</div></div>";
1033
+setDialogMode(11,"\u6dfb\u52a0\u4e8b\u4ef6\u8ba2\u9605",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1034
+function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1035
+function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="\u672a\u77e5 \u5176\u4ed6 \u5df2\u542f\u7528 \u6b8b\u969c\u4eba\u58eb \u5173\u673a \u4e0d\u9002\u7528 \u5df2\u542f\u7528\u4f46\u79bb\u7ebf \u6d4b\u8bd5\u4e2d \u9012\u5ef6 \u505c\u987f \u5f00\u59cb".split(" ");
1036
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"\u6b8b\u969c\u4eba\u58eb":"\u5df2\u542f\u7528",c&2&&(b+="\uff0c\u5df2\u9501\u5b9a"),c&4&&(b+="\uff0c \u51e0\u4e4e\u6ee1"),c&8&&(b+="\u6ee1"),c&16&&(b+="\uff0cNoKey"),c="<h1>\u5ba1\u6838\u65e5\u5fd7\u8bbe\u7f6e</h1>"+TableStart(),c+=TableEntry("\u5dde",b),c+=TableEntry("\u5b58\u50a8",a[0].CurrentNumberOfRecords+" \u8bb0\u5f55\uff09\uff0c"+a[0].PercentageFree+"\uff05 \u81ea\u7531"),c+=TableEntry("\u8986\u5199\u653f\u7b56",
1037
+2==a[0].OverwritePolicy?"\u88c5\u6ee1\u65f6\u81ea\u52a8\u5305\u88c5":"\u6c38\u4e0d\u8986\u76d6"),c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1038
+function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="\u8fc7\u6ee4" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("\u6551...","SaveAuditLog()")+AddButton("\u6e05\u9664\u65e5\u5fd7","ClearAuditLog()"))+"<br>");if(0==c.length)d="\u627e\u4e0d\u5230\u5ba1\u6838\u65e5\u5fd7\u4e8b\u4ef6\u3002";else{var e=
1039
+0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>\u65f6\u95f4</b><td class=r1 style=width:260px><b>\u53d1\u8d77\u4eba</b><td class=r1><b>Action</b>";for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+="\uff0c"+q.Event);null!=q.ExStr&&(p+="\uff0c"+q.ExStr);""!=
1040
+k&&""!=r&&(k+="\uff0c");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}
1041
+function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","\u82f1\u7279\u5c14AMT\u5ba1\u6838\u65e5\u5fd7",auditLog)}function ClearAuditLog(b){QH(66,"\u6e05\u9664\u5ba1\u6838\u65e5\u5fd7\uff1f");setDialogMode(1,"\u5ba1\u6838\u65e5\u5fd7",3,ClearAuditLogEx)}
1042
+function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("\u5ba1\u6838\u65e5\u5fd7","\u9519\u8bef\uff1a"+d)}
1043
+function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("\u65f6\u95f4",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("\u53d1\u8d77\u4eba",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("\u5730\u5740",a.NetAddress));d+=addHtmlValue("\u5e94\u7528",a.AuditApp);d+=addHtmlValue("\u4e8b\u4ef6",a.Event);if(null!=a.ExStr)d+=addHtmlValue("\u6269\u5c55\u6570\u636e",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<e.length&&(e+=
1044
+","),e+=a.Ex.charCodeAt(c);""!=e&&(d+=addHtmlValue("\u6570\u636e\u503c",e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("\u8d44\u6599\u5b57\u4e32",a.Ex.substring(2)))}messagebox("\u5ba1\u6838\u4e8b\u4ef6\u7f16\u53f7"+(b+1)+" \u7ec6\u8282",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;
1045
+function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
1046
+function processCerts1(b,c,a,d){if(400!=d&&!errcheck(d,b)){QV("go16",!0);xxCertificates=a.AMT_PublicKeyCertificate.responses;xxCertPrivateKeys=a.AMT_PublicPrivateKeyPair.responses;xxTlsSettings=a.AMT_TLSSettingData.responses;xxTLSCredentialContext=a.AMT_TLSCredentialContext.responses;xxTlsCurrentCert=null;if(0<xxTLSCredentialContext.length){b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value;for(var e in xxCertificates)xxCertificates[e].InstanceID==b&&(xxTlsCurrentCert=
1047
+e)}for(e in xxCertificates)xxCertificates[e].TrustedRootCertficate=1==xxCertificates[e].TrustedRootCertficate,xxCertificates[e].X509Certificate=window.atob(xxCertificates[e].X509Certificate),xxCertificates[e].XIssuer=parseCertName(xxCertificates[e].Issuer),xxCertificates[e].XSubject=parseCertName(xxCertificates[e].Subject);amtcert_linkCertPrivateKey(xxCertificates,xxCertPrivateKeys);updateCertificates()}}
1048
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1049
+function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"\u6b8b\u969c\u4eba\u58eb";var c=(1==xxTlsSettings[b].MutualAuthentication?"\u76f8\u4e92\u8ba4\u8bc1TLS":"\u670d\u52a1\u5668\u8eab\u4efd\u9a8c\u8bc1TLS")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" \u548c\u975eTLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1050
+function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("\u8fdc\u7a0bTLS\u5b89\u5168",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("\u672c\u5730TLS\u5b89\u5168",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u7ba1\u7406\u6b64\u8ba1\u7b97\u673a\u7684\u82f1\u7279\u5c14®AMT\u8bc1\u4e66\u3002<br><br>");
1051
+if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>\u627e\u4e0d\u5230\u8bc1\u4e66\u3002</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b="\uff0c\u53d7\u4fe1\u4efb\u7684\u6839"),xxCertificates[d].XPrivateKey&&(b="\uff0c\u79c1\u94a5"),d==xxTlsCurrentCert&&(b+="\uff0cTLS\u8bc1\u4e66"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+
1052
+"</b><i>"+b+"</i></div></div>";for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>\u672a\u5206\u914d\u7684\u79c1\u94a5\u5bf9\uff03"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("\u6dfb\u52a0\u8bc1\u4e66...","addCertButton()")+AddButton("\u7b7e\u53d1\u8bc1\u4e66...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1053
+function showKeyPairDetails(b){setDialogMode(11,"\u5bc6\u94a5\u5bf9\uff03"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"\u8fd9\u662f\u4e0d\u5c5e\u4e8e\u4efb\u4f55\u8bc1\u4e66\u7684\u516c\u7528/\u4e13\u7528\u8bc1\u4e66\u5bc6\u94a5\u5bf9\u3002\u8be5\u6761\u76ee\u5e94\u8be5\u662f\u4e34\u65f6\u7684\u3002")}
1054
+var xxCertSubjectNames={CN:"\u901a\u7528\u540d",O:"\u7ec4\u7ec7",OU:"\u7ec4\u7ec7\u5355\u4f4d",S:"\u5dde/\u7701",ST:"\u5dde/\u7701",L:"\u5730\u533a\u6027",C:"\u56fd\u5bb6",SN:"\u59d3",GN:"\u7ed9\u5b9a\u7684\u540d\u79f0"};
1055
+function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("\u8bc1\u4e66",c.X509Certificate.length+" \u5b57\u8282<a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>\u4e0b\u8f7d</a>");a+=addHtmlValue("\u53d7\u4fe1\u4efb\u7684\u6839",c.TrustedRootCertficate?"\u662f":"\u6ca1\u6709");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("\u79c1\u94a5","\u5f53\u4e0b"));a+='<br><div style="border-bottom:1px solid gray"><i>\u8bc1\u4e66\u79d1\u76ee</i></div><br>';
1056
+for(var d in c.XSubject)c.XSubject[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>\u53d1\u884c\u4eba\u8bc1\u4e66</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"\u8bc1\u4e66 -"+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",
1057
+{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},function(){},0,1),amtstack.Delete("AMT_PublicKeyCertificate",xxCertificates[b],certificateRemoved,0,1))},a)}}function downloadCert(b){saveAs(data2blob(xxCertificates[b].X509Certificate),xxCertificates[b].XSubject.CN+".cer")}function cert_FileSelectHandler(b){haltEvent(b);1==b.dataTransfer.files.length&&(b.dataTransfer.files[0].name.toLowerCase().endsWith(".p12")?issueCertButton(b.dataTransfer.files):addCertButton(b.dataTransfer.files))}
1058
+var xxDragDropCertFiles=null;
1059
+function addCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen onchange=addCertButtonUpdate() type=file style=float:right;width:260px accept=".cer,.pem">',xxDragDropCertFiles&&(b='<input style=float:right;width:260px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b="<div style=height:10px></div>"+("<div style=height:26px;margin-top:4px>"+b+"<div style=padding-top:4px>\u8bc1\u4e66\u6587\u4ef6</div></div>")+"<div style=height:26px;margin-top:4px><select id=certtype style=float:right;width:260px><option value=1>\u53d7\u4fe1\u4efb\u7684\u6839\u8bc1\u4e66</option><option value=0>\u8fde\u9501\u8bc1\u4e66</option></select><div style=padding-top:4px>\u8bc1\u4e66\u7c7b\u522b</div></div>",setDialogMode(11,
1060
+"\u6dfb\u52a0\u8bc1\u4e66",3,addCertButtonOk,b),addCertButtonUpdate())}function addCertButtonUpdate(){var b=getInputElement("certopen");QE("c49",!b||1==b.files.length||2==Q("certoptype").value)}function addCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length&&(b=new FileReader,b.onload=addCertButtonOk2,b.readAsBinaryString(c[0]))}
1061
+function addCertButtonOk2(b){b=b.target.result;var c=b.indexOf("-----BEGIN CERTIFICATE-----");0<=c?(b=b.substring(c+27),c=b.indexOf("-----END CERTIFICATE-----"),0<=c&&(b=b.substring(0,c)),b=b.replace(/\r\n/g,"")):b=btoa(b);1==getSelectElement("certtype").value?amtstack.AMT_PublicKeyManagementService_AddTrustedRootCertificate(b,certificateAdded):amtstack.AMT_PublicKeyManagementService_AddCertificate(b,certificateAdded)}
1062
+function issueCertButton(b){!xxdialogMode&&xxAccountAdminName&&(xxDragDropCertFiles=b,b='<input id=certopen type=file style=float:right;width:230px onchange=issueCertButtonUpdate() accept=".p12">',xxDragDropCertFiles&&(b='<input style=float:right;width:230px readonly disabled value="'+xxDragDropCertFiles[0].name+'">'),b=""+("<div styleheight:26px;margin-top:14px>"+b+"<div style=padding-top:4px>Certificate file</div></div>")+"<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certopenpass type=password autocomplete=off style=float:right;width:230px><div style=padding-top:4px>\u8bc1\u4e66\u5bc6\u7801</div></div>",
1063
+b+='<br><div style="border-bottom:1px solid gray"><i>\u82f1\u7279\u5c14®AMT\u8bc1\u4e66</i></div>',b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certcn style=float:right;width:230px><div style=padding-top:4px>\u901a\u7528\u540d</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certo style=float:right;width:230px><div style=padding-top:4px>\u7ec4\u7ec7</div></div>",b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certst style=float:right;width:230px><div style=padding-top:4px>\u5dde/\u7701</div></div>",
1064
+b+="<div style=height:26px;margin-top:4px><input onkeyup=issueCertButtonUpdate() id=certc style=float:right;width:230px><div style=padding-top:4px>\u56fd\u5bb6</div></div>",b+='<div>\u8bc1\u4e66\u7528\u6cd5</div><ul style="list-style-type:none;height:100px;overflow:auto;width:100%;border: 1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">',b+="<li><label><input type=checkbox id=d11_cu4 checked>TLS\u670d\u52a1\u5668\uff08HTTPS\uff09</label></li>",b+="<li><label><input type=checkbox id=d11_cu5>TLS\u5ba2\u6237\u7aef\uff08HTTPS\uff09</label></li>",
1065
+b+="<li><label><input type=checkbox id=d11_cu6>\u90ae\u4ef6\u4fdd\u62a4</label></li>",b+="<li><label><input type=checkbox id=d11_cu7>\u4ee3\u7801\u7b7e\u540d</label></li>",b+="<li><label><input type=checkbox id=d11_cu8>\u65f6\u6807</label></li>",b+="</ul>",setDialogMode(11,"\u7b7e\u53d1\u8bc1\u4e66",3,issueCertButtonOk,b),issueCertButtonUpdate())}
1066
+function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenpass",!b||b&&1==b.files.length);var c=!b||2>b.files.length;1==(!b||b&&b.files.length)&&""==Q("certopenpass").value&&(c=!1);if(""==getInputElement("certcn").value||""==getInputElement("certo").value||""==getInputElement("certst").value||""==getInputElement("certc").value)c=!1;QE("c49",c)}
1067
+function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("\u7b7e\u53d1\u8bc1\u4e66","\u65e0\u6cd5\u89e3\u5bc6/\u89e3\u7801\u8bc1\u4e66\u3002")}
1068
+function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1069
+function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("\u7b7e\u53d1\u8bc1\u4e66","\u65e0\u6cd5\u751f\u6210\u5bc6\u94a5\u5bf9\u3002\u72b6\u6001\uff1a"+d):0!=a.Body.ReturnValue?messagebox("\u7b7e\u53d1\u8bc1\u4e66","\u65e0\u6cd5\u751f\u6210\u5bc6\u94a5\u5bf9\uff0c"+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1070
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("\u7b7e\u53d1\u8bc1\u4e66","\u65e0\u6cd5\u751f\u6210\u5bc6\u94a5\u5bf9\u3002\u72b6\u6001\uff1a"+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"\u4e0d\u53d7\u4fe1\u4efb\u7684\u6839\u8bc1\u4e66"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=
1071
+xxCaSubjectAttributes[q].value;q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("\u7b7e\u53d1\u8bc1\u4e66","\u65e0\u6cd5\u7b7e\u7f72\u8bc1\u4e66\u3002"):(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,
1072
+q.length-25),GenerateKeyPairResponse4))}}function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("\u7b7e\u53d1\u8bc1\u4e66","\u65e0\u6cd5\u751f\u6210\u5bc6\u94a5\u5bf9\u3002\u72b6\u6001\uff1a"+d):PullCertificates()}function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("\u6dfb\u52a0\u8bc1\u4e66","\u65e0\u6cd5\u6dfb\u52a0\u8bc1\u4e66\uff0c\u9519\u8bef"+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}
1073
+function certificateRemoved(b,c,a,d){200!=d?messagebox("\u5220\u9664\u8bc1\u4e66","\u65e0\u6cd5\u5220\u9664\u8bc1\u4e66\uff0c\u9519\u8bef"+d):PullCertificates()}function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1074
+function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>\u65e0\u8bc1\u4e66\uff0c\u7981\u7528TLS</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>\u8bc1\u4e66</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
1075
+b+="<option value=2>Mutual-auth TLS only</option><option value=3>Mutual-auth, non-TLS allowed</option>";b+='</select><div style=padding-top:4px>Security</div></div><div style=height:26px id=d11rcn title="\u9017\u53f7\u5206\u9694\u7684\u8bc1\u4e66\u901a\u7528\u540d\u79f0\u5217\u8868\uff0c\u5c06\u5141\u8bb8\u5b83\u4eec\u8fdc\u7a0b\u8fde\u63a5\u3002"><input id=d11_rcn style=float:right;width:260px onkeyup=showSetTlsSecurityDlgUpdate() placeholder="\u540d\u79f01\uff0c\u540d\u79f02"><div style=padding-top:4px>\u8fdc\u7a0bCN</div></div>';
1076
+setDialogMode(11,"TLS\u8bbe\u7f6e",3,showSetTlsSecurityDlgOk,b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSettings[1].Enabled)getSelectElement("tlscert").value=-1;else for(c in b=xxTLSCredentialContext[0].ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,xxCertificates)xxCertificates[c].InstanceID==b&&(getSelectElement("tlscert").value=c);c=1-("Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1);getSelectElement("tlsremote").value=(1==xxTlsSettings[c].MutualAuthentication?
1077
+2:0)+(1==xxTlsSettings[c].AcceptNonSecureConnections?1:0);xxTlsSettings[c].TrustedCN&&(Q("d11_rcn").value=MakeToArray(xxTlsSettings[c].TrustedCN).join(", "));showSetTlsSecurityDlgUpdate()}}function showSetTlsSecurityDlgUpdate(){var b=getSelectElement("tlscert").value;QE("tlsremote",-1!=b);QV("d11rcn",-1!=b&&1<getSelectElement("tlsremote").value);b=!0;1<getSelectElement("tlsremote").value&&!splitDomains(Q("d11_rcn").value)&&(b=!1);QE("c49",b)}var setTlsSecurityPendingCalls,setTlsSecurityDeleteCredentialContext;
1078
+function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1079
+{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1080
+setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1081
+b,c,d){200!=d?messagebox("","\u8bbe\u7f6e\u65f6\u95f4\u5931\u8d25\uff0c\u72b6\u6001="+d):0!=c.Body.ReturnValue?messagebox("","\u8bbe\u7f6e\u65f6\u95f4\u5931\u8d25\uff0c\u9519\u8bef\uff1a"+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",
1082
+a[1],setTlsSecurityResponse,0,1,a[1]);statusbox("TLS\u8bbe\u7f6e","\u6b63\u5728\u5e94\u7528\u65b0\u7684\u5b89\u5168\u8bbe\u7f6e...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1083
+function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","\u65e0\u6cd5\u8bbe\u7f6eTLS\u5b89\u5168\u6027\uff0c\u72b6\u6001="+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1084
+function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","\u65e0\u6cd5\u8bbe\u7f6eTLS\u5b89\u5168\u6027\uff0c\u72b6\u6001="+d):0!=a.Body.ReturnValue?messagebox("","\u65e0\u6cd5\u8bbe\u7f6eTLS\u5b89\u5168\u6027\uff0c\u9519\u8bef\uff1a"+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1085
+function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1086
+function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
1087
+function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabilities.status){xxWatchdog=a;for(var e in xxWatchdog.CIM_ConcreteDependency.responses)b=xxWatchdog.CIM_ConcreteDependency.responses[e],(c=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","CreationClassName"))&&"AMT_AgentPresenceWatchdog"==c.Value&&(d=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,a=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,
1088
+"@Name","PolicyConditionName").Value,d=getItem(xxWatchdog.AMT_AgentPresenceWatchdog.responses,"DeviceID",d),a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,"PolicyConditionName",a),d.transitions||(d.transitions=[]),d.transitions.push(a)),c&&"AMT_StateTransitionCondition"==c.Value&&(a=getItem(b.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyConditionName").Value,b=getItem(b.Dependent.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyActionName").Value,a=getItem(xxWatchdog.AMT_StateTransitionCondition.responses,
1089
+"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}var watchdogEnabledStates="\u672a\u77e5 \u5176\u4ed6 \u5df2\u542f\u7528 \u6b8b\u969c\u4eba\u58eb \u5173\u673a \u4e0d\u9002\u7528 \u5df2\u542f\u7528\u4f46\u79bb\u7ebf \u6d4b\u8bd5\u4e2d \u9012\u5ef6 \u505c\u987f \u5f00\u59cb".split(" "),watchdogMonitoredEntity="\u672a\u77e5 \u5176\u4ed6 \u64cd\u4f5c\u7cfb\u7edf \u64cd\u4f5c\u7cfb\u7edf\u542f\u52a8\u8fc7\u7a0b \u64cd\u4f5c\u7cfb\u7edf\u5173\u95ed\u8fc7\u7a0b \u56fa\u4ef6\u542f\u52a8\u8fc7\u7a0b BIOS\u5f15\u5bfc\u8fc7\u7a0b \u5e94\u7528 \u670d\u52a1\u5904\u7406\u5668".split(" ");
1090
+function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("\u6700\u5927\u770b\u95e8\u72d7",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" \u76d1\u5bdf\u8005");b+=TableEntry("\u6700\u5927\u603b\u52a8\u4f5c",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" \u884c\u52a8");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>\u7ba1\u7406\u82f1\u7279\u5c14®AMT\u4ee3\u7406\u72b6\u6001\u76d1\u89c6\u7a0b\u5e8f\u3002<br><br>";
1091
+if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>\u627e\u4e0d\u5230\u4ee3\u7406\u4eba\u72b6\u6001\u76d1\u89c6\u7a0b\u5e8f\u3002</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));
1092
+b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="\u6dfb\u52a0\u52a8\u4f5c..." onclick=addWatchdogAction(event,'+c+")>";a.transitions&&(b+='<input type=button style=float:right value="\u5220\u9664\u52a8\u4f5c..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+
1093
+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+="\uff1a\u8981\u8bb0\u5f55\u7684\u4e8b\u4ef6")}""!=d&&(b+="<div style=padding:12px>"+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("\u6dfb\u52a0\u770b\u95e8\u72d7...","AddWatchdog()"));b+="<br>";QH(60,b)}}
1094
+function getWatchdogTransitionStr(b){if(31==b)return"\u4efb\u4f55\u56fd\u5bb6";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1095
+function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("\u63cf\u8ff0",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("\u53d7\u76d1\u63a7\u5b9e\u4f53",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("\u5f53\u524d\u72b6\u6001",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("\u542f\u7528\u72b6\u6001",watchdogEnabledStates[b.EnabledState]);c+=
1096
+addHtmlValue("\u542f\u52a8\u95f4\u9694",b.StartupInterval+" \u79d2");c+=addHtmlValue("\u8d85\u65f6\u95f4\u9694",b.TimeoutInterval+" \u79d2");setDialogMode(11,format("\u770b\u95e8\u72d7{0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1097
+function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\u540d\u79f0</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="\u4ea7\u751f\u968f\u673a\u7684DeviceID">'+addLink("\u8bbe\u5907ID","GenerateWatchdogGuid()")+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\u542f\u52a8\uff08\u79d2\uff09</div></div>";
1098
+b+="<div style=height:26px;margin-top:4px><input id=wgtimeout style=float:right;width:240px maxlength=8 placeholder=60 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>\u8d85\u65f6\uff08\u79d2\uff09</div></div>";setDialogMode(11,"\u6dfb\u52a0\u770b\u95e8\u72d7",3,AddWatchdogOk,b);AddWatchdogUpdate()}function GenerateWatchdogGuid(){var b,c="";for(b=0;16>b;b++)c+=String.fromCharCode(random(255));Q("wgguid").value=guidToStr(rstr2hex(c));AddWatchdogUpdate()}
1099
+function AddWatchdogUpdate(){for(var b=(""==Q("wgstart").value||0<parseInt(Q("wgstart").value))&&(""==Q("wgtimeout").value||0<parseInt(Q("wgtimeout").value)),c=0,a=Q("wgguid").value.toLowerCase(),d=0;d<a.length;d++){var e=a.charCodeAt(d);45!=e&&(48<=e&&57>=e||97<=e&&102>=e?c++:b=!1)}32!=c&&(b=!1);QE("dlgOkButton",b)}
1100
+function AddWatchdogOk(){var b=Q("wgtimeout").value,c=Q("wgstart").value;""==b&&(b=60);""==c&&(c=3600);b={CreationClassName:0,DeviceID:btoa(hex2rstr(guidToStr(Q("wgguid").value.replace(/-/g,"")).replace(/-/g,""))),StartupInterval:c,SystemCreationClassName:0,SystemName:0,TimeoutInterval:b,MonitoredEntityDescription:Q("wgname").value};amtstack.Create("AMT_AgentPresenceWatchdog",b,AddWatchdogOk2)}
1101
+function AddWatchdogOk2(b,c,a,d){200!=d?messagebox("\u770b\u95e8\u72d7","\u65e0\u6cd5\u6dfb\u52a0\u770b\u95e8\u72d7\uff0c\u9519\u8bef\uff03"+d):PullWatchdog()}
1102
+function addWatchdogAction(b,c){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d;d="<table><td style=width:180px>\u4ece<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsa"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";d+="<td>\u81f3<br>";for(c in amtstack.WatchdogCurrentStates)d+="<input id=wgsb"+c+" type=checkbox onclick=addWatchdogActionUpdate()> "+amtstack.WatchdogCurrentStates[c]+"<br />";setDialogMode(11,"\u6dfb\u52a0\u770b\u95e8\u72d7\u52a8\u4f5c",
1103
+3,addWatchdogActionOk,d+"</table><br>\u6267\u884c\u52a8\u4f5c<br><input id=wgsevent type=checkbox checked onclick=addWatchdogActionUpdate()>\u5199\u5165\u4e8b\u4ef6\u65e5\u5fd7<br />",a);addWatchdogActionUpdate();haltEvent(b)}function addWatchdogActionUpdate(){var b=0,c=0,a;for(a in amtstack.WatchdogCurrentStates)1==Q("wgsa"+a).checked&&(b+=parseInt(a)),1==Q("wgsb"+a).checked&&(c+=parseInt(a));QE("dlgOkButton",0<b&&0<c&&1==Q("wgsevent").checked)}
1104
+function addWatchdogActionOk(b,c){var a=0,d=0,e;for(e in amtstack.WatchdogCurrentStates)1==Q("wgsa"+e).checked&&(a+=parseInt(e)),1==Q("wgsb"+e).checked&&(d+=parseInt(e));amtstack.AMT_AgentPresenceWatchdog_AddAction(a,d,Q("wgsevent").checked,null,null,AddWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}
1105
+function AddWatchdogActionResponse(b,c,a,d){200!=d?messagebox("\u770b\u95e8\u72d7\u52a8\u4f5c","\u65e0\u6cd5\u6dfb\u52a0\u770b\u95e8\u72d7\u64cd\u4f5c\uff0c\u9519\u8bef\uff03"+d):PullWatchdog()}function deleteWatchdogActions(b,c){setDialogMode(11,"\u5220\u9664\u770b\u95e8\u72d7\u52a8\u4f5c",3,deleteWatchdogActionsOk,"\u5220\u9664\u6b64\u770b\u95e8\u72d7\u7684\u6240\u6709\u64cd\u4f5c\uff1f",xxWatchdog.AMT_AgentPresenceWatchdog.responses[c]);haltEvent(b)}
1106
+function deleteWatchdogActionsOk(b,c){amtstack.AMT_AgentPresenceWatchdog_DeleteAllActions(deleteWatchdogActionResponse,null,0,{DeviceID:c.DeviceID})}function deleteWatchdogActionResponse(b,c,a,d){200!=d?messagebox("\u770b\u95e8\u72d7\u52a8\u4f5c","\u65e0\u6cd5\u5220\u9664\u770b\u95e8\u72d7\u64cd\u4f5c\uff0c\u9519\u8bef\uff03"+d):PullWatchdog()}
1107
+var xxSystemDefense=null,xxSystemDefenceLinkedPolicy={},xxUpdatingDefenseStats=!1,xxFilterStatistics=[{},{}],xxFilterStatisticsTimer=null,xxFilterStatisticsTimerActive=!1,xxSystemDefenceFilterEthernetTypes={2048:"\u6240\u6709IP\u6570\u636e\u5305",2054:"\u6240\u6709ARP\u6570\u636e\u5305"},xxSystemDefenceFilterIPTypes={4:"IPv4",6:"IPv6"},xxSystemDefenceFilterDesc={0:"\u5141\u8bb8\uff0c\u8ba1\u6570",1:"\u6389\u843d\uff0c\u8ba1\u6570",2:"\u901f\u7387\u9650\u5236",3:"\u5141\u8bb8",4:"\u4e0b\u964d"},xxSystemDefenceFilters=
1108
+{HdrProtocolID:1,HdrDestAddress:2,HdrDestMask:2,HdrSrcAddress:2,HdrSrcMask:2,HdrSrcPortStart:1,HdrSrcPortEnd:1,HdrDestPortStart:1,HdrDestPortEnd:1,HdrSrcAddressEndOfRange:2,"HdrDestAddressEndOfRange ":2,TCPFlagsOn:3,TCPFlagsOff:3};function PullSystemDefense(){amtFirstPull|=4;amtstack.BatchEnum(null,["AMT_SystemDefensePolicy","AMT_NetworkPortSystemDefensePolicy","AMT_Hdr8021Filter","AMT_IPHeadersFilter","AMT_NetworkFilter"],PullSystemDefenseResponse)}
1109
+function PullSystemDefenseResponse(b,c,a,d){200==d&&(xxSystemDefense=a,updateSystemDefense(),QV("go18",!0),urlvars.norefresh&&UpdateDefenseStats())}
1110
+function updateSystemDefense(){if(null!=xxSystemDefense){var b="";xxSystemDefenceLinkedPolicy={};for(var c in xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses){var a=xxSystemDefense.AMT_NetworkPortSystemDefensePolicy.responses[c],d=+getItem(a.Antecedent.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value.substring(27),a=getItem(xxSystemDefense.AMT_SystemDefensePolicy.responses,"InstanceID",a.Dependent.ReferenceParameters.SelectorSet.Selector.Value);xxSystemDefenceLinkedPolicy[d]=
1111
+a}b+=TableStart();c="<i>\u6ca1\u6709</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDefenceLinkedPolicy[0].PolicyName);b+=TableEntry("\u9ed8\u8ba4\u6709\u7ebf\u7b56\u7565",addLink(c,"changeDefaultPolicy(0)"));for(c=0;2>c;c++){var a=xxFilterStatistics[c],e;for(e in a)d=a[e],d+=" \u5305",b+=TableEntry((0==c?"\u6709\u7ebf":"\u65e0\u7ebf")+e,d)}b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px;border:0><br>\u7ba1\u7406\u82f1\u7279\u5c14®AMT\u7cfb\u7edf\u9632\u5fa1\u7b56\u7565\u3002<br><br>";
1112
+if(0==xxSystemDefense.AMT_SystemDefensePolicy.responses.length)b+="<div style=padding-left:15px><i>\u627e\u4e0d\u5230\u7cfb\u7edf\u9632\u5fa1\u7b56\u7565\u3002</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+
1113
+c+")><div style=padding-top:3px><b>"+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>\u7ba1\u7406\u82f1\u7279\u5c14®AMT\u7cfb\u7edf\u9632\u5fa1\u8fc7\u6ee4\u5668\u3002<br><br>";if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>\u627e\u4e0d\u5230\u7cfb\u7edf\u9632\u5fa1\u8fc7\u6ee4\u5668\u3002</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=
1114
+xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||(d="\u6240\u6709\u4ee5\u592a\u7f51\u534f\u8bae"+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" \u5728"+a.FilterProfileData+" \u5305/\u79d2"),1==a.ActionEventOnMatch&&(d+="\uff0c\u6bd4\u8d5b\u8fdb\u884c\u4e2d"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+
1115
+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=xxSystemDefense.AMT_IPHeadersFilter.responses[c];(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="\u6240\u6709\u4ee5\u592a\u7f51\u534f\u8bae"+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==a.FilterProfile&&(d+=" \u5728"+a.FilterProfileData+" \u5305/\u79d2");1==a.ActionEventOnMatch&&(d+="\uff0c\u6bd4\u8d5b\u8fdb\u884c\u4e2d");var q=0;for(e in xxSystemDefenceFilters)a[e]&&
1116
+q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("\u6dfb\u52a0\u8fc7\u6ee4\u5668...","AddDefenseFilter()")+AddButton("\u65b0\u589e\u653f\u7b56...","AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=
1117
+!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1118
+function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1119
+(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1120
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1121
+function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>\u6ca1\u6709";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1122
+"\u9ed8\u8ba4\u7cfb\u7edf\u9632\u5fa1\u7b56\u7565",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>\u9ed8\u8ba4\u7b56\u7565</div></div>",b)}}
1123
+function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
1124
+'</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="Dependent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+
1125
+d.InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",-1==a?PullSystemDefense:function(){});0<=a&&amtstack.Create("AMT_NetworkPortSystemDefensePolicy",{Antecedent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="DeviceID">\u82f1\u7279\u5c14\uff08R\uff09AMT\u4ee5\u592a\u7f51\u7aef\u53e3 '+
1126
+c+"</Selector></SelectorSet></ReferenceParameters>",Dependent:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemDefensePolicy</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">'+
1127
+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID+"</Selector></SelectorSet></ReferenceParameters>"},changeDefaultPolicyOk2)}function changeDefaultPolicyOk2(b,c,a,d){200!=d?messagebox("\u9ed8\u8ba4\u7cfb\u7edf\u9632\u5fa1\u7b56\u7565","\u65e0\u6cd5\u8bbe\u7f6e\u653f\u7b56\uff0c\u9519\u8bef"+d):PullSystemDefense()}
1128
+function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;margin-top:4px><input id=filtername style=float:right;width:260px maxlength=16 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u540d\u79f0</div></div><div style=height:26px;margin-top:4px><select id=filtertype style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\u4ee5\u592a\u7f51IP\u6570\u636e\u5305\u8fc7\u6ee4\u5668<option value=1>\u4ee5\u592a\u7f51ARP\u6570\u636e\u5305\u8fc7\u6ee4\u5668<option value=2>IPv4\u6570\u636e\u5305\u8fc7\u6ee4\u5668<option value=3>IPv6\u6570\u636e\u5305\u8fc7\u6ee4\u5668</select><div style=padding-top:4px>\u7c7b\u578b</div></div>";b+=
1129
+'<div style=height:26px;margin-top:4px id=ipfilterdiv><input id=ipfilter style=float:right;width:260px placeholder="\u53ef\u9009\u89c4\u5219" onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u5339\u914d\u89c4\u5219</div></div>';b+="<div style=height:26px;margin-top:4px><select id=filterdir style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\u51fa\u7ad9/\u53d1\u9001<option value=1>\u5165\u7ad9/\u63a5\u6536</select><div style=padding-top:4px>\u65b9\u5411</div></div>";
1130
+b+="<div style=height:26px;margin-top:4px><select id=filterprofile style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=0>\u5141\u8bb8\uff0c\u8ba1\u6570<option value=1>\u6389\u843d\uff0c\u8ba1\u6570<option value=2>\u901f\u7387\u9650\u5236<option value=3>\u5141\u8bb8<option value=4>\u4e0b\u964d</select><div style=padding-top:4px>\u884c\u52a8</div></div>";b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>\u5305/\u79d2</div></div>";
1131
+b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>\u6ca1\u505a\u4ec0\u4e48<option value=1>\u6bd4\u8d5b\u4e2d\u7684\u8d5b\u4e8b</select><div style=padding-top:4px>\u4e8b\u4ef6\u7c3f</div></div>";setDialogMode(11,"\u6dfb\u52a0\u7cfb\u7edf\u9632\u5fa1\u8fc7\u6ee4\u5668",3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1132
+function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1133
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="\u4eba\u7c7b\u53d1\u5c55\u62a5\u544a"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&
1134
+(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}
1135
+function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("\u6dfb\u52a0\u7cfb\u7edf\u9632\u5fa1\u8fc7\u6ee4\u5668","\u65e0\u6cd5\u6dfb\u52a0\u8fc7\u6ee4\u5668\uff0c\u9519\u8bef\uff03"+d):PullSystemDefense()}
1136
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="\u4ee5\u592a\u7f51\u6d41\u91cf",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="\u6240\u6709\u4ee5\u592a\u7f51\u534f\u8bae"+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="IP\u6d41\u91cf",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="\u5168IP\u534f\u8bae"+d.HdrIPVersion));var p;p=""+addHtmlValue("\u540d\u79f0",EscapeHtml(d.Name));
1137
+p+=addHtmlValue("\u7c7b\u578b",e);p+=addHtmlValue("\u5339\u914d\u6d41\u91cf",a);p+=addHtmlValue("\u65b9\u5411",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("\u8fc7\u6ee4"+a,e));p+=addHtmlValue("\u6bd4\u8d5b\u4e2d\u7684\u8d5b\u4e8b",
1138
+1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,"\u4ee5\u592a\u7f51\u8fc7\u6ee4\u5668"+d.InstanceID,5,showFilterDetailsOk,p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("\u5220\u9664\u8fc7\u6ee4\u5668","\u65e0\u6cd5\u5220\u9664\u8fc7\u6ee4\u5668\uff0c\u8bf7\u786e\u4fdd\u672a\u4f7f\u7528\u5b83\u3002"):PullSystemDefense()}var xxAddDefensePolicyFilters;
1139
+function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>\u540d\u79f0</div></div><div style=height:26px;margin-top:4px><select id=policytx title="\u5bf9\u51fa\u7ad9\u6d41\u91cf\u91c7\u53d6\u7684\u9ed8\u8ba4\u64cd\u4f5c" style=float:right;width:133px><option value=0>Allow<option value=1>\u4e0b\u964d<option value=2>\u5141\u8bb8\u8ba1\u6570<option value=3>\u843d\u6570<option value=4>\u5141\u8bb8\uff0c\u8ba1\u6570\uff0c\u4e8b\u4ef6<option value=5>\u6389\u843d\uff0c\u8ba1\u6570\uff0c\u4e8b\u4ef6</select><select id=policyrx style=float:right;width:133px title="\u5bf9\u5165\u7ad9\u6d41\u91cf\u91c7\u53d6\u7684\u9ed8\u8ba4\u64cd\u4f5c"><option value=0>\u5141\u8bb8<option value=1>\u4e0b\u964d<option value=2>\u5141\u8bb8\u8ba1\u6570<option value=3>\u843d\u6570<option value=4>\u5141\u8bb8\uff0c\u8ba1\u6570\uff0c\u4e8b\u4ef6<option value=5>\u6389\u843d\uff0c\u8ba1\u6570\uff0c\u4e8b\u4ef6</select><div style=padding-top:4px>\u9ed8\u8ba4\u53d1\u9001/\u63a5\u6536</div></div>';
1140
+b+="<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1141
+b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>\u6dfb\u52a0\u8fc7\u6ee4\u5668</div></div>"}setDialogMode(11,"\u6dfb\u52a0\u7cfb\u7edf\u9632\u5fa1\u7b56\u7565",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}
1142
+function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}function removeFilterButton(b){xxAddDefensePolicyFilters.splice(b,1);AddDefensePolicyUpdate()}
1143
+function AddDefensePolicyUpdate(){var b=0<Q("policyname").value.split(":")[0].length;QE("c49",b);if(0==xxAddDefensePolicyFilters.length)QH("policyFilters","<br><i>\u6b64\u7b56\u7565\u4e0d\u5305\u542b\u4efb\u4f55\u8fc7\u6ee4\u5668\u3002</i><br><br>");else{var b="",c;for(c in xxAddDefensePolicyFilters)b+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("\u53bb\u6389","removeFilterButton("+c+")")+"</div><div style=padding-top:3px;max-width:260px;overflow:hidden><b>"+
1144
+GetFilterById(xxAddDefensePolicyFilters[c]).Name+"</b></div></div>";QH("policyFilters",b)}}function GetFilterById(b){for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];if(a.InstanceID==b)return a}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)if(a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],a.InstanceID==b)return a}
1145
+function AddDefensePolicyOk(){var b=Q("policytx").value,c=Q("policyrx").value,a=0,d=Q("policyname").value.split(":");2==d.length&&(a=parseInt(d[1]));b={"InstanceID ":0,PolicyName:d[0],PolicyPrecedence:a,TxDefaultCount:1<b,TxDefaultDrop:1==b%2,TxDefaultMatchEvent:3<b,RxDefaultCount:1<c,RxDefaultDrop:1==c%2,RxDefaultMatchEvent:3<c};0<xxAddDefensePolicyFilters.length&&(b.FilterCreationHandles=xxAddDefensePolicyFilters);amtstack.Create("AMT_SystemDefensePolicy",b,AddDefensePolicyOk2)}
1146
+function AddDefensePolicyOk2(b,c,a,d){200!=d?messagebox("\u6dfb\u52a0\u7cfb\u7edf\u9632\u5fa1\u7b56\u7565","\u65e0\u6cd5\u6dfb\u52a0\u7b56\u7565\uff0c\u9519\u8bef\u7f16\u53f7"+d):PullSystemDefense()}
1147
+function showPolicyDetails(b){if(!xxdialogMode){var c=xxSystemDefense.AMT_SystemDefensePolicy.responses[b],a;a=""+addHtmlValue("\u540d\u79f0",EscapeHtml(c.PolicyName));0!=c.PolicyPrecedence&&(a+=addHtmlValue("\u4f18\u5148\u987a\u5e8f",c.PolicyPrecedence));var d=1==c.TxDefaultDrop?"\u4e0b\u964d":"\u5141\u8bb8";1==c.TxDefaultCount&&(d+="\uff0c\u8ba1\u6570");1==c.TxDefaultMatchEvent&&(d+="\uff0c\u6d3b\u52a8");a+=addHtmlValue("\u9ed8\u8ba4\u53d1\u9001\u52a8\u4f5c",d);d=1==c.RxDefaultDrop?"Drop":"Allow";
1148
+1==c.RxDefaultCount&&(d+=", Count");1==c.RxDefaultMatchEvent&&(d+=", Event");a+=addHtmlValue("\u9ed8\u8ba4\u63a5\u6536\u52a8\u4f5c",d);if(c.FilterCreationHandles)for(b in c.FilterCreationHandles)a+=addHtmlValue("\u8fc7\u6ee4\u5668\u7f16\u53f7"+(+b+1),GetFilterById(c.FilterCreationHandles[b]).Name);setDialogMode(11,format("\u653f\u7b56\u7f16\u53f7",c.InstanceID.substring(20)),5,showPolicyDetailsOk,a,c)}}
1149
+function showPolicyDetailsOk(b,c){2==b&&amtstack.Delete("AMT_SystemDefensePolicy",c,deleteDefensePolicy)}function deleteDefensePolicy(b,c,a,d){200!=d?messagebox("\u5220\u9664\u653f\u7b56","\u65e0\u6cd5\u5220\u9664\u653f\u7b56\uff0c\u8bf7\u786e\u4fdd\u8be5\u653f\u7b56\u672a\u88ab\u4f7f\u7528\u3002"):PullSystemDefense()}var xxWireless;
1150
+function PullWireless(){amtFirstPull|=2;-1!=amtwirelessif&&amtstack.BatchEnum("",["*CIM_WiFiPortCapabilities","*CIM_WiFiPort","*CIM_WiFiEndpoint","CIM_WiFiEndpointSettings"],processWireless)}function wifiRefresh(){xxdialogMode||PullWireless()}
1151
+var xxWifiState={3:"\u6b8b\u969c\u4eba\u58eb",32768:"\u5728S0\u4e2d\u542f\u7528",32769:"\u5728S0\uff0cSx / AC\u4e2d\u542f\u7528"},xxRadioState={2:"\u5f00\u542f\uff0c\u5df2\u8fde\u63a5",3:"\u5173",6:"\u5f00\u542f\uff0c\u5df2\u65ad\u5f00"},xxWifiAuthenticationMethod={1:"\u5176\u4ed6",2:"\u6253\u5f00",3:"\u5171\u7528\u91d1\u94a5",4:"WPA PSK",5:"WPA IEEE 802.1x",6:"WPA2 PSK",7:"WPA2 IEEE 802.1x"},xxWifiEncryptionMethod={1:"\u5176\u4ed6",2:"WEP",3:"TKIP-RC4",4:"\u8ba4\u8bc1\u534f\u8bae",5:"\u6ca1\u6709"};
1152
+function processWireless(b,c,a,d){xxWireless=200==d?a:void 0;updateSystemStatus();showWirelessInfo()}
1153
+function showWirelessInfo(){if(xxWireless){var b,c,a="",d,e;if(xxWireless.CIM_WiFiPortCapabilities.response){e="<br><h2>\u65e0\u7ebf\u914d\u7f6e\u6587\u4ef6</h2>"+TableStart2();e+="<tr><td class=r2 style=padding-left:15px><br>\u82f1\u7279\u5c14®AMT\u5c06\u7528\u4e8e\u7f51\u7edc\u8fde\u63a5\u7684\u65e0\u7ebf\u914d\u7f6e\u6587\u4ef6\u3002<br><br>";for(b=a=0;256>b;b++)for(c in xxWireless.CIM_WiFiEndpointSettings.responses)d=xxWireless.CIM_WiFiEndpointSettings.responses[c],1!=d.AuthenticationMethod&&
1154
+d.Priority==b&&(e+="<div class=itemBar onclick=showWifiDetails("+c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod[d.AuthenticationMethod]+", "+xxWifiEncryptionMethod[d.EncryptionMethod]+" ",xxAccountAdminName&&(e+=AddButton2("\u53bb\u6389",'wifiRemoveButton("'+c+'")')),e+="</div><div style=padding-top:3px><b>"+EscapeHtml(d.ElementName)+"</b></div></div>",a++);0==a&&(e+="<i>\u6ca1\u6709\u65e0\u7ebf\u914d\u7f6e\u6587\u4ef6</i><br>");e+="<br><td class=r2>";e=xxAccountAdminName?
1155
+e+TableEnd(AddButton("\u65b0\u7684\u914d\u7f6e\u6587\u4ef6","showWifiNewProfile()")):e+TableEnd("");QH(22,e+"<br>")}}}function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"\u65e0\u7ebf\u72b6\u6001",3,wifiStateDlg,b)}}
1156
+function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1157
+function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("\u4e2a\u4eba\u8d44\u6599\u540d\u79f0",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("\u8ba4\u8bc1\u65b9\u5f0f",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("\u52a0\u5bc6",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("\u4f18\u5148",b.Priority);messagebox("\u65e0\u7ebf\u914d\u7f6e\u6587\u4ef6",
1158
+c+"</div>")}}function wifiRemoveButton(b){xxdialogMode||(QH(66,format("\u5220\u9664\u65e0\u7ebf\u914d\u7f6e\u6587\u4ef6\u201c {0} \u201d\uff1f",xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"\u65e0\u7ebf\u914d\u7f6e\u6587\u4ef6",3,function(){removeWifiButtonEx(b)}))}function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}
1159
+function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1160
+function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"\u6dfb\u52a0\u65e0\u7ebf\u914d\u7f6e\u6587\u4ef6",3,function(){addWifiProfile()});updateWifiDialog()}}
1161
+function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1162
+PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1163
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1164
+c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1165
+var DMTFCPUStatus="\u672a\u77e5 \u5df2\u542f\u7528 \u88ab\u7528\u6237\u7981\u7528 \u88abBIOS\u7981\u7528\uff08POST\u9519\u8bef\uff09 \u95f2 \u5176\u4ed6".split(" "),DMTFMemType="\u672a\u77e5 \u5176\u4ed6 \u8bb0\u5fc6\u4f53 \u540c\u6b65DRAM \u7f13\u5b58DRAM \u57c3\u591a \u5185\u5b58 \u865a\u62dfRAM SRAM \u5185\u5b58 \u53ea\u8bfb\u5b58\u50a8\u5668 \u95ea EEPROM \u524d\u9762\u677f \u53ea\u8bfb\u5b58\u50a8\u5668 \u8bb0\u5fc6\u4f53 3DRAM \u5185\u5b58 SGRAM \u5185\u5b58 DDR DDR-2 \u5185\u5b58 FB-DIMM DDR3 FBD2 DDR4 \u4f4e\u529f\u8017DDR LPDDR2 LPDDR3 LPDDR4".split(" "),DMTFMemFormFactor=
1166
+" \u5176\u4ed6 \u672a\u77e5 SIMM \u555c \u82af\u7247 \u8638 \u538b\u7f29 \u4e13\u6709\u5361 \u5185\u5b58\u6761 TSOP \u6392\u85af\u6761 RIMM SODIMM \u65af\u91cc\u59c6 FB-DIM".split(" "),DMTFProcFamilly={191:"\u82f1\u7279\u5c14®\u9177\u777f™2\u53cc\u6838\u5904\u7406\u5668",192:"\u82f1\u7279\u5c14®\u9177\u777f™2 Solo\u5904\u7406\u5668",193:"\u82f1\u7279\u5c14®\u9177\u777f™2\u81f3\u5c0a\u5904\u7406\u5668",194:"\u82f1\u7279\u5c14®\u9177\u777f™2\u56db\u6838\u5904\u7406\u5668",
1167
+195:"\u82f1\u7279\u5c14®\u9177\u777f™2\u81f3\u5c0a\u79fb\u52a8\u5904\u7406\u5668",196:"\u82f1\u7279\u5c14®\u9177\u777f™2\u53cc\u6838\u79fb\u52a8\u5904\u7406\u5668",197:"\u82f1\u7279\u5c14®\u9177\u777f™2 Solo\u79fb\u52a8\u5904\u7406\u5668",198:"\u82f1\u7279\u5c14®\u9177\u777f™i7\u5904\u7406\u5668",199:"\u53cc\u6838Intel®Celeron®\u5904\u7406\u5668"},HardwareInventory;
1168
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("\u6551...","SaveHardwareLog()")+" \u786c\u4ef6\u4fe1\u606f\u5728\u7cfb\u7edf\u542f\u52a8\u65f6\u6536\u96c6\u3002");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>\u5e73\u53f0</h2>"+FullTable({"\u7535\u8111\u578b\u53f7":c.Model,
1169
+"\u5236\u9020\u5546":c.Manufacturer,"\u7248":c.Version,"\u5e8f\u5217\u53f7":c.SerialNumber,"\u7cfb\u7edf\u7f16\u53f7":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>\u8e22\u811a\u7ebf</h2>";b+=FullTable({"\u5236\u9020\u5546":d.Manufacturer,"\u4ea7\u54c1\u540d\u79f0":d.Model,"\u7248":d.Version,"\u5e8f\u5217\u53f7":d.SerialNumber,"\u8d44\u4ea7\u6807\u7b7e":d.Tag,"\u53ef\u66f4\u6362\uff1f":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>\u7684BIOS</h2>";b+=FullTable({"\u4f9b\u5e94\u5546":a.CIM_BIOSElement.response.Manufacturer,
1170
+"\u7248":q,"\u53d1\u5e03\u65e5\u671f":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>\u5904\u7406\u5668 "+(parseInt(e)+1)+"</h2>",b+=FullTable({"\u5236\u9020\u5546":trademarks(d.Manufacturer),"\u5bb6\u5ead":DMTFProcFamilly[c.Family],"\u7248":trademarks(d.Version),"\u6700\u5927\u63d2\u5ea7\u901f\u5ea6":c.MaxClockSpeed+" \u5146\u8d6b",
1171
+"\u72b6\u6001":DMTFCPUStatus[c.CPUStatus]},"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=a.CIM_PhysicalMemory.responses[e],b+="<h2>\u8bb0\u5fc6\u4f53\u6a21\u7ec4 "+(+e+1)+"</h2>",b+=FullTable({"\u94f6\u884c\u6807\u7b7e":c.BankLabel,"\u5236\u9020\u5546":c.Manufacturer,"\u5e8f\u5217\u53f7":c.SerialNumber,"\u5c3a\u5bf8":parseInt(c.Capacity/1048576)+" \u5146\u5b57\u8282","\u6784\u6210\u56e0\u7d20":DMTFMemFormFactor[c.FormFactor],"\u7c7b\u578b":DMTFMemType[c.MemoryType],"\u8d44\u4ea7\u6807\u7b7e":c.Tag,
1172
+"\u96f6\u4ef6\u53f7":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>\u5b58\u50a8\u4ecb\u8d28 "+(parseInt(e)+1)+"</h2>",b+=FullTable({"\u6a21\u578b":d.Model,"\u5e8f\u5217\u53f7":""==d.SerialNumber?"Unknown":d.SerialNumber,"\u5c3a\u5bf8":parseInt(Math.round(1E3*c.MaxMediaSize/1048576))+" \u5146\u5b57\u8282"},"");b+="<br>";QH(18,b);updateSystemStatus()}}
1173
+function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","\u82f1\u7279\u5c14AMT\u786c\u4ef6\u4fe1\u606f",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}
1174
+function showPowerPolicyDlg(b){if(!xxdialogMode){for(var c="",a=0;a<AmtSystemPowerSchemes.length;a++)c+='<input type=radio name=powerpolicy value="'+AmtSystemPowerSchemes[a].InstanceID+'" '+(AmtSystemPowerSchemes[a].SchemeGUID==b?" checked":"")+">"+AmtSystemPowerSchemes[a].Description+"<br>";setDialogMode(11,"\u82f1\u7279\u5c14®AMT\u7535\u6e90\u7b56\u7565",3,showPowerPolicyDlgOk,c)}}
1175
+function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagName("input");c<a.length;c++)"powerpolicy"==a[c].name&&a[c].checked&&(b=a[c].value);amtstack.AMT_SystemPowerScheme_SetPowerScheme(showPowerPolicyDlgOkDone,b)}function showPowerPolicyDlgOkDone(b,c,a,d){200==d&&PullSystemStatus()}var xxAccountAdminName,xxAccountRealmInfo,xxAccountEnabledInfo={},xxAccountFetch,showHiddenAccounts=!1;
1176
+function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1177
+function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1178
+function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1179
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>\u7ba1\u7406\u6b64\u8ba1\u7b97\u673a\u7684\u82f1\u7279\u5c14®AMT\u7528\u6237\u5e10\u6237\u3002<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||
1180
+!e){var p="";if(999!=a.AccessPermission){2==q&&(p+="\u6b8b\u75be\u4eba");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a["\u5883\u754c"][c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="\u5ba1\u6838\u5458");p=0<=a.Realms.indexOf(3)?p+"\u7ba1\u7406\u5458":1==k?p+"1\u4e2a\u5883\u754c":p+(k+" \u9886\u57df")}else p+="\u7ba1\u7406\u5458",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+
1181
+a.Handle+","+q+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("\u7f16\u8f91...","changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="\u5207\u6362\u9690\u85cf\u7684\u5e10\u6237" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+
1182
+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");xxAccountAdminName&&(c+=AddButton("\u65b0\u8d26\u6237","newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1183
+function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1184
+function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"\u7f16\u8f91\u8d26\u6237",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1185
+function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"\u65b0\u8d26\u6237",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1186
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("\u5e10\u6237\u9519\u8bef","\u65e0\u6548\u7684\u53c2\u6570");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&a.push(r);null==
1187
+b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1188
+function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">\u7ba1\u7406\u5458</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1189
+function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["\u4ec5\u672c\u5730","\u4ec5\u7f51\u7edc","\u5168\u90e8\uff08\u672c\u5730\u548c\u7f51\u7edc\uff09"];
1190
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("\u540d\u79f0",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("\u5dde",1==xxAccountEnabledInfo[b].Enabled?"\u5df2\u542f\u7528":"\u6b8b\u969c\u4eba\u58eb"));if(e==xxAccountAdminName)a+=addHtmlValue("\u5141\u8bb8","\u7ba1\u7406\u5458");else{var a=a+addHtmlValue("\u5141\u8bb8",xxUserPermissions[c.AccessPermission]),q=
1191
+"";if(0<=c.Realms.indexOf(3))q="\u7ba1\u7406\u5458",0<=c.Realms.indexOf(20)&&(q+="\u5ba1\u8ba1\u5458");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+="\uff0c"),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="\u6ca1\u6709");a+=addHtmlValue("\u5883\u754c","")+"<b>"+q+"</b>"}messagebox("\u5e10\u6237"+e,a+"</div>")}}
1192
+function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("\u6d4f\u89c8\u5668",c,browserResponse,null,!0))}
1193
+function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>\uff08\u7a7a\uff09":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>\u9519\u8bef\u7f16\u53f7"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1194
+function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1195
+function onTerminalStateChange(b,c){c4.value=0==c?"\u8fde\u63a5":"\u65ad\u5f00";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1196
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["UTF8\u7ec8\u7aef","\u6269\u5c55ASCII","\u82f1\u7279\u5c14ASCII"];
1197
+function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["\u82f1\u7279\u5c14\uff08F10 = ESC + [OM\uff09","\u5907\u7528\uff08F10 = ESC + 0\uff09","VT100 +\uff08F10 = ESC + [OY\uff09"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1198
+function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="\u5982\u679c",terminal.m.lineFeed="\n"):(Q(32).value="CR +\u4f4e\u9891",terminal.m.lineFeed="\r\n")}
1199
+function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="\u505c\u6b62\u6355\u6349";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),
1200
+b+".txt")}delete terminal.m.capture;c3.value="\u5f00\u59cb\u6355\u6349"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"\u7cca",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
1201
+function webRtcDesktopReset(){if(null!=webRtcDesktop){null!=webRtcDesktop.softdesktop&&(webRtcDesktop.softdesktop.Stop(),webRtcDesktop.softdesktop=null);if(null!=webRtcDesktop.webchannel){try{webRtcDesktop.webchannel.close()}catch(b){}webRtcDesktop.webchannel=null}if(null!=webRtcDesktop.webrtc){try{webRtcDesktop.webrtc.close()}catch(b){}webRtcDesktop.webrtc=null}webRtcDesktop=null;desktop.m.hold(!1);updateDesktopState();p24files=null;p24downloadFileCancel();p24uploadFileCancel();QV("go24",!1);24==
1202
+currentView&&go(14)}}function connectDesktopButton(b){desktop.disconnectCode=0;connectDesktop(b)}var connectDesktopConsent=!1;
1203
+function connectDesktop(b){desktop&&!xxdialogMode&&(connectDesktopConsent=!1,0==desktop.State?!0!==b&&5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&4294967295==amtsysstate.IPS_OptInService.response.OptInRequired?(connectDesktopConsent=!0,amtstack.Get("IPS_OptInService",powerActionResponse0,0,1)):(desktop.m.useRLE=0!=(desktopsettings.encflags&1),desktop.m.bpp=desktopsettings.encflags&2?2:1,desktop.m.graymode=0!=(desktopsettings.encflags&
1204
+4),desktop.m.useZLib=0!=(desktopsettings.encflags&8),desktop.m.showmouse=desktopsettings.showmouse,desktop.m.onScreenSizeChange=center,desktop.m.onKvmData=function(b){var a=null;try{a=JSON.parse(b)}catch(d){}null!=a&&null!=a.action&&("restart"==a.action?(webRtcDesktopReset(),desktop.m.sendKvmData(JSON.stringify({action:"present",ver:1}))):"present"==a.action&&null==webRtcDesktop?(webRtcDesktop={platform:a.platform},"undefined"!==typeof RTCPeerConnection?webRtcDesktop.webrtc=new RTCPeerConnection(null):
1205
+"undefined"!==typeof webkitRTCPeerConnection&&(webRtcDesktop.webrtc=new webkitRTCPeerConnection(null)),webRtcDesktop.webchannel=webRtcDesktop.webrtc.createDataChannel("\u6570\u636e\u901a\u9053",{}),webRtcDesktop.webchannel.onopen=function(){urlvars&&urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Open");desktop.m.hold(!0);webRtcDesktop.webRtcActive=!0;webRtcDesktop.softdesktop=CreateKvmDataChannel(webRtcDesktop.webchannel,CreateAgentRemoteDesktop("Desk",Q(8)),desktop.m);webRtcDesktop.softdesktop.m.setRotation(desktop.m.rotation);
1206
+desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopsettings.quality);desktopsettings.scaling&&(webRtcDesktop.softdesktop.m.ScalingLevel=desktopsettings.scaling);webRtcDesktop.softdesktop.Start();updateDesktopState();QV("go24",!0);downloadFile=null;p24files=webRtcDesktop.softdesktop;p24targetpath="";webRtcDesktop.softdesktop.onControlMsg=onFilesControlData;webRtcDesktop.softdesktop.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:""}))},webRtcDesktop.webchannel.onclose=
1207
+function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1208
+webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1209
+urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1210
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1211
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1212
+function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1213
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"\u8fde\u63a5":"\u65ad\u5f00";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("\u8fdc\u7a0b\u684c\u9762","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("\u8fdc\u7a0b\u684c\u9762","The device indicated that this type of connection of not supported."):
1214
+5E4==b.disconnectCode?messagebox("\u8fdc\u7a0b\u684c\u9762","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1215
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b="\uff0c\u8f6fKVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"\u8fdc\u7a0b\u684c\u9762\u8bbe\u7f6e",3,showDesktopSettingsChanged))}
1216
+function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1217
+1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1218
+function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1219
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1220
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1221
+"8px"),center()))}
1222
+function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"\u8fdc\u7a0b\u952e\u76d8\u8f93\u5165",3,showDeskTypeEx,'<div>\u8f93\u5165\u6587\u672c\uff0c\u7136\u540e\u5355\u51fb\u201c\u786e\u5b9a\u201d\u4ee5\u4f7f\u7528\u7f8e\u5f0f\u82f1\u8bed\u952e\u76d8\u8fdc\u7a0b\u8f93\u5165\u6587\u672c\u3002\u5728\u7ee7\u7eed\u64cd\u4f5c\u4e4b\u524d\uff0c\u8bf7\u786e\u4fdd\u5c06\u8fdc\u7a0b\u5149\u6807\u653e\u7f6e\u5728\u6b63\u786e\u7684\u4f4d\u7f6e\u3002<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1223
+var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1224
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1225
+var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1226
+1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1227
+function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1228
+function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1229
+function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1230
+function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1231
+function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1232
+function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1233
+for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1234
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>\u6839</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+'">'+EscapeHtml(r.substring(0,
1235
+70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1236
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1237
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1238
+function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1239
+function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1240
+function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="\u5168\u9009",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||0==d));
1241
+QE("p24NewFolderButton",0<p24filetreelocation.length||0==d);QE("p24UploadButton",0<p24filetreelocation.length||0==d);QE("p24RenameFileButton",1==b&&(0<p24filetreelocation.length||0==d));QE("p24SelectAllButton",0<c);Q("p24SelectAllButton").value=0<b?"\u9009\u62e9\u65e0":"\u5168\u9009";QE("p24RefreshButton",!0);QE("p24CutButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24CopyButton",0<b&&b==a&&(0<p24filetreelocation.length||0==d));QE("p24PasteButton",(0<p24filetreelocation.length||0==d)&&
1242
+null!=p24clipboard&&0<p24clipboard.length)}}function p24getFileSelCount(b){for(var c=0,a=document.getElementsByName("fd"),d=0;d<a.length;d++)!a[d].checked||0==b&&"3"!=a[d].attributes.file.value||c++;return c}function p24getFileCount(){return document.getElementsByName("fd").length}function p24selectallfile(){for(var b=0==p24getFileSelCount(),c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked=b;p24setActions()}
1243
+function p24createfolder(){setDialogMode(11,"\u65b0\u5efa\u6587\u4ef6\u5939",3,p24createfolderEx,"<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% />");focusTextBox("p24renameinput");p24fileNameCheck()}function p24createfolderEx(){p24files.sendCtrlMsg(JSON.stringify({action:"mkdir",reqid:1,path:p24filetreelocation.join("/")+"/"+Q("p24renameinput").value}));p24folderup(999)}
1244
+function p24deletefile(){var b=p24getFileSelCount();setDialogMode(11,"\u5220\u9664",3,p24deletefileEx,1<b?"Delete "+b+" selected items?":"Delete selected item?")}function p24deletefileEx(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);p24files.sendCtrlMsg(JSON.stringify({action:"rm",reqid:1,path:p24filetreelocation.join("/"),delfiles:b}));p24folderup(999)}
1245
+function p24renamefile(){for(var b,c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&(b=p24filetree.dir[c[a].value].n);setDialogMode(11,"\u6539\u540d",3,p24renamefileEx,'<input type=text id=p24renameinput maxlength=64 onkeyup=p24fileNameCheck(event) style=width:100% value="'+b+'" />',{action:"rename",path:p24filetreelocation.join("/"),oldname:b});focusTextBox("p24renameinput");p24fileNameCheck()}
1246
+function p24renamefileEx(b,c){c.newname=Q("p24renameinput").value;p24files.sendCtrlMsg(JSON.stringify(c));p24folderup(999)}function p24fileNameCheck(b){var c=isFilenameValid(Q("p24renameinput").value);QE("c49",c);1==c&&null!=b&&24==b.keyCode&&dialogclose(1)}
1247
+function p24uploadFile(){setDialogMode(11,"\u4e0a\u4f20\u6587\u4ef6",3,p24uploadFileEx,"<input type=file name=files id=p24uploadinput style=width:100% multiple=multiple onchange=\"updateUploadDialogOk('p24uploadinput')\" />");updateUploadDialogOk("p24uploadinput")}function p24uploadFileEx(){p24doUploadFiles(Q("p24uploadinput").files)}function updateUploadDialogOk(b){QE("c49",""!=Q(b).value)}var p24clipboard=null,p24clipboardFolder=null,p24clipboardCut=0;
1248
+function p24copyFile(b){var c=document.getElementsByName("fd");p24clipboard=[];p24clipboardCut=b;p24clipboardFolder=p24targetpath;for(b=0;b<c.length;b++)c[b].checked&&"3"==c[b].attributes.file.value&&p24clipboard.push(p24filetree.dir[c[b].value].n);p24updateClipview()}
1249
+function p24pasteFile(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Confim "+(0==p24clipboardCut?"copy":"move")+" of "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" to this location?");setDialogMode(11,"\u7cca",3,p24pasteFileEx,b)}
1250
+function p24pasteFileEx(){p24files.sendCtrlMsg(JSON.stringify({action:0==p24clipboardCut?"copy":"move",reqid:1,scpath:p24clipboardFolder,dspath:p24targetpath,names:p24clipboard}));p24folderup(999);1==p24clipboardCut&&(p24clipboardFolder=p24clipboard=null,p24clipboardCut=0,p24updateClipview())}
1251
+function p24updateClipview(){var b="";null!=p24clipboard&&0<p24clipboard.length&&(b="Holding "+p24clipboard.length+" entrie"+(1<p24clipboard.length?"s":"")+" for "+(0==p24clipboardCut?"copy":"move")+", <a onclick=p24clearClip() style=cursor:pointer>Clear</a>.");QH("p24bottomstatus",b);p24setActions()}function p24clearClip(){p24clipboardFolder=p24clipboard=null;p24clipboardCut=0;p24updateClipview()}
1252
+function p24fileDragDrop(b){haltEvent(b);QV("p24bigfail",!1);QV("p24bigok",!1);null!=b.dataTransfer&&0!=b.dataTransfer.files.length&&null!=p24filetree&&(0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform||p24doUploadFiles(b.dataTransfer.files))}var p24dragtimer=null;
1253
+function p24fileDragOver(b){haltEvent(b);null!=p24dragtimer&&(clearTimeout(p24dragtimer),p24dragtimer=null);b=null!=p24filetree;0==p24filetreelocation.length&&"win32"==webRtcDesktop.platform&&(b=!1);QV("p24bigok",b);QV("p24bigfail",!b)}function p24fileDragLeave(b){haltEvent(b);"p24\u6587\u4ef6\u8868"!=b.target.id?(QV("p24bigfail",!1),QV("p24bigok",!1)):p24dragtimer=setTimeout(function(){QV("p24bigfail",!1);QV("p24bigok",!1);p24dragtimer=null},200)}
1254
+function getFileSizeStr(b){return 1==b?"1\u4e2a\u5b57\u8282":format("{0}\u4e2a\u5b57\u8282",b)}function joinPaths(){var b=[],c;for(c in arguments){var a=arguments[c];if(null!=a&&""!=a){for(;a.endsWith("/")||a.endsWith("\\");)a=a.substring(0,a.length-1);for(;a.startsWith("/")||a.startsWith("\\");)a=a.substring(1);b.push(a)}}return b.join("/")}
1255
+var isFilenameValid=function(){var b=/^[^\\/:\*\?"<>\|]+$/,c=/^\./,a=/^(nul|prn|con|lpt[0-9]|com[0-9])(\.|$)/i;return function(d){return b.test(d)&&!c.test(d)&&!a.test(d)&&"."!=d[0]}}();function focusTextBox(b){setTimeout(function(){Q(b).selectionStart=Q(b).selectionEnd=65535;Q(b).focus()},0)}var downloadFile;
1256
+function p24downloadfile(b,c,a){xxdialogMode||downloadFile||!p24files||(downloadFile={path:decodeURIComponent(b),file:decodeURIComponent(c),size:a,tsize:0,data:"",state:0,id:Math.random()},p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"start",id:downloadFile.id,path:downloadFile.path})),setDialogMode(11,"\u4e0b\u8f7d\u6587\u4ef6",10,p24downloadFileCancel,"<div>"+downloadFile.file+"</div><br /><progress id=d2progressBar style=width:100% value=0 max="+a+" />"))}
1257
+function p24downloadFileCancel(){null!=downloadFile&&(setDialogMode(0),null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"cancel",id:downloadFile.id})),downloadFile=null)}function p24gotDownloadCommand(b){null!=downloadFile&&b.id==downloadFile.id&&("start"==b.sub?(downloadFile.state=1,p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"startack",id:downloadFile.id}))):"cancel"==b.sub&&(downloadFile=null,setDialogMode(0)))}
1258
+function p24gotDownloadBinaryData(b){if(downloadFile&&0!=downloadFile.state){try{b=atob(b)}catch(c){return}null==b||4>b.length||(4<b.length&&(downloadFile.tsize+=b.length-4,downloadFile.data+=b.substring(4),Q("d2progressBar").value=downloadFile.tsize),0!=(ReadInt(b,0)&1)?(saveAs(data2blob(downloadFile.data),downloadFile.file),downloadFile=null,setDialogMode(0)):p24files.sendCtrlMsg(JSON.stringify({action:"download",sub:"ack",id:downloadFile.id})))}}var uploadFile;
1259
+function p24doUploadFiles(b){xxdialogMode||(uploadFile={xpath:p24filetreelocation.join("/"),xfiles:b,xfilePtr:-1},setDialogMode(11,"\u4e0a\u4f20\u6587\u4ef6",10,p24uploadFileCancel,"<div id=p24dfileName>\u914d\u7f6e...</div><br /><progress id=d2progressBar style=width:100% value=0 max=0 />",99),p24uploadNextFile())}
1260
+function p24uploadNextFile(){uploadFile.xfilePtr++;if(uploadFile.xfiles.length>uploadFile.xfilePtr){uploadFile.xptr=0;var b=uploadFile.xfiles[uploadFile.xfilePtr];QH("p24dfileName",b.name);Q("d2progressBar").max=b.size;Q("d2progressBar").value=0;uploadFile.xreader=new FileReader;uploadFile.xreader.onload=function(){uploadFile.xdata=uploadFile.xreader.result;p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"start",reqid:uploadFile.xfilePtr,path:uploadFile.xpath,name:b.name,size:uploadFile.xdata.byteLength}))};
1261
+uploadFile.xreader.onerror=function(){p24uploadNextFile()};uploadFile.xreader.readAsArrayBuffer(b)}else p24uploadFileCancel(),p24folderup(9999)}function p24uploadFileCancel(b,c){null!=uploadFile&&(uploadFile=null,setDialogMode(0),99==c&&null!=p24files&&p24files.sendCtrlMsg(JSON.stringify({action:"upload",sub:"cancel"})))}
1262
+function p24gotUploadData(b){if(null!=uploadFile&&parseInt(uploadFile.xfilePtr)==parseInt(b.reqid))if("start"==b.sub)for(p24uploadNextPart(!1),b=0;8>b;b++)p24uploadNextPart(!0);else"ack"==b.sub?p24uploadNextPart(!1):"error"==b.sub&&p24uploadFileCancel()}function ab2str(b){return String.fromCharCode.apply(null,new Uint8Array(b))}
1263
+function p24uploadNextPart(b){var c=uploadFile.xdata,a=uploadFile.xptr,d=uploadFile.xptr+4096;if(d>c.byteLength){if(1==b)return;d=c.byteLength}a==c.byteLength?p24uploadNextFile():(p24files.sendCtrlMsg(btoa(IntToStr(d!=c.byteLength?16777216:16777217)+ab2str(c.slice(a,d)))),uploadFile.xptr=d,Q("d2progressBar").value=d)}var ider,iderCodeBlock,iderTimer;
1264
+function iderStart(b){if(!xxdialogMode){b="<div>\u5728\u82f1\u7279\u5c14®AMT\u8ba1\u7b97\u673a\u4e0a\u5b89\u88c5\u78c1\u76d8\u6620\u50cf-\u5b9e\u9a8c\u3002</div><br />"+('<div style=height:26px><input id=floppyImageInput type=file style=float:right;width:250px accept=".img"><div>'+NoBreak("\u8f6f\u76d8\uff08.img\uff09")+"</div></div>");b+='<div style=height:26px><input id=cdromImageInput type=file style=float:right;width:250px accept=".iso"><div>'+NoBreak("\u5149\u76d8\uff08.iso\uff09")+"</div></div>";
1265
+setDialogMode(11,"\u5b58\u50a8\u91cd\u5b9a\u5411",3,iderStart2,b+"<div style=height:26px><select id=iderStartType style=float:right;width:250px><option value=0>\u4e0b\u6b21\u542f\u52a8\u65f6<option value=1>\u4f18\u7f8e<option value=2>\u5373\u65f6</select><div>\u4f1a\u8bdd\u5f00\u59cb</div></div>");b=null;try{b=localStorage.getItem("iderurl")}catch(c){}b&&(Q("storageserverurl").value=b.substring(1,b.length-1))}}
1266
+function iderStart2(){if(1!=Q("floppyImageInput").files.length&&1!=Q("cdromImageInput").files.length)messagebox("\u5b58\u50a8\u91cd\u5b9a\u5411\u9519\u8bef","\u5fc5\u987b\u81f3\u5c11\u9009\u62e9\u4e00\u4e2a\u78c1\u76d8\u6620\u50cf\u6587\u4ef6\u3002");else if(1==Q("floppyImageInput").files.length&&0!=Q("floppyImageInput").files[0].size%512)messagebox("\u5b58\u50a8\u91cd\u5b9a\u5411\u9519\u8bef","\u65e0\u6548\u7684.img\u6587\u4ef6\u3002");else if(1==Q("cdromImageInput").files.length&&0!=Q("cdromImageInput").files[0].size%
1267
+2048)messagebox("\u5b58\u50a8\u91cd\u5b9a\u5411\u9519\u8bef","\u65e0\u6548\u7684.iso\u6587\u4ef6\u3002");else{var b=null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").files[0]);1==Q("cdromImageInput").files.length&&(c=Q("cdromImageInput").files[0]);null==b&&null==c||iderStart3(b,c,Q("iderStartType").value)}}
1268
+function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1269
+function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1270
+function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"\u670d\u52a1\u5668":"")+"IDE-R\u4f1a\u8bdd</ b>\uff0c\u5df2\u8fde\u63a5\uff0c"+ider.m.bytesFromAmt+" \u5728\uff0c"+ider.m.bytesToAmt+" \u51fa\u6765\u3002")}var heatMapWidth=600,heatMapDividor={};
1271
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b> CDROM </ b>\uff0c\u5757\u4e3a{0}\u5b57\u8282\u3002",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b>\u8f6f\u76d8</ b>\uff0c\u5757\u4e3a{0}\u5b57\u8282\u3002",512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;
1272
+d/=c;e/=c;if(0==b)q.height=6*(Math.floor(a/(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1273
+function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"\u5b58\u50a8\u91cd\u5b9a\u5411",a?a:3,onIderDialogPromptOk,c.html)}
1274
+function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
1275
+var xxRemoteAccess=null,xxEnvironementDetection=null,xxCiraServers=null,xxUserInitiatedCira=null,xxUserInitiatedEnabledState={32768:"\u6b8b\u969c\u4eba\u58eb",32769:"\u542f\u7528BIOS",32770:"\u64cd\u4f5c\u7cfb\u7edf\u542f\u7528",32771:"\u542f\u7528BIOS\u548c\u64cd\u4f5c\u7cfb\u7edf"},xxRemoteAccessCredentiaLinks=null,xxMPSUserPass=null,xxPolicies=null;
1276
+function PullRemoteAccess(){var b="*AMT_EnvironmentDetectionSettingData AMT_ManagementPresenceRemoteSAP AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule *AMT_UserInitiatedConnectionService AMT_MPSUsernamePassword".split(" ");11<amtversion&&b.push("*IPS_HTTPProxyService","IPS_HTTPProxyAccessPoint");amtstack.BatchEnum(null,b,processRemote1)}
1277
+function processRemote1(b,c,a,d){if(11<amtversion&&400==d){d=200;400==a.IPS_HTTPProxyAccessPoint.status&&delete a.IPS_HTTPProxyAccessPoint;400==a.IPS_HTTPProxyService.status&&delete a.IPS_HTTPProxyService;for(var e in a)200!=a[e].status&&(d=a[e].status)}if(400!=d&&!errcheck(d,b)&&void 0!=a.AMT_UserInitiatedConnectionService&&void 0!=a.AMT_UserInitiatedConnectionService.response){QV("go17",!0);xxRemoteAccess=a;xxEnvironementDetection=a.AMT_EnvironmentDetectionSettingData.response;xxEnvironementDetection.DetectionStrings=
1278
+MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_ManagementPresenceRemoteSAP.responses;xxUserInitiatedCira=a.AMT_UserInitiatedConnectionService.response;xxRemoteAccessCredentiaLinks=a.AMT_RemoteAccessCredentialContext.responses;xxMPSUserPass=a.AMT_MPSUsernamePassword.responses;xxPolicies={User:[],Alert:[],Periodic:[]};for(e in a.AMT_RemoteAccessPolicyAppliesToMPS.responses)c=a.AMT_RemoteAccessPolicyAppliesToMPS.responses[e],b=Clone(getItem(xxCiraServers,"Name",getItem(c.ManagedElement.ReferenceParameters.SelectorSet.Selector,
1279
+"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1280
+function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="\u6b8b\u969c\u4eba\u58eb",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="\u5df2\u542f\u7528"+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("\u73af\u5883\u68c0\u6d4b",addLink(c,"editEnvironmentDetection()"));
1281
+b+=TableEntry("\u7528\u6237\u542f\u52a8\u9009\u9879",addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>\u6ca1\u6709</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("\u7528\u6237\u53d1\u8d77\u7684\u8fde\u63a5",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));c="<i>\u6ca1\u6709</i>";
1282
+if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<c.length&&(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("\u8b66\u62a5\u542f\u52a8\u7684\u8fde\u63a5",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>\u6ca1\u6709</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,
1283
+"PolicyRuleName","\u5b9a\u671f\u7684");if(e){var q=atob(e.ExtendedData);0==ReadInt(q,0)&&(c+=format("\uff0c\u6bcf{0}\u79d2",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("\u5b9a\u671f\u8fde\u63a5",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>\u7ba1\u7406\u82f1\u7279\u5c14®AMT\u8fdc\u7a0b\u7ba1\u7406\u670d\u52a1\u5668\u3002<br><br>";
1284
+if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>\u627e\u4e0d\u5230\u8fdc\u7a0b\u670d\u52a1\u5668\u3002</i></div><br>";else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>\u7ba1\u7406\u7528\u4e8e\u7ba1\u7406\u8fde\u63a5\u7684HTTP\u4ee3\u7406\u3002<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,
1285
+0==c.length)b+="<div style=padding-left:15px><br><i>\u672a\u914d\u7f6e\u4ee3\u7406\u3002</i></div><br>";else for(d in c)b+="<div class=itemBar onclick=showProxyDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("\u6dfb\u52a0\u670d\u52a1\u5668...","AddRemoteAccessServer()"),a&&(d+=AddButton("\u6dfb\u52a0\u4ee3\u7406...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+
1286
+TableEnd(AddRefreshButton("PullRemoteAccess()")+d);QH(58,b)}}var xxEditMpsPolicyType;
1287
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="\u7528\u6237\u542f\u52a8");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>\uff08\u6ca1\u6709\uff09",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?
1288
+" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>\u4e3b\u670d\u52a1\u5668</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA-\u5916\u90e8<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA-\u5185\u90e8</select><div>\u4e3b\u8981MPS\u7c7b\u578b</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";
1289
+c+="<option value=-1>\uff08\u6ca1\u6709\uff09";for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>\u8f85\u52a9\u670d\u52a1\u5668</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA-\u5916\u90e8<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA-\u5185\u90e8</select><div>\u6b21\u8981MPS\u7c7b\u578b</div></div>")}e=
1290
+0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>\u96a7\u9053\u5bff\u547d\uff08\u79d2\uff09</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">\u5b9a\u671f\uff0c\u65f6\u95f4\u95f4\u9694<option value=1"+
1291
+(1==a?" selected":"")+">\u4e00\u5929\u4e2d\u7684\u65f6\u95f4\uff0c\u4e00\u5929\u4e00\u6b21",c+="</select><div>\u89e6\u53d1\u7c7b\u578b</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("{0}\u8fde\u63a5",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1292
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1293
+-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"\u89e6\u53d1\u95f4\u9694\uff08\u79d2\uff09":"\u65f6\u95f4\uff08HH\uff1aMM\uff09"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1294
+function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1295
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1296
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1297
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1298
+function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="\u8f93\u5165\u6700\u591a5\u4e2aIntranet\u57df\u540e\u7f00\u3002\u5982\u679c\u8ba1\u7b97\u673a\u4e0d\u5728\u8fd9\u4e9b\u57df\u4e2d\uff0c\u5219\u82f1\u7279\u5c14®AMT\u672c\u5730\u7aef\u53e3\u5c06\u5173\u95ed\uff0c\u5e76\u4e14\u8fdc\u7a0b\u670d\u52a1\u5668\u8fde\u63a5\u5c06\u5904\u4e8e\u6d3b\u52a8\u72b6\u6001\u3002<br><br>");
1299
+0==editEnvironmentDetectionTmp.length&&(c+="<i>\u6ca1\u6709Intranet\u57df\uff0c\u7981\u7528\u73af\u5883\u68c0\u6d4b\u3002</i><br>");for(var a in editEnvironmentDetectionTmp)c+="<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("\u53bb\u6389","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&
1300
+(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");1==b?QH(69,c):setDialogMode(11,"\u73af\u5883\u68c0\u6d4b",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}
1301
+function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1302
+function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("\u73af\u5883\u68c0\u6d4b",format("\u65e0\u6cd5\u6dfb\u52a0\u670d\u52a1\u5668\uff0c\u72b6\u6001\u4e3a{0}",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("\u73af\u5883\u68c0\u6d4b",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}
1303
+function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}
1304
+function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"\u7528\u6237\u542f\u52a8\u7684\u96a7\u9053",3,editUserInitiatedCiraDlg,b)}}
1305
+function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
1306
+function showServerDetails(b){xxShowServerDetailsHandle=b;var c=xxCiraServers[b],a;a=""+addHtmlValue("\u8bbf\u95ee\u540d\u79f0",c.AccessInfo);c.Port&&(a+=addHtmlValue("\u6e2f\u53e3",c.Port));c.CN&&(a+=addHtmlValue("\u901a\u7528\u540d",c.CN));if(c=getElementWithContextSelectorValue(xxRemoteAccessCredentiaLinks,c.Name))c=c.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value,0<c.indexOf("Username")?(a+=addHtmlValue("\u8ba4\u8bc1\u7c7b\u578b","\u7528\u6237\u548c\u901a\u8fc7/\u670d\u52a1\u5668\u8eab\u4efd\u9a8c\u8bc1TLS"),
1307
+a+=addHtmlValue("\u8fdc\u7aefID",getInstance(xxMPSUserPass,c).RemoteID)):(a+=addHtmlValue("\u8ba4\u8bc1\u7c7b\u578b","\u8bc1\u4e66/\u76f8\u4e92\u8ba4\u8bc1TLS"),c=getInstance(xxCertificates,c),a+=addHtmlValue("\u8bc1\u4e66\u540d\u79f0",parseCertName(c.Subject).CN));c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"\u8fdc\u7a0b\u670d\u52a1\u5668"+(b+1),c,showServerDetailsOk,a)}
1308
+function getElementWithContextSelectorValue(b,c){for(var a in b){b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector=MakeToArray(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector);for(var d in b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector)if(b[a].ElementProvidingContext.ReferenceParameters.SelectorSet.Selector[d].Value==c)return b[a]}return null}
1309
+function showServerDetailsOk(b){2==b&&amtstack.Delete("AMT_ManagementPresenceRemoteSAP",{Name:xxCiraServers[xxShowServerDetailsHandle].Name},showServerDetailsOk2)}function showServerDetailsOk2(b,c,a,d){408==d?messagebox("\u8fdc\u7a0b\u670d\u52a1\u5668\u5220\u9664","\u65e0\u6cd5\u5220\u9664\u670d\u52a1\u5668\uff0c\u8bbf\u95ee\u88ab\u62d2\u7edd\u3002"):PullRemoteAccess()}
1310
+function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("="),c[a[d].substring(0,b)]=a[d].substring(b+1);return c}
1311
+function showProxyDetails(b){var c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[b],a=addHtmlValue("\u8bbf\u95ee\u540d\u79f0",c.AccessInfo+":"+c.ProxyPort),a=a+addHtmlValue("DNS\u540e\u7f00",c.NetworkDnsSuffix),a=a+addHtmlValue("\u4ee3\u7406\u7c7b\u578b",["Administrator","Operating system"][c.Type]),c=1;xxAccountAdminName&&(c=5);setDialogMode(11,"HTTP\u4ee3\u7406"+(b+1),c,showProxyDetailsOk,a,b)}
1312
+function showProxyDetailsOk(b,c){var a=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses[c];2==b&&amtstack.Delete("IPS_HTTPProxyAccessPoint",{Name:a.Name},showProxyDetailsOk2)}function showProxyDetailsOk2(b,c,a,d){408==d?messagebox("HTTP\u4ee3\u7406\u5220\u9664","\u65e0\u6cd5\u5220\u9664HTTP\u4ee3\u7406\uff0c\u8bbf\u95ee\u88ab\u62d2\u7edd\u3002"):PullRemoteAccess()}
1313
+function AddRemoteAccessProxy(){var b;b='<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessProxyUpdate()><option value=2>\u4e3b\u673a\u540dFQDN<option value=3>IPv4\u5730\u5740<option value=4>IPv6\u5730\u5740</select><div>\u8fde\u63a5\u7c7b\u578b</div></div><div style=height:26px><input id=d2host style=float:right;width:200px maxlength=255 onkeyup=AddRemoteAccessProxyUpdate()><div id=d2typespan></div></div><div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px onkeyup=AddRemoteAccessProxyUpdate()><div>\u6e2f\u53e3</div></div>';b+=
1314
+"<div style=height:26px><input id=d2domain style=float:right;width:200px maxlength=191 onkeyup=AddRemoteAccessProxyUpdate()><div>DNS\u540e\u7f00</div></div>";setDialogMode(11,"\u6dfb\u52a0HTTP\u4ee3\u7406",3,AddRemoteAccessProxyOk,b);AddRemoteAccessProxyUpdate()}
1315
+function AddRemoteAccessProxyUpdate(){var b=0!=Q("d2host").value.length&&0!=Q("d2domain").value.length;if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;QE("c49",b);QH("d2typespan",["","","FQDN /\u4e3b\u673a\u540d","IPv4\u5730\u5740","IPv6\u5730\u5740"][Q("d2type").value])}function AddRemoteAccessProxyOk(){amtstack.IPS_HTTPProxyService_AddProxyAccessPoint(Q("d2host").value,Q("d2type").value,parseInt(Q("d2port").value),Q("d2domain").value,AddRemoteAccessProxyOk2)}
1316
+function AddRemoteAccessProxyOk2(b,c,a,d){200!=d?messagebox("\u6dfb\u52a0\u4ee3\u7406\u670d\u52a1\u5668","\u65e0\u6cd5\u6dfb\u52a0\u4ee3\u7406\uff0c\u72b6\u6001"+d):0!=a.Body.ReturnValue?messagebox("\u6dfb\u52a0\u4ee3\u7406\u670d\u52a1\u5668",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1317
+function AddRemoteAccessServer(){var b=[],c;for(c in xxCertificates)xxCertificates[c].XPrivateKey&&b.push(xxCertificates[c]);var a;a="<div style=height:26px><select id=d2type style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()><option value=201>\u4e3b\u673a\u540dFQDN<option value=3>IPv4\u5730\u5740</select><div>\u8fde\u63a5\u7c7b\u578b</div></div><div style=height:26px><input id=d2name style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div id=d2lname></div></div>";a+=
1318
+'<div style=height:26px><input id=d2port onkeypress="return (event.charCode == 0 || (event.charCode >= 48 && event.charCode <= 57))" style=float:right;width:200px value=4433 onkeyup=AddRemoteAccessServerUpdate()><div>\u670d\u52a1\u5668\u7aef\u53e3</div></div>';a+="<div style=height:26px id=d2ucn><input id=d2cn style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\u670d\u52a1\u5668\u901a\u7528\u540d\u79f0</div></div>";a+="<div style=height:26px><select id=d2auth style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";
1319
+0<b.length&&(a+="<option value=1>\u8bc1\u4e66");a+="<option value=2>\u7528\u6237\u540d\u5bc6\u7801</select><div>\u8ba4\u8bc1\u65b9\u5f0f</div></div>";a+="<span id=d2utype>";a+="<div style=height:26px><input id=d2user style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\u7528\u6237\u540d</div></div>";a+="<div style=height:26px><input id=d2pass style=float:right;width:200px onkeyup=AddRemoteAccessServerUpdate()><div>\u5f3a\u5bc6\u7801</div></div>";a+="</span>";a+="<span id=d2ctype>";
1320
+a+="<div style=height:26px><select id=d2cert style=float:right;width:206px onchange=AddRemoteAccessServerUpdate()>";for(c in b)a+="<option value="+b[c].InstanceID.substring(34)+">"+parseCertName(b[c].Subject).CN;a+="</select><div>\u8bc1\u4e66</div></div></span>";setDialogMode(11,"\u6dfb\u52a0\u8fdc\u7a0b\u670d\u52a1\u5668",3,AddRemoteAccessServerOk,a);AddRemoteAccessServerUpdate()}
1321
+function AddRemoteAccessServerOk(){var b,c,a,d;1==Q("d2auth").value?b='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_PublicKeyCertificate</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT Certificate: Handle: '+Q("d2cert").value+
1322
+"</Selector></SelectorSet></ReferenceParameters>":(c=Q("d2user").value,a=Q("d2pass").value);0<Q("d2cn").value.length&&(d=Q("d2cn").value);amtstack.AMT_RemoteAccessService_AddMpServer(Q("d2name").value,Q("d2type").value,Q("d2port").value,Q("d2auth").value,b,c,a,d,AddRemoteAccessServerOk2)}
1323
+function AddRemoteAccessServerOk2(b,c,a,d){200!=d?messagebox("\u6dfb\u52a0Internet\u670d\u52a1\u5668",format("\u65e0\u6cd5\u6dfb\u52a0\u670d\u52a1\u5668\uff0c\u72b6\u6001\u4e3a{0}",d)):0!=a.Body.ReturnValue?messagebox("\u6dfb\u52a0Internet\u670d\u52a1\u5668",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}
1324
+function AddRemoteAccessServerUpdate(){var b=0!=Q("d2name").value.length;3==Q("d2type").value&&1==b&&(b=0!=Q("d2cn").value.length);2==Q("d2auth").value&&1==b&&(b=0!=Q("d2user").value.length&&passwordcheck(Q("d2pass").value));if(0==Q("d2port").value.length||65535<parseInt(Q("d2port").value))b=!1;if(-1!=Q("d2name").value.indexOf(":")||3==Q("d2type").value&&-1!=Q("d2cn").value.indexOf(":"))b=!1;QH("d2lname",201==Q("d2type").value?"\u4e3b\u673a\u540d":"IPv4\u5730\u5740");QV("d2utype",2==Q("d2auth").value);
1325
+QV("d2ucn",3==Q("d2type").value);QV("d2ctype",1==Q("d2auth").value);QE("c49",b)}
1326
+function showEditNameDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_GeneralSettings.response.HostName,a=amtsysstate.AMT_GeneralSettings.response.DomainName;null!=a&&0<a.length&&(c+="."+a);c='<br><div style=height:26px><input id=d11name value="'+c+'" style=float:right;width:200px><div>\u540d\u79f0\u548c\u57df\u540d</div></div>';1==b&&(b=1==amtsysstate.AMT_GeneralSettings.response.SharedFQDN,c+="<div style=height:26px><select id=d11fqdn style=float:right;width:200px><option value=true "+(b?"selected":
1327
+"")+'>\u5171\u4eab\uff0c\u4e0e\u64cd\u4f5c\u7cfb\u7edf\u76f8\u540c<option value="false" '+(b?"":"selected")+">\u4e13\u7528\uff0c\u4e0d\u540c\u4e8eOS</select><div>\u59d3\u540d\u5206\u4eab</div></div>");setDialogMode(11,"\u7535\u8111\u540d\u79f0",3,editNameDlgOk,c)}}
1328
+function editNameDlgOk(){var b=Q("d11name").value,c=b.indexOf("."),a="";0<=c&&(a=b.substring(c+1),b=b.substring(0,c));c=Clone(amtsysstate.AMT_GeneralSettings.response);c.HostName=b;c.DomainName=a;Q("d11fqdn")&&(c.SharedFQDN=d11fqdn.value);amtstack.Put("AMT_GeneralSettings",c,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}function computerNameGet(b,c,a,d){200==d&&(amtsysstate.AMT_GeneralSettings.response=a.Body,updateSystemStatus())}
1329
+function showEditDnsDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,c=0;1==b.DDNSUpdateByDHCPServerEnabled&&(c=1);1==b.DDNSUpdateEnabled&&(c=2);c35.value=c;c36.value=b.DDNSPeriodicUpdateInterval;c37.value=b.DDNSTTL;showEditDnsDlgChange();setDialogMode(23,"\u52a8\u6001DNS\u5ba2\u6237\u7aef",3,showEditDnsDlgOk)}}
1330
+function showEditDnsDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response);b.DDNSUpdateEnabled=2==c35.value?!0:!1;b.DDNSUpdateByDHCPServerEnabled=1==c35.value?!0:!1;2==c35.value&&(b.DDNSPeriodicUpdateInterval=c36.value,b.DDNSTTL=c37.value);amtstack.Put("AMT_GeneralSettings",b,function(){amtstack.Get("AMT_GeneralSettings",computerNameGet,0,1)},0,1)}
1331
+function showEditDnsDlgChange(){QE("c36",2==c35.value);QE("c37",2==c35.value)}function showFeaturesDlg(){!xxdialogMode&&xxAccountAdminName&&(c14.checked=amtfeatures[0],c16.checked=amtfeatures[3],c17.checked=amtfeatures[2],c18.checked=amtfeatures[1],QV("c15",null!=amtfeatures[3]),setDialogMode(9,"\u82f1\u7279\u5c14®AMT\u529f\u80fd",3,featuresDlgOk))}
1332
+function featuresDlgOk(){var b=amtsysstate.AMT_RedirectionService.response;b.ListenerEnabled=c14.checked;b.EnabledState=32768+((c17.checked?1:0)+(c18.checked?2:0));amtstack.AMT_RedirectionService_RequestStateChange(b.EnabledState,function(c,a,d,e){200!=e?messagebox("\u9519\u8bef","RedirectionService\uff0cRequestStateChange\u9519\u8bef"+e):null!=amtfeatures[3]&&amtstack.CIM_KVMRedirectionSAP_RequestStateChange(c16.checked?2:3,0,function(a,c,d,e){200!=e?messagebox("\u9519\u8bef",
1333
+"KVMRedirectionSAP\uff0cRequestStateChange\u9519\u8bef"+e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("\u9519\u8bef","RedirectionService PUT\u9519\u8bef"+d):(amtstack.Get("AMT_RedirectionService",featuresDlgGet1,0,1),amtstack.Get("CIM_KVMRedirectionSAP",featuresDlgGet2,0,1))},0,1)})})}function featuresDlgGet1(b,c,a,d){200==d&&(amtsysstate.AMT_RedirectionService.response=a.Body,updateSystemStatus())}
1334
+function featuresDlgGet2(b,c,a,d){200==d&&(amtsysstate.CIM_KVMRedirectionSAP.response=a.Body,updateSystemStatus())}function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"\u7528\u6237\u540c\u610f",3,consentDlgOk)}}
1335
+function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="\u94fe\u63a5\u672c\u5730\u5730\u5740 \u7f51\u7edc\u672c\u5730\u5730\u5740 \u5168\u7403\u5730\u5740 \u7528\u6237\u914d\u7f6e \u4e0d\u5141\u8bb8 DAD\u6b63\u5728\u8fdb\u884c\u4e2d \u6709\u6548 \u4e0d\u63a8\u8350\u4f7f\u7528 \u9996\u9009/\u5df2\u5f03\u7528 \u5df2\u8fc7\u671f \u78b0\u649e \u4e0d\u5141\u8bb8".split(" ");
1336
+function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+"\uff0c"+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"\u6709\u7ebf\u63a5\u53e3\u7684IPv6\u5730\u5740":"\u65e0\u7ebf\u63a5\u53e3\u7684IPv6\u5730\u5740",1,null,a+TableEnd())}}
1337
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","\u7981\u7528IPv6");QH("d21l1","\u542f\u7528IPv6\uff0c\u81ea\u52a8");QH("d21l2","\u5df2\u542f\u7528IPv6\uff0c\u81ea\u52a8+\u624b\u52a8\u5730\u5740");d21o0.checked=
1338
+!c;d21o1.checked=c&&!ipv6manual;d21o2.checked=c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"\u6709\u7ebf\u63a5\u53e3\u7684IPv6\u652f\u6301":"\u65e0\u7ebf\u63a5\u53e3\u7684IPv6\u652f\u6301",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1339
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1340
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1341
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1342
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1343
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv6\u652f\u6301",format("\u65e0\u6cd5\u8bbe\u7f6eIPv6\u72b6\u6001\uff0c\u9519\u8bef{0}",d))}
1344
+function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"\u82f1\u7279\u5c14®AMT Ping\u54cd\u5e94",3,showPingActionDlgOk)}}
1345
+function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1346
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","\u4f7f\u7528DHCP\u670d\u52a1\u5668\u81ea\u52a8\u914d\u7f6e");QH("d21l2","\u4f7f\u7528\u4e0b\u9762\u7684IPv4\u8bbe\u7f6e\u8fdb\u884c\u9759\u6001\u914d\u7f6e");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=
1347
+!d21o1.checked;c30.value=isIpAddress(b.IPAddress,"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"IPv4\u8bbe\u7f6e",3,showIPSetupDlgOk)}}
1348
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"\u5df2\u542f\u7528IPv6\uff0c\u81ea\u52a8+\u624b\u52a8\u5730\u5740"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1349
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1350
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv4\u8bbe\u7f6e",format("\u65e0\u6cd5\u8bbe\u7f6e\u7f51\u7edc\u53c2\u6570\uff0c\u9519\u8bef{0}",d))}amtPowerBootCapabilities=null;
1351
+function showPowerActionDlg(){xxdialogMode||(statusbox("\u6743\u529b\u884c\u52a8","\u6b63\u5728\u68c0\u67e5\u529f\u80fd..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1352
+function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","\u5145\u7535",2);b&1&&(addOption("d5actionSelect","\u91cd\u542f",10),addOption("d5actionSelect","\u7535\u6e90\u5468\u671f",5),addOption("d5actionSelect","\u6389\u7535",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect","\u5f00\u673a\u8fdb\u884c\u8bca\u65ad",
1353
+300),b&1&&addOption("d5actionSelect","\u91cd\u7f6e\u4e3a\u8bca\u65ad",301));9<amtversion&&b&1&&(addOption("d5actionSelect","\u64cd\u4f5c\u7cfb\u7edf\u4ece\u5f85\u673a\u72b6\u6001\u5524\u9192",500),addOption("d5actionSelect","\u64cd\u4f5c\u7cfb\u7edf\u7701\u7535",501),addOption("d5actionSelect","\u8f6f\u8131",12),addOption("d5actionSelect","\u8f6f\u590d\u4f4d",14),addOption("d5actionSelect","\u7761\u89c9",4),addOption("d5actionSelect","\u51ac\u7720",7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&
1354
+addOption("d5actionSelect","\u542f\u52a8BIOS",100),b&1&&addOption("d5actionSelect","\u91cd\u7f6e\u4e3aBIOS",101));1==amtPowerBootCapabilities.SecureErase&&(b&2&&addOption("d5actionSelect","\u4e0a\u7535\u4ee5\u5b89\u5168\u64e6\u9664",104),b&1&&addOption("d5actionSelect","\u91cd\u7f6e\u4e3a\u5b89\u5168\u64e6\u9664",105));b&1&&addOption("d5actionSelect","\u91cd\u7f6e\u4e3aIDE-R\u8f6f\u76d8",200);b&2&&addOption("d5actionSelect","\u6253\u5f00IDE-R\u8f6f\u76d8",201);b&1&&addOption("d5actionSelect","\u91cd\u7f6e\u4e3aIDE-R CDROM",
1355
+202);b&2&&addOption("d5actionSelect","\u5f00\u542fIDE-R CDROM",203);b&1&&addOption("d5actionSelect","\u91cd\u7f6e\u4e3aPXE",400);b&2&&addOption("d5actionSelect","\u5f00\u542fPXE",401);addOption("d5actionSelect","\u81ea\u5b9a\u4e49\u52a8\u4f5c...",999);5<amtversion&&addOption("d5actionSelect","\u7528\u6237\u540c\u610f...",998);setDialogMode(5,"\u6743\u529b\u884c\u52a8",3,powerActionDlgCheck)}else messagebox("\u6743\u529b\u884c\u52a8",format("\u65e0\u6cd5\u83b7\u5f97\u7cfb\u7edf\u529f\u80fd\uff0c\u9519\u8bef{0}",
1356
+d))}
1357
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"\u7535\u6e90\u64cd\u4f5c\u5df2\u5b8c\u6210\u3002"):QH(66,format("\u7535\u6e90\u64cd\u4f5c\u9519\u8bef\uff03{0}\u3002",e));setDialogMode(1,"\u6743\u529b\u884c\u52a8",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="\u786e\u8ba4\u6267\u884cIntel®\u8fdc\u7a0b\u5b89\u5168\u64e6\u9664\uff1f<br>\u5982\u679c\u9700\u8981\uff0c\u8f93\u5165\u5b89\u5168\u64e6\u9664\u5bc6\u7801\u3002<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>\u5bc6\u7801</div></div><br><div style=color:red><b>\u8b66\u544a</ b>\uff1a\u8fd9\u5c06\u64e6\u9664\u8fdc\u7a0b\u7cfb\u7edf\u4e0a\u7684\u6570\u636e\u3002</div>",rsepass=
1358
+1,setDialogMode(11,"\u6743\u529b\u884c\u52a8",3,powerActionDlg,b)):powerActionDlg()}
1359
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("\u6743\u529b\u884c\u52a8","\u6b63\u5728\u68c0\u67e5\u72b6\u6001...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=
1360
+b&&(c=!1);c?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1361
+function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1362
+QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1363
+QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"\u81ea\u5b9a\u4e49\u7535\u6e90\u52a8\u4f5c",
1364
+3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1365
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"\u7535\u6e90\u64cd\u4f5c\u5df2\u5b8c\u6210\u3002"):QH(66,format("\u7535\u6e90\u64cd\u4f5c\u9519\u8bef\uff03{0}\u3002",e));setDialogMode(1,"\u6743\u529b\u884c\u52a8",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,
1366
+AvdPowerDlg.BIOSSecureBoot=Q("d24BiosSecureBoot").checked,AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,
1367
+AvdPowerDlg.LockSleepButton=Q("d24LockSleepButton").checked,AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),statusbox("\u6743\u529b\u884c\u52a8",
1368
+"\u6b63\u5728\u68c0\u67e5\u72b6\u6001..."),amtstack.Get("IPS_OptInService",powerActionResponse0,0,1))}
1369
+function powerActionResponse0(b,c,a,d){200!=d?connectDesktopConsent?connectDesktop(!0):messagebox("\u6743\u529b\u884c\u52a8",format("\u9519\u8bef\uff03{0}",d)):4294967295==a.Body.OptInRequired&&3!=a.Body.OptInState&&4!=a.Body.OptInState?2==a.Body.OptInState?(d6ConsentText.value="",setDialogMode(6,"\u7528\u6237\u540c\u610f",11,powerActionSendConsent),checkConsentDisplay(),consentChanged()):(statusbox("\u6743\u529b\u884c\u52a8","\u5f00\u59cb\u9009\u62e9\u52a0\u5165..."),amtstack.IPS_OptInService_StartOptIn(powerActionResponseC1,
1370
+0,1)):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("\u7528\u6237\u540c\u610f","\u65e0\u9700\u7528\u6237\u540c\u610f\u3002"):(statusbox("\u6743\u529b\u884c\u52a8","\u83b7\u53d6\u542f\u52a8\u8bbe\u7f6e..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1))}
1371
+function powerActionResponseC1(b,c,a,d){200!=d?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("\u6743\u529b\u884c\u52a8",format("\u9519\u8bef\u7f16\u53f7",d)):0!=a.Body.ReturnValue?connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):messagebox("\u7528\u6237\u540c\u610f\u9519\u8bef",a.Body.ReturnValueStr.replace(/_/g," ")):(d6ConsentText.value="",setDialogMode(6,"\u7528\u6237\u540c\u610f",11,powerActionSendConsent),checkConsentDisplay(),consentChanged(),amtstack.Enum("CIM_ServiceAvailableToElement",
1372
+function(a,b,c,d){errcheck(d,a)||(amtsysstate.CIM_ServiceAvailableToElement.responses=c,updateSystemStatus(),null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState&&amtstack.RequestPowerStateChange(2,function(a,b,c,d){}))}))}
1373
+function powerActionSendConsent(b){0==b?amtstack.IPS_OptInService_CancelOptIn(function(){}):(statusbox("\u6743\u529b\u884c\u52a8","\u6b63\u5728\u4f20\u9001\u4f7f\u7528\u8005\u540c\u610f..."),amtstack.IPS_OptInService_SendOptInCode(d6ConsentText.value,powerActionResponseC2,0,1))}
1374
+function powerActionResponseC2(b,c,a,d){200!=d?messagebox("\u6743\u529b\u884c\u52a8",format("\u9519\u8bef\uff03{0}",d)):0!=a.Body.ReturnValue?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):connectDesktopConsent?(setDialogMode(0),connectDesktop(!0)):998==d5actionSelect.value?messagebox("\u7528\u6237\u540c\u610f","\u7528\u6237\u540c\u610f\u6210\u529f\u3002"):(statusbox("\u6743\u529b\u884c\u52a8","\u6b63\u5728\u68c0\u67e5\u72b6\u6001..."),amtstack.Get("AMT_BootSettingData",powerActionResponse1,
1375
+0,1))}
1376
+function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("\u6743\u529b\u884c\u52a8",format("\u9519\u8bef\uff03{0}",d));else{b=d5actionSelect.value;var e=a.Body;e.ConfigurationDataReset=!1;999==b?(e.BIOSPause=AvdPowerDlg.BIOSPause,e.EnforceSecureBoot=AvdPowerDlg.BIOSSecureBoot,e.BIOSSetup=AvdPowerDlg.BIOSSetup,e.BootMediaIndex=AvdPowerDlg.BootMediaIndex,e.FirmwareVerbosity=AvdPowerDlg.FirmwareVerbosity,e.ForcedProgressEvents=AvdPowerDlg.ForcedProgressEvents,e.IDERBootDevice=AvdPowerDlg.IDERBootDevice,e.LockKeyboard=
1377
+AvdPowerDlg.LockKeyboard,e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&(e.RSEPassword=
1378
+AvdPowerDlg.RSEPassword))):(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,!0===e.SecureErase&&
1379
+0<rsepass.length&&(e.RSEPassword=rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("\u5f00\u673a\u52a8\u4f5c\uff1a"+b);console.log("\u8bbe\u7f6e\u542f\u52a8\u8bbe\u7f6e\uff1a"+ObjectToString2(e));statusbox("\u6743\u529b\u884c\u52a8",
1380
+"\u8bbe\u7f6e\u542f\u52a8\u8bbe\u7f6e...");amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,function(a,b,c,d){200!=d?messagebox("\u6743\u529b\u884c\u52a8",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1381
+function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("\u6743\u529b\u884c\u52a8",format("PUT AMT_BootSettingData\uff0c\u9519\u8bef\uff03{0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("\u6743\u529b\u884c\u52a8","\u8bbe\u7f6e\u4e0b\u4e00\u6b21\u542f\u52a8..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1382
+function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1383
+c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1384
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("\u6743\u529b\u884c\u52a8","\u6b63\u5728\u6267\u884c\u7535\u6e90\u64cd\u4f5c...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);
1385
+targetPowerAction=b;11==b&&(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("\u6743\u529b\u884c\u52a8","\u4e0b\u4e00\u4e2a\u542f\u52a8\u64cd\u4f5c\u96c6\u3002")}}
1386
+function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"\u7535\u6e90\u64cd\u4f5c\u5df2\u5b8c\u6210\u3002"),setDialogMode(1,"\u6743\u529b\u884c\u52a8",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}function consentChanged(){QE("c49",6==d6ConsentText.value.length)}function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}
1387
+function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1388
+function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1389
+var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1390
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1391
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u7ba1\u7406\u6b64\u8ba1\u7b97\u673a\u7684\u82f1\u7279\u5c14®AMT\u5b58\u50a8\u3002<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,
1392
+p=r,e=""!=c?e+EscapeHtml(c+" / "+r):e+"\u6839";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("\u4e0b\u8f7d","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" \u4e2a\u5b57\u8282</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&
1393
+xxStorageApplications.push(r)}0==n&&(wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>\u627e\u4e0d\u5230\u6587\u4ef6\u3002</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+
1394
+TableEnd(AddRefreshButton("PullStorage()")+(q?AddButton("\u4e0a\u8f7d...","UploadToStorage()"):""));QH(61,a)}else QH(61,"\u65e0\u6cd5\u52a0\u8f7d\u5b58\u50a8\u6570\u636e...<br/>"+AddButton("\u5237\u65b0","PullStorage()"))}
1395
+function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("\u4f9b\u5e94\u5546",b));""!=c&&(e+=addHtmlValue("\u5e94\u7528",c));e+=addHtmlValue("\u540d\u79f0",a);e+=addHtmlValue("\u5c3a\u5bf8",q.size+" bytes");q.link&&(e+=addHtmlValue("\u94fe\u63a5",q.link));setDialogMode(11,"\u50a8\u5b58\u7269\u54c1",5,showStorageDetailsEx,e,d)}}
1396
+function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}function storageDeleteResponse(b,c){200!=c?messagebox("\u5b58\u50a8",format("\u65e0\u6cd5\u5220\u9664\u6587\u4ef6\uff08ERR {0}\uff09\uff0c\u8bf7\u68c0\u67e5\u8ba1\u7b97\u673a\u662f\u5426\u5df2\u6253\u5f00\u7535\u6e90\u3002",c)):PullStorage()}
1397
+function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}
1398
+function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}function PushToStorageResponse(b,c,a){200!=c?messagebox("\u5b58\u50a8",format("\u65e0\u6cd5\u63a8\u9001\u6587\u4ef6\uff08ERR {0}\uff09\uff0c\u8bf7\u68c0\u67e5\u8ba1\u7b97\u673a\u662f\u5426\u5df2\u6253\u5f00\u7535\u6e90\u3002",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1399
+function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>\u9009\u62e9\u4e00\u4e2a\u5c0f\u6587\u4ef6\u4e0a\u4f20\u5230\u5b58\u50a8\uff0c\u7136\u540e\u8f93\u5165\u4f9b\u5e94\u5546\uff0c\u5e94\u7528\u7a0b\u5e8f\u548c\u6587\u4ef6\u540d\u3002<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>\u4e0a\u4f20\u6587\u4ef6</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+
1400
+'<br><div style=height:16px><input id=mstoragevendor placeholder="\u4f9b\u5e94\u5546" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>\u4f9b\u5e94\u5546\u540d\u79f0</div></div>';a+='<br><div style=height:16px><input id=mstorageapplication placeholder="\u5e94\u7528\u7a0b\u5f0f" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>\u5e94\u7528\u540d\u79f0</div></div>';a+='<br><div style=height:16px><input id=mstoragefilename placeholder="\u6587\u4ef6\u540d" maxlength=11 style=float:right;width:240px><div>\u6587\u4ef6\u540d</div></div>';
1401
+a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>MIME\u7c7b\u578b</div></div>";a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="\u5982\u679c\u8bbe\u7f6e\uff0c\u5219\u4ece\u4e3b\u9875\u521b\u5efa\u6307\u5411\u8be5\u5185\u5bb9\u7684\u94fe\u63a5">\u94fe\u63a5</div></div><br>';a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+
1402
+xxStorageVendors[d]+'">';a+="</datalist>";a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';setDialogMode(11,"\u5b58\u50a8\u4e0a\u4f20",3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}
1403
+function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1404
+function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1405
+b}
1406
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1407
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1408
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," \u5929").replace("H"," \u5c0f\u65f6").replace("M"," \u5206\u949f");b=b.replace(" 1\u5929"," 1\u5929").replace(" 1\u5c0f\u65f6"," 1\u5c0f\u65f6").replace(" 1\u5206\u949f"," 1\u5206\u949f");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1409
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>\u7ba1\u7406\u5524\u9192\u8b66\u62a5\u3002<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, \u9192\u6765 "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," \u5728"),void 0!=d[c].Interval&&(a+=" \u548c\u6bcf\u4e2a"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&
1410
+(a+="\uff0c\u5b8c\u6210\u540e\u5220\u9664"),b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("\u7f16\u8f91...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>\u6ca1\u6709\u6ce8\u518c\u5524\u9192\u8b66\u62a5\u3002</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&
1411
+(d+=AddButton("\u5220\u9664\u6240\u6709\u8b66\u62a5","RemoveAllAlarms()")+AddButton("\u52a0","showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1412
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1413
+e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"\u5220\u9664\u6240\u6709\u5524\u9192\u8b66\u62a5",3,RemoveAllAlarmsEx,"\u786e\u8ba4\u5220\u9664\u6240\u6709\u5524\u9192\u8b66\u62a5\uff1f")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1414
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1415
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1416
+Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"\u65b0\u589e\u8b66\u62a5",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1417
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1418
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("\u6dfb\u52a0\u95f9\u949f",format("\u6dfb\u52a0\u544a\u8b66\u5931\u8d25\u3002\u72b6\u6001\uff1a{0}\u3002<br/>\u9a8c\u8bc1\u8b66\u62a5\u662f\u5426\u5c06\u6765\u3002",d)):0!=c.Body.ReturnValue?messagebox("\u6dfb\u52a0\u95f9\u949f",format("\u6dfb\u52a0\u8b66\u62a5{0}\u5931\u8d25\u3002<br/>\u9a8c\u8bc1\u8b66\u62a5\u662f\u5426\u5c06\u6765\u3002",
1419
+c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("\u7f16\u8f91\u95f9\u949f",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,
1420
+{InstanceID:a.InstanceID}))}}
1421
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("\u540d\u79f0",c.ElementName)+addHtmlValue("\u5524\u9192\u65f6\u95f4",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("\u5185\u90e8",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("\u9192\u540e",1==c.DeleteOnCompletion?"\u5220\u9664\u8b66\u62a5":"\u4fdd\u6301\u8b66\u60d5")+"</div>";messagebox(format("\u8b66\u62a5{0}",c.ElementName),
1422
+a);setDialogMode(11,"\u62a5\u8b66"+c.ElementName,5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"\u8fd0\u884c\u811a\u672c",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1423
+function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1424
+function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1425
+Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("\u8fd0\u884c\u811a\u672c",
1426
+"\u65e0\u6548\u7684\u811a\u672c\u6587\u4ef6\u3002")}function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}
1427
+function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}var script_BuildingBlocks,script_StartingBuildingBlocks,script_BlockScript=[],script_BlockScriptSelectedId=null,script_BuilderView=0,editscriptstate;
1428
+function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function(){if(200<=b.status&&400>b.status){var c;try{c=JSON.parse(b.responseText)}catch(a){}c&&c.blocks&&(script_StartingBuildingBlocks=c.blocks,script_setBuildBlocks(script_StartingBuildingBlocks))}};b.onerror=function(){console.log("Failed to get script blocks")};b.open("GET","scriptblocks.txt",!0);b.send()}
1429
+function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1430
+function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1431
+function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("\u7f16\u8f91{0}",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1432
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1433
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1434
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1435
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1436
+function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1437
+function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1438
+function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1439
+function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1440
+1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1441
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1442
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1443
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1444
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1445
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1446
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1447
+function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1448
+'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1449
+(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"\u4e8c\u8fdb\u5236\u6587\u4ef6"+script_BlockScript[c].vars[d].value.length+" \u4e2a\u5b57\u8282":"\u6ca1\u6709\u8bbe\u7f6e");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+
1450
+e;a++}b+="<tr><td style=height:3px></table>"}b+="</div></div>"}""==b&&(b='<div style="padding:15px;color:gray">\u901a\u8fc7\u5c06\u5757\u4ece\u5de6\u4fa7\u62d6\u653e\u5230\u6b64\u811a\u672c\u6846\u4e2d\u6765\u542f\u52a8\u811a\u672c\u3002<div>');QH("scriptblocks",b+"<div style=height:80px></div>");for(c in script_BlockScript)QS("xblock_"+c).borderLeft=script_CurrentHighlightBlock==c?"3px solid black":"";script_blocksToScript()}
1451
+function script_blocksToScript(){var b="";if(script_BuildingBlocks){script_BuildingBlocks._start&&(b+="##### Starting Block #####\r\n"+script_BuildingBlocks._start.code+"\r\n\r\n");for(var c in script_BlockScript){var a=script_BlockScript[c].code,a=a.split("%%%~%%%").join(c),d;for(d in script_BlockScript[c].vars)a=a.split("%%%"+d+"%%%").join(script_BlockScript[c].vars[d].value);b+="##### Block: "+script_BlockScript[c].name+" #####\r\nHighlightBlock __t "+c+"\r\n"+a+"\r\n\r\n"}script_BuildingBlocks._end&&
1452
+(b+="##### Ending Block #####\r\n"+script_BuildingBlocks._end.code+"\r\nHighlightBlock\r\n")}Q("scriptarea").value=b}var script_CurrentHighlightBlock;function script_HighlightBlock(b,c){if(b==editscriptstate){script_CurrentHighlightBlock=c;for(var a in script_BlockScript)QS("xblock_"+a).borderLeft=script_CurrentHighlightBlock==a?"3px solid black":""}}
1453
+function script_newScriptDlg(){xxdialogMode||setDialogMode(11,"\u65b0\u5267\u672c",3,script_newScriptDlgOk,"<br>\u91cd\u7f6e\u5e76\u6e05\u9664\u811a\u672c\u7f16\u8f91\u5668\uff1f")}function script_newScriptDlgOk(){script_setBuildBlocks(script_StartingBuildingBlocks);script_BlockScript=[];script_BlockScriptSelectedId=null;delete editscriptstate;scriptViewButton(script_BuildingBlocks?1:0);QH("variables","");Q("scriptarea").value="";resetScriptButton()}
1454
+function resetScriptButton(){breakScriptButton();Q("compiledarea").value=rstr2hex(script_compile(Q("scriptarea").value,function(b){messagebox("\u811a\u672c\u7f16\u8bd1\u9519\u8bef",b)}));delete editscriptstate;Q("console").value="";QH("variables","");QH("EditScriptStatus","\u5df2\u505c\u6b62");1==script_BuilderView&&fupdatescript();0!=Q("compiledarea").value.length&&(editscriptstate=script_setup(hex2rstr(Q("compiledarea").value),{_interactive:1,_certificates:1,_mode:"Firmware"}),editscriptstate.wsstack=
1455
+wsstack,editscriptstate.amtstack=amtstack,editscriptstate.onStep=editscript_updateScriptState,editscriptstate.onConsole=editscript_console,editscript_updateScriptState(editscriptstate))}function runScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&editscriptstate.start(100)}function breakScriptButton(){null!=editscriptstate&&editscriptstate.stop()}
1456
+function stepScriptButton(){null==editscriptstate&&resetScriptButton();null!=editscriptstate&&(breakScriptButton(),editscriptstate.step())}function editscript_console(b){Q("console").value+=b+"\n"}var script_states=["\u5df2\u505c\u6b62","\u8dd1\u6b65","\u5df2\u6682\u505c"];
1457
+function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(d in b.variables)d.startsWith("__")||a.push(d);a.sort();for(d in a)c="object"==typeof b.variables[a[d]]?c+("<b>"+a[d]+"</b> = "+ObjectToStringEx(b.variables[a[d]],2)+"<br>"):c+("<b>"+a[d]+"</b> = "+EscapeHtml(script_toString(b.variables[a[d]]))+"<br>")}QH("variables",c);c="\u5df2\u505c\u6b62\uff0c\u65e0\u811a\u672c";b&&null!=b&&(c=script_states[b.state],0<b.state&&(c+=", "+b.ip+" : "+script_decompile(b.script,b.ip)));
1458
+50<c.length&&(c=c.substring(0,50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1459
+function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"\u811a\u672c\u5757",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1460
+function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1461
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1462
+function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1463
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1464
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1465
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1466
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}var httpErrorTable={200:"\u597d",401:"\u6388\u6743\u9519\u8bef",408:"\u8d85\u65f6\u9519\u8bef",601:"WSMAN\u89e3\u6790\u9519\u8bef",602:"\u65e0\u6cd5\u89e3\u6790HTTP\u54cd\u5e94\u6807\u5934",603:"\u610f\u5916\u7684HTTP\u679a\u4e3e\u54cd\u5e94",604:"\u610f\u5916\u7684HTTP\u62c9\u53d6\u54cd\u5e94",997:"\u65e0\u6548\u7684\u6458\u8981\u9886\u57df"};
1467
+function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("\u9519\u8bef\uff03{0}",b)),401==b&&QH(5,'\u6388\u6743\u9519\u8bef<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1468
+function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1469
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1470
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1471
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("\u901a\u8bdd\u9519\u8bef",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}
1472
+function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}
1473
+function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="\u5237\u65b0" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}
1474
+function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}
1475
+function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}
1476
+function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
1477
+function getDocHeight(){return window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight&&0!=document.documentElement.clientHeight?document.documentElement.clientHeight:document.getElementsByTagName("body")[0].clientHeight}function addHtmlValue(b,c){return'<div style=height:20px><div style=float:right;width:220px;overflow:hidden><b title="'+c+'">'+c+"</b></div><div>"+b+"</div></div>"}
1478
+function addHtmlValueNoTitle(b,c){return"<div style=height:20px><div style=float:right;width:220px;overflow:hidden>"+c+"</b></div><div>"+b+"</div></div>"}function numbersOnly(b,c){return 0==event.charCode||event.charCode==c||48<=event.charCode&&57>=event.charCode}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}startup();
1479
+</script>
\ No newline at end of file
public/commander.htm
+835
-835
@@ -1,4 +1,4 @@
1
-<!DOCTYPE html><html lang="en" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()"><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=Connect onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>Disconnected</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>System Status</a><p id=go14 class=nav1 onclick=go(14)><a>Remote Desktop</a><p id=go24 class=nav1 onclick=go(24)> <a>Files</a><p id=go13 class=nav1 onclick=go(13)><a>Serial-over-LAN</a><p id=go2 class=nav1 onclick=go(2)><a>Hardware Information</a><p id=go6 class=nav1 onclick=go(6)><a>Event Log</a><p id=go15 class=nav1 onclick=go(15)><a>Audit Log</a><p id=go21 class=nav1 onclick=go(21)><a>Storage</a><p id=go8 class=nav1 onclick=go(8)><a>Network Settings</a><p id=go17 class=nav1 onclick=go(17)><a>Internet Settings</a><p id=go16 class=nav1 onclick=go(16)><a>Security Settings</a><p id=go19 class=nav1 onclick=go(19)><a>Agent Presence</a><p id=go18 class=nav1 onclick=go(18)><a>System Defense</a><p id=go11 class=nav1 onclick=go(11)><a>User Accounts</a><p id=go22 class=nav1 onclick=go(22)><a>Subscriptions</a><p id=go23 class=nav1 onclick=go(23)><a>Wake Alarms</a><p id=go20 class=nav1 onclick=go(20)><a>Script Editor</a><p id=go12 class=nav1 onclick=go(12)><a>WSMAN Browser</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value="Disk Map" onclick=iderToggleDiskMap()><input type=button value="Stop IDE-R Session" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>Floppy, blocks are 512 bytes.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CDROM, blocks are 2048 bytes.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="Stop Script" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>Running Script</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>This computer's firmware should be updated, <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>please check here</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>Loading...</h1></div><div id=p1 style=display:none><h1>System Status</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>Hardware Information</h1><span id=18></span></div><div id=p6 style=display:none><h1>Event Log</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>Network Settings</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>User Accounts</h1><span id=23></span></div><div id=p12 style=display:none><h1>WSMAN Browser</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=Query style=margin:4px onclick=wsmanQuery()><input type=button value=Clear style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=Filter style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Serial-over-LAN Terminal</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Intel® AMT Redirection port or Serial-over-LAN feature is disabled<span id=28>, click here to enable it.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Remote computer is not powered on, click here to issue a power command.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Power Actions..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="Start remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Start Capture" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=Connect onclick=connectTerminal(event) disabled="disabled"> <span id=31>Disconnected.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value=CR+LF title="Toggle what the return key will send" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="Toggle terminal size" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Intel (F10 = ESC+[OM)" title="Toggle F1 to F10 keys emulation type" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Extended Ascii" title="Toggle terminal emulation type" onclick="termToggleType();Q(35).blur()"> </div><div> <input id=36 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-C onclick="termSendKey(3);Q(36).blur()"><input id=37 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Ctl-X onclick="termSendKey(24);Q(37).blur()"><input id=38 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=ESC onclick="termSendKey(27);Q(38).blur()"><input id=39 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=Backspace onclick="termSendKey(8);Q(39).blur()"><input id=40 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=Paste disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=41><h1>Remote Desktop</h1><br></div><div id=42 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Intel® AMT Redirection port or KVM feature is disabled<span id=43>, click here to enable it.</span></div></div><div id=44 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Remote computer is not powered on, click here to issue a power command.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=45></span> <div class=rb title="Rotate Left" onclick=drotate(-1)>↺</div><div class=rb title="Rotate Right" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="Toggle full screen mode" onkeypress="return false" onkeydown="return false" value=Full onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="Save a screenshot of the remote desktop" onkeypress="return false" onkeydown="return false" value=Save... onclick=deskSaveImage() style=margin-right:3px><input type=button value=Settings... title="Edit remote desktop settings" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="Start remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="Change the power state of the remote machine" onkeypress="return false" onkeydown="return false" value="Power Actions..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=Connect onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=46>Disconnected.</span></div><tr><td id=47 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=48 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>Win<option value=1>Win+Down<option value=2>Win+Up<option value=3>Win+L<option value=4>Win+M<option value=20>Win+R<option value=23>Win+Left<option value=24>Win+Right<option value=5>Shift+Win+M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=Send onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=49 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=50 type=button value=Type onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=51><input id=52 type=checkbox>Blank Screen </span><span id=53><input id=54 type=checkbox>View only </span></div></table></div><div id=p15 style=display:none><span id=55></span><h1>Audit Log</h1><span id=56></span></div><div id=p16 style=display:none><h1>Security Settings</h1><span id=57></span></div><div id=p17 style=display:none><h1>Internet Settings</h1><span id=58></span></div><div id=p18 style=display:none><h1>System Defense</h1><span id=59></span></div><div id=p19 style=display:none><h1>Agent Presence</h1><span id=60></span></div><div id=p20 style=display:none><h1>Script Editor</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>Stopped</div><div><input type=button value="View Editor" title="Switch to script line editor view" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="View Builder" title="Switch to block editor view" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=New... title="Clear the script editor" onclick=script_newScriptDlg()><input type=button value=Load... title="Load a script from file" onclick=script_runScriptDlg()><input type=button value=Save... title="Save a script to file" onclick=script_saveScript(event)><input type=button value=Restart title="Compile the script and get ready to run it from the start" onclick=resetScriptButton()><input type=button value=Continue title="Run the script from the current execution point" onclick=runScriptButton()><input type=button value=Break title="Pause the execution of the script" onclick=breakScriptButton()><input type=button value=Step title="Execute one step of the script" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>Script Builder</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="Filter blocks..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>Script</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>Compiled Script</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>Variables</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>Console</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>Storage</h1><span id=61></span></div><div id=p22 style=display:none><h1>Event Subscriptions</h1><span id=62></span></div><div id=p23 style=display:none><h1>Wake Alarms</h1><span id=63></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>Files</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=Up> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="Select All" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=Rename onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=Delete onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="New Folder" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=Upload onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=Cut onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=Copy onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=Paste onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=Refresh onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">Sort by name<option value=2>Sort by size<option value=3>Sort by date<option value=4>Descend by name<option value=5>Descend by size<option value=6>Descend by date</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=64 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=65 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=66 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>Username</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Password*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Confirm Password</div></div><div id=67><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>Local<option value=1>Network<option value=2>Any</select><div>Permission</div></div><div>Granted Permissions</div><ul id=68 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>*Minimum 8 characters with upper, lowercase, 0-9, and one of !@#$%^&*()+-</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>Power Action</div></div><div><span style=color:red>Warning:</span>Some power actions may result in data loss and may disconnect the desktop, terminal or disk redirection sessions.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>Consent Code</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>Primary display<option value=1>Secondary display<option id=d6ThirdDisplay value=2 style=display:none>Third display</select><div>Consent Display</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, Color<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>Image Encoding</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>Show Local Mouse Cursor</label><br><label><input type=checkbox id=d7showcad>Show Ctrl-Alt-Del</label><br><label><input type=checkbox id=d7limitFrameRate>Limit Frame Rate</label><br><label><input type=checkbox id=d7noMouseRotate>Don't Rotate Mouse</label><br></div><div>Other Settings</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">Software KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>Quality</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87.5%<option value=768>75%<option value=640>62.5%<option value=512>50%<option value=384>37.5%<option value=256>25%<option value=128>12.5%</select><div style=height:20px>Scaling</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=admin style=float:right;width:220px><div style=height:20px>Username</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>Password</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>Redirection Port</label><label id=c15 style=display:block><input type=checkbox id=c16>KVM Remote Desktop</label><label style=display:block><input type=checkbox id=c17>IDE-Redirection<br></label><label style=display:block><input type=checkbox id=c18>Serial-over-LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>Not Required<br></label><label><input type=radio name=d10 id=c20 value=1>Required for KVM only<br></label><label><input type=radio name=d10 id=c21 value=4294967295>Always Required<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=69></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Maximum 32 characters"><div title="Maximum 32 characters">Profile Name</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Maximum 32 characters"><div title="Maximum 32 characters">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>Priority</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>Authentication</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=70 value=4>CCMP-AES<option id=71 value=3>TKIP-RC4<option id=72 value=2>WEP<option id=73 value=5>None</select><div>Encryption</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Length between 8 and 63 characters"><div title="Length between 8 and 63 characters">Password*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Length between 8 and 63 characters"><div title="Length between 8 and 63 characters">Confirm Password</div></div></div><div id=dialog19 style=margin:auto;margin:3px>This will save the entire state of Intel® AMT for this machine into file. Passwords will not be saved, but some sensitive data may be included.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>Disabled<br><input type=radio name=d20 id=d20b value=1>ICMP response<br><input type=radio name=d20 id=d20c value=2>RMCP response<br><input type=radio name=d20 id=d20d value=3>ICMP & RMCP response<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=74><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>Operating system IP address sync</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=75><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>IP address</div></div><div style=height:26px id=76><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Subnet mark</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Gateway</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Primary DNS</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Alternate DNS</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>Disabled<option value=1>Disabled, DHCP update<option value=2>Enabled</select><div>Dynamic DNS client</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>Update Interval (minutes)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (seconds)</div></div><div style=font-size:10px><br>Defaut Interval is 1440 minutes, Default TTL is 900 seconds.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>Power up<option value=10>Reset<option value=5>Power cycle<option value=8>Power down<option id=d24p500 value=500>OS Wake from Standby<option id=d24p501 value=501>OS Power Saving<option value=999>Set boot options</select><div>Remote Command</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>BIOS Pause</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>Enforce Secure Boot</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>BIOS Setup</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>Force progress events</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>Lock power button</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>Lock reset button</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>Lock sleep button</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>Lock keyboard</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>BIOS password bypass</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>Reflash BIOS</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>Safe mode</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>Use IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Serial-over-LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>Intel® Remote Secure Erase</label><br></div></div><div>Boot Settings</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>None<option id=ForceDVDBootOption value=1>Force CD/DVD Boot<option id=ForcePXEBootOption value=2>Force PXE Boot<option id=ForceHDBootOption value=3>Force Hard Disk Boot<option id=ForceDiagBootOption value=4>Force Diagnostic Boot</select><div>Boot Source</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>None<option value=1>Index 1<option value=2>Index 2<option value=3>Index 3<option value=3>Index 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Boot to floppy<option value=1>Boot to CDROM</select><div>IDER Boot Device</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>System Default<option id=c45 value=1>Quiet<option id=c46 value=2>Verbose<option id=c47 value=3>Blank Screen</select><div>Verbocity</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>RSE Password</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>Alarm name</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Wake date (year-month-day)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>Wake time (hour:min:sec)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Interval (days-hours-min)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>Keep alarm<option value=1>Delete on completion</select></div><div style=padding-top:4px>After wake</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=Cancel style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=OK style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=Delete style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
1
+<!DOCTYPE html><html lang="en" style=height:100%><head><meta http-equiv=X-UA-Compatible content="IE=edge"><meta content="text/html;charset=utf-8" http-equiv=Content-Type><meta name=format-detection content="telephone=no"><link rel="icon" type=image/png href="data:image/png;base64,iVBORw0KGgo="><style>body{height:100%;max-height:100%;overflow:hidden;font-family:arial, helvetica, sans-serif;font-size:9pt;color:black;background:white;margin-top:0;margin-left:0;margin-right:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}li{margin:0;padding:0;} a:visited{text-decoration:none;color:#04f;}a:link{text-decoration:none;color:#04f;}a:hover{color:#a32;}h1{font-size:11pt;font-weight:bold;color:black;margin-left:5px;margin-top:10px;margin-bottom:6px;}h2{font-size:9pt;font-weight:bold;color:black;margin-left:6px;margin-top:6px;margin-bottom:0;}p{margin-left:6px;margin-top:4px;margin-bottom:0;margin-right:2px;}td{font-size:9pt;}th{font-size:9pt;}th:hover{cursor:pointer;background:#aaa;}.header{position:fixed;top:0;left:0;right:0;height:24px;background:#c0c0c0;}.progressbar{position:fixed;top:24px;left:0;right:0;height:2px;background:#ff9e30;}.in{margin-left:40px;}.log{background:#bbbab5;}.log1{background:#bbbab5;}.log tbody tr:nth-child(odd){background:#e8eefe;}.fullcell{position:fixed;top:26px;right:0;bottom:0;left:0px;overflow:hidden;}.maincell{position:fixed;top:26px;right:0;bottom:0;left:156px;overflow:auto;padding-left:2px;vertical-align:top;}.navbar{position:fixed;top:26px;left:0;bottom:0;width:156px;border-right:2px solid #ff9e30;vertical-align:top;background:#72726f;background:linear-gradient(45deg, #72726f 0%,#a6a5a0 100%);}.nav1{padding:1px 0px 1px 8px;margin:0px;font-weight:bold;color:black;white-space:nowrap;cursor:pointer;}.nav2{margin-left:32px;margin-top:0;color:black;cursor:pointer;}.r{font-size:11pt;}.r0{background:white;}.r1{border-bottom:1px solid gray;text-align:left;}.r2{text-align:left;}.r3{border-bottom:1px solid gray;text-align:left;}.r3:hover{background-color:#83827b;cursor:pointer;}.spread{height:100%;width:100%;background-color:white;}.timer{border:1px solid #abcae1;background-color:#abcae1;}.tm{font-size:7pt;}.top1{font-size:14pt;font-weight:bold;color:white;margin-top:11px;}.top2{color:white;}.warn{font-weight:bold;color:#c00000;}.icon1{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon2{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.icon3{width:14px;height:15px;background-repeat:no-repeat;background-image:url("data:image/png;base64,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");}.itemBar{padding:7px;min-height:20px;margin-top:4px;margin-right:8px;width:auto;border-radius:8px;background-color:#7e7d74;cursor:pointer;}.computeritem{cursor:pointer;width:auto;border-radius:5px;background-color:#a6a5a0;height:28px;margin:4px;padding:2px;}.computeritem:hover{background-color:#83827b;}.us{-webkit-touch-callout:initial;-webkit-user-select:auto;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;}.rb{cursor:pointer;border:none;float:right;font-size:130%;margin-right:4px;}.fileIcon1{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb49Y2Sj9LT2f///yH5BAEAAAMALAAAAAAQABAAAAImnI+py+1vhJwyUYAzHTL4D3qdlJWaIFJqmKod607sDKIiDUP63hQAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon2{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAM2xV/Xur+XPgP///yH5BAEAAAMALAAAAAAQABAAAAJD3ISZIGHWUGihznesYDYATFVM+D2hJ4lgN1olxALAtAlmPCJvuMmJd6PJckDYwicrHhTD5o7plJmg0Uc0asNMkphHAQA7);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.fileIcon3{background:url(data:image/gif;base64,R0lGODlhEAAQAJEDAPb19IGBgbq6uv///yH5BAEAAAMALAAAAAAQABAAAAIy3ISpxgcPH2ouQgFEw1YmxnUXKEaaEZZnVWZk66JwzKpvuwZzwOgwb/C1gIOA8Yg8DgoAOw==);height:16px;width:16px;cursor:pointer;border:none;float:left;margin-top:1px;}.filelist{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;cursor:default;-khtml-user-drag:element;background-color:white;clear:both;}.fsize{float:right;text-align:right;width:180px;}</style><body onunload="cleanup()"><div id=0 class=header><table id=1 cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tr><td id=2 class=style6><div> <input type=button class=connectbutton id=xconnectbutton1 value=Connect onclick="connectButtonfunction(event, false)" onkeypress="return false" onkeydown="return false"> <span id=constatus></span></div></table><div class=progressbar><div id=3 style=height:2px;width:0%;background-color:red></div></div></div><div id=4 class=fullcell style=text-align:center;padding-top:100px;font-size:20px><span id=5>Disconnected</span></div><div id=6 style=height:100%;display:none><div id=7 class=navbar><br><p id=go1 class=nav1 onclick=go(1)><a>System Status</a><p id=go14 class=nav1 onclick=go(14)><a>Remote Desktop</a><p id=go24 class=nav1 onclick=go(24)> <a>Files</a><p id=go13 class=nav1 onclick=go(13)><a>Serial-over-LAN</a><p id=go2 class=nav1 onclick=go(2)><a>Hardware Information</a><p id=go6 class=nav1 onclick=go(6)><a>Event Log</a><p id=go15 class=nav1 onclick=go(15)><a>Audit Log</a><p id=go21 class=nav1 onclick=go(21)><a>Storage</a><p id=go8 class=nav1 onclick=go(8)><a>Network Settings</a><p id=go17 class=nav1 onclick=go(17)><a>Internet Settings</a><p id=go16 class=nav1 onclick=go(16)><a>Security Settings</a><p id=go19 class=nav1 onclick=go(19)><a>Agent Presence</a><p id=go18 class=nav1 onclick=go(18)><a>System Defense</a><p id=go11 class=nav1 onclick=go(11)><a>User Accounts</a><p id=go22 class=nav1 onclick=go(22)><a>Subscriptions</a><p id=go23 class=nav1 onclick=go(23)><a>Wake Alarms</a><p id=go20 class=nav1 onclick=go(20)><a>Script Editor</a><p id=go12 class=nav1 onclick=go(12)><a>WSMAN Browser</a></div><div id=8 class=maincell><div id=9 style=position:relative;height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;z-index:1000><div style=float:right><input id=IDERDiskMapButton type=button value="Disk Map" onclick=iderToggleDiskMap()><input type=button value="Stop IDE-R Session" onclick=iderStop()></div><div style=font-size:16px;padding-top:2px> <span id=10></span></div><div id=iderHeatmap style="z-index:1000;position:absolute;top:31px;right:8px;border:1px solid black;box-shadow:0px 0px 10px;border-radius:5px;padding:8px;width:600px;background-color:#99CC99;display:none"><div id=floppyHeatMap style=display:none><div id=floppyHeatMapText style=margin:2px>Floppy, blocks are 512 bytes.</div><canvas id=floppyHeatMapCanvas width=600 height=0></canvas></div><div id=cdromHeatMap style=display:none><div id=cdromHeatMapText style=margin:2px>CDROM, blocks are 2048 bytes.</div><canvas id=cdromHeatMapCanvas width=600 height=0></canvas></div></div></div><div id=11 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none;overflow:hidden><div style=float:right><input type=button value="Stop Script" onclick=script_Stop()></div><div style=font-size:16px;padding-top:2px;overflow:hidden> <b>Running Script</b><span style=overflow:hidden id=12></span></div></div><div id=13 style=height:21px;background:#8fac8d;padding:5px;margin-bottom:1px;display:none><div style=font-size:16px;float:right;cursor:pointer;padding-right:5px;padding-left:5px;padding-top:2px;font-size:15px onclick="QV(13, false)">✖</div><div style=font-size:14px;padding-top:2px> <b>This computer's firmware should be updated, <a style=cursor:pointer href="https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00075&languageid=en-fr" rel="noreferrer noopener" target="_blank"><u>please check here</u></a>.</b></div></div><div id=14 style=width:100%;height:100%><iframe id=15 style=width:100%;height:100%;border:0></iframe></div><div id=16 style=padding:8px;overflow-x:hidden><div id=p0><h1>Loading...</h1></div><div id=p1 style=display:none><h1>System Status</h1><span id=17></span></div><div id=p2 style=display:none><h1 style=margin-bottom:16px>Hardware Information</h1><span id=18></span></div><div id=p6 style=display:none><h1>Event Log</h1><span id=19></span><span id=20></span></div><div id=p8 style=display:none><h1>Network Settings</h1><span id=21></span><span id=22></span></div><div id=p11 style=display:none><h1>User Accounts</h1><span id=23></span></div><div id=p12 style=display:none><h1>WSMAN Browser</h1><div><table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><div style=padding:4px><select id=24 multiple="multiple" style=width:100%;height:120px></select></div><tr><td><input id=25 type=button value=Query style=margin:4px onclick=wsmanQuery()><input type=button value=Clear style=margin:4px onclick="QH(26, '')"><input id=c0 placeholder=Filter style=margin:4px onkeyup=wsmanFilter()></table></div><br><div class=us id=26></div></div><div id=p13 style=display:none;min-width:780px><h1>Serial-over-LAN Terminal</h1><br><div id=27 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Intel® AMT Redirection port or Serial-over-LAN feature is disabled<span id=28>, click here to enable it.</span></div></div><div id=29 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Remote computer is not powered on, click here to issue a power command.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input onkeyup=sendTermInputKeys(event) autocorrect=off autocapitalize=off style=opacity:0;width:0;height:0;font-size:1px onblur="keyInputBlur()"><span id=30></span> <div id=termRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Power Actions..." onclick=showPowerActionDlg() style=margin-right:3px><input type=button id=c1 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c2 value=IDER title="Start remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input id=c3 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value="Start Capture" title="Toggle start/stop of terminal capture, when stopping the content of the capture buffer will be saved to a file." onclick=terminalCaptureToggle(event) style=margin-right:3px></div><div> <input type=button id=c4 value=Connect onclick=connectTerminal(event) disabled="disabled"> <span id=31>Disconnected.</span></div><tr><td style=background:#000;text-align:center><pre id=Term></pre><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><input id=32 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value=CR+LF title="Toggle what the return key will send" onclick="termToggleCr();Q(32).blur()"><input id=33 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event); return false" class=bottombutton value=80x25 title="Toggle terminal size" onclick="termToggleSize();Q(33).blur()"><input id=34 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Intel (F10 = ESC+[OM)" title="Toggle F1 to F10 keys emulation type" onclick="termToggleFx();Q(34).blur()"><input id=35 type=button onkeypress="return false" onkeydown="if (event.keyCode == 13) handleKeyPress(event);return false" class=bottombutton value="Extended Ascii" title="Toggle terminal emulation type" onclick="termToggleType();Q(35).blur()"> </div><div><span id=termkeysspan><select style=margin-left:6px id=termkeys><option value=3>Ctrl-C<option value=24>Ctrl-X<option value=27>ESC<option value=8>Backspace<option value=1001>F1<option value=1002>F2<option value=1003>F3<option value=1004>F4<option value=1005>F5<option value=1006>F6<option value=1007>F7<option value=1008>F8<option value=1009>F9<option value=1010>F10<option value=1011>F11<option value=1012>F12</select><input id=TermWD type=button value=Send onkeypress="return false" onkeydown="return false" onclick=termSendKeys()> </span><input id=36 type=button onkeypress="return false" onkeydown="return false" class=cadbutton value=Paste disabled="disabled" onclick="setDialogMode(3,'Paste',3,termPaste)"></div></table></div><div id=p14 style=display:none;min-width:780px><div id=37><h1>Remote Desktop</h1><br></div><div id=38 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showFeaturesDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Intel® AMT Redirection port or KVM feature is disabled<span id=39>, click here to enable it.</span></div></div><div id=40 style=max-width:100%;display:none;cursor:pointer;margin-bottom:5px onclick=showPowerActionDlg()><div class=icon2 style=float:left;margin:7px></div><div style=width:auto;border-radius:8px;padding:8px;background-color:lightsalmon>Remote computer is not powered on, click here to issue a power command.</div></div><table cellpadding=0 cellspacing=0 style=width:100%;padding:0px;padding:0px;margin-top:0px><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div style=float:right;text-align:right><span id=41></span> <div class=rb title="Rotate Left" onclick=drotate(-1)>↺</div><div class=rb title="Rotate Right" onclick=drotate(1)>↻</div><div id=deskRecordIcon title="Server is recording this session" style=display:none;float:right;background-color:red;width:12px;height:12px;border-radius:6px;margin-top:5px;margin-right:4px></div><input id=c5 type=button title="Toggle full screen mode" onkeypress="return false" onkeydown="return false" value=Full onclick=deskToggleFull() style=margin-right:3px><input id=c6 type=button title="Save a screenshot of the remote desktop" onkeypress="return false" onkeydown="return false" value=Save... onclick=deskSaveImage() style=margin-right:3px><input type=button value=Settings... title="Edit remote desktop settings" onkeypress="return false" onkeydown="return false" onclick=showDesktopSettings() style=margin-right:3px><input type=button id=c7 value=SIDER title="Start server-side remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderServerStart() style=margin-right:3px><input type=button id=c8 value=IDER title="Start remote disk mount operation" onkeypress="return false" onkeydown="return false" onclick=iderStart(event) style=margin-right:3px><input type=button title="Change the power state of the remote machine" onkeypress="return false" onkeydown="return false" value="Power Actions..." onclick=showPowerActionDlg() style=margin-right:3px></div><div><div id=c9 onclick=deskToggleFull() style=float:left;cursor:pointer;font-size:15px;display:none> ✖</div> <input type=button id=c10 value=Connect onclick=connectDesktopButton(event) onkeypress="return false" onkeydown="return false" disabled="disabled"> <span id=42>Disconnected.</span></div><tr><td id=43 style=background:black;text-align:center;position:relative><canvas id=Desk width=640 height=400 style=-ms-touch-action:none;margin-left:0px oncontextmenu="return false" onmousedown=dmousedown(event) onmouseup=dmouseup(event) onmousemove=dmousemove(event) onmousewheel="dmousewheel(event)" moz-opaque=""></canvas><tr><td style=padding-top:2px;padding-bottom:2px;background:#CCC><div id=44 style=float:right></div><div> <span id=deskkeysspan><select style=margin-left:6px id=deskkeys><option value=0>Win<option value=1>Win+Down<option value=2>Win+Up<option value=3>Win+L<option value=4>Win+M<option value=20>Win+R<option value=23>Win+Left<option value=24>Win+Right<option value=5>Shift+Win+M<option value=19>Alt-Tab<option value=21>Alt-F4<option value=22>Ctrl-W<option value=6>F1<option value=7>F2<option value=8>F3<option value=9>F4<option value=10>F5<option value=11>F6<option value=12>F7<option value=13>F8<option value=14>F9<option value=15>F10<option value=16>F11<option value=17>F12</select><input id=DeskWD type=button value=Send onkeypress="return false" onkeydown="return false" onclick=deskSendKeys()> </span><input id=45 type=button value=Ctrl-Alt-Del onkeypress="return false" onkeydown="return false" onclick=sendCAD()> <input id=46 type=button value=Type onkeypress="return false" onkeydown="return false" onclick=deskShowTypeDialog()> <span id=47><input id=48 type=checkbox>Blank Screen </span><span id=49><input id=50 type=checkbox>View only </span></div></table></div><div id=p15 style=display:none><span id=51></span><h1>Audit Log</h1><span id=52></span></div><div id=p16 style=display:none><h1>Security Settings</h1><span id=53></span></div><div id=p17 style=display:none><h1>Internet Settings</h1><span id=54></span></div><div id=p18 style=display:none><h1>System Defense</h1><span id=55></span></div><div id=p19 style=display:none><h1>Agent Presence</h1><span id=56></span></div><div id=p20 style=display:none><h1>Script Editor</h1><div class=log1 style=padding:5px;border-radius:5px><div id=EditScriptStatus style=float:right;font-weight:bold;padding:5px>Stopped</div><div><input type=button value="View Editor" title="Switch to script line editor view" id=viewEditorButton onclick=scriptViewButton(0)><input type=button value="View Builder" title="Switch to block editor view" id=viewBuilderButton onclick=scriptViewButton(1)><input type=button value=New... title="Clear the script editor" onclick=script_newScriptDlg()><input type=button value=Load... title="Load a script from file" onclick=script_runScriptDlg()><input type=button value=Save... title="Save a script to file" onclick=script_saveScript(event)><input type=button value=Restart title="Compile the script and get ready to run it from the start" onclick=resetScriptButton()><input type=button value=Continue title="Run the script from the current execution point" onclick=runScriptButton()><input type=button value=Break title="Pause the execution of the script" onclick=breakScriptButton()><input type=button value=Step title="Execute one step of the script" onclick=stepScriptButton()></div></div><div id=scriptbuilder style=display:none><h2>Script Builder</h2><div style=padding:0;margin:0><div style=width:250px;height:400px;float:left;padding:0;margin:0;padding-right:3px><input id=blockfilter style="width:inherit;height:24px;padding:0;margin:0;border:1px solid gray;margin-bottom:1px" placeholder="Filter blocks..." onkeyup=script_fonfilterchanged()><div id=blocks style="width:inherit;height:373px;border:1px solid gray;overflow-y:scroll;padding:0;margin:0"></div></div><div id=scriptblocks style="width:auto;height:400px;padding:0;margin:0;border:1px solid gray;overflow-y:scroll" ondrop="script_fondrop(event, this)" onclick=script_fonclick(event)></div></div></div><div id=scripteditor><h2>Script</h2><textarea id=scriptarea style=width:100%;height:176px;resize:vertical;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif spellcheck="false"></textarea><div style=display:none><br><h2>Compiled Script</h2><textarea id=compiledarea style=width:100%;height:16px;resize:vertical;margin:0;padding:0 spellcheck="false"></textarea><br></div><h2>Variables</h2><div id=variables style="width:100%;height:200px;resize:vertical;border:1px solid gray;overflow:scroll;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text"></div></div><h2>Console</h2><textarea id=console style=width:100%;height:80px;resize:vertical;margin:0;padding:0;user-select:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text readonly=""></textarea></div><div id=p21 style=display:none><h1>Storage</h1><span id=57></span></div><div id=p22 style=display:none><h1>Event Subscriptions</h1><span id=58></span></div><div id=p23 style=display:none><h1>Wake Alarms</h1><span id=59></span></div><div id=p24 style=display:none;position:absolute;top:0px;bottom:0px;left:8px;right:24px><h1>Files</h1><br><table id=p24toolbar style=width:100%;position:absolute;top:35px cellpadding=0 cellspacing=0><tr><td style=width:100%;background-color:#d3d9d6;text-align:left;padding:4px valign="bottom"><div id=p24rightOfButtons style=float:right;margin-top:3px></div><div><input type=button id=p24FolderUp disabled="disabled" onclick=p24folderup() value=Up> <input type=button id=p24SelectAllButton disabled="disabled" onclick=p24selectallfile() value="Select All" onkeypress="return false" onkeydown="return false"> <input type=button id=p24RenameFileButton disabled="disabled" value=Rename onclick=p24renamefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24DeleteFileButton disabled="disabled" value=Delete onclick=p24deletefile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24NewFolderButton disabled="disabled" value="New Folder" onclick=p24createfolder() onkeypress="return false" onkeydown="return false"> <input type=button id=p24UploadButton disabled="disabled" value=Upload onclick=p24uploadFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24CutButton disabled="disabled" value=Cut onclick=p24copyFile(1) onkeypress="return false" onkeydown="return false"> <input type=button id=p24CopyButton disabled="disabled" value=Copy onclick=p24copyFile(0) onkeypress="return false" onkeydown="return false"> <input type=button id=p24PasteButton disabled="disabled" value=Paste onclick=p24pasteFile() onkeypress="return false" onkeydown="return false"> <input type=button id=p24RefreshButton disabled="disabled" value=Refresh onclick=p24folderup(9999) onkeypress="return false" onkeydown="return false"> </div><tr><td style=background-color:#E4E9E7;height:28px><div style=float:right;margin-right:4px><select id=p24sortdropdown onchange=p24updateFiles()><option value=1 selected="selected">Sort by name<option value=2>Sort by size<option value=3>Sort by date<option value=4>Descend by name<option value=5>Descend by size<option value=6>Descend by date</select></div><div> <span id=p24currentpath></span></div></table><div id=p24filetable style=width:100%;overflow:auto;-webkit-user-select:none;position:absolute;top:92px;bottom:30px><div id=p24bigok style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✓</b></div><div id=p24bigfail style=width:256px;overflow:hidden;position:absolute;top:80px;width:100%;text-align:center;font-size:1600%;color:#AAAAAA;display:none><b>✗</b></div><span id=p24files></span></div><table id=p24toolbarBottom style=width:100%;position:absolute;bottom:10px cellpadding=0 cellspacing=0><tr><td style=text-align:left;padding:3px;text-align:center;background-color:#D3D9D6> <span id=p24bottomstatus></span></table></div></div></div></div><div id=dialog style="z-index:1000;background-color:#EEE;box-shadow:0px 0px 15px #666;font-family:Arial, Helvetica, sans-serif;border-radius:5px;position:fixed;overflow:hidden;top:75px;width:400px;max-height:550px;display:none"><div style="width:100%;background-color:#003366;color:#FFF;border-radius:5px 5px 0 0"><div id=60 style=float:right;padding:1px;margin-right:5px;cursor:pointer;font-size:15px onclick=setDialogMode()>✖</div><div id=61 style=padding:5px></div><div style=width:100%;margin:6px></div></div><div style=margin-right:16px;margin-left:8px><div id=dialog1 style=margin:auto;text-align:center;margin:3px><div id=62 style=padding:10px></div></div><div id=dialog2 style=margin:auto;margin:3px><br><div style=height:26px><input id=d2username style=float:right;width:200px onkeyup=updateAccountDialog()><div>Username</div></div><div style=height:26px><input id=d2password1 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Password*</div></div><div style=height:26px><input id=d2password2 type=password autocomplete="off" style=float:right;width:200px onkeyup=updateAccountDialog()><div>Confirm Password</div></div><div id=63><div style=height:26px><select id=d2permission style=float:right;width:200px><option value=0>Local<option value=1>Network<option value=2>Any</select><div>Permission</div></div><div>Granted Permissions</div><ul id=64 style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0"></ul></div><div style=font-size:10px><br>*Minimum 8 characters with upper, lowercase, 0-9, and one of !@#$%^&*()+-</div></div><div id=dialog3 style=margin:auto;text-align:center;margin:3px><textarea id=d3pastetextarea maxlength="4096" style=width:100%;height:200px;resize:none></textarea></div><div id=dialog5 style=margin:auto;margin:3px><br><div style=height:26px><select id=d5actionSelect style=float:right;width:200px></select><div>Power Action</div></div><div><span style=color:red>Warning:</span>Some power actions may result in data loss and may disconnect the desktop, terminal or disk redirection sessions.</div></div><div id=dialog6 style=margin:auto;margin:3px><br><div style=height:26px><input id=d6ConsentText style=float:right;width:200px maxlength="6" onkeyup=consentChanged() onkeypress="if (event.keyCode == 13) return dialogclose(1); else return numbersOnly(event)"><div>Consent Code</div></div><div style=height:26px><select id=d6Display onchange=changeConsentDisplay() style=float:right;width:200px><option value=0>Primary display<option value=1>Secondary display<option id=d6ThirdDisplay value=2 style=display:none>Third display</select><div>Consent Display</div></div></div><div id=dialog7 style=margin:auto;margin:3px><br><div style=height:26px><select id=c11 style=float:right;width:200px><option id=d7exm1 value=5>RLE4G, Gray (Fast)<option id=d7exm2 value=7>RLE8G, Gray<option value=1>RLE8, Color<option value=3>RLE16, Color<option id=d7exm3 value=13>ZRLE8G, Compressed Gray<option id=d7exm4 value=15>ZRLE16G, Compressed Gray<option id=d7exm5 value=9>ZRLE8, Compressed Color<option id=d7exm6 value=11>ZRLE16, Compressed Color<option value=0>RAW8, Color<option value=2>RAW16, Color (Slow)</select><div>Image Encoding</div></div><div style=height:80px><div style="float:right;border:1px solid #666;width:200px;height:80px;overflow-y:scroll;background-color:white"><label><input type=checkbox id=d7showcursor>Show Local Mouse Cursor</label><br><label><input type=checkbox id=d7showcad>Show Ctrl-Alt-Del</label><br><label><input type=checkbox id=d7limitFrameRate>Limit Frame Rate</label><br><label><input type=checkbox id=d7noMouseRotate>Don't Rotate Mouse</label><br></div><div>Other Settings</div></div><div id=d7softkvmsettings style=display:none><h4 style="width:100%;border-bottom:1px solid gray">Software KVM</h4><div style="margin:3px 0 3px 0"><select id=d7bitmapquality style=float:right;width:200px;height:20px dir="rtl"><option value=50>50%<option value=40>40%<option selected="selected" value=30>30%<option value=20>20%<option value=10>10%<option value=5>5%<option value=1>1%</select><div style=height:20px>Quality</div></div><div style="margin:3px 0 3px 0"><select id=d7bitmapscaling style=float:right;width:200px;height:20px dir="rtl"><option selected="selected" value=1024>100%<option value=896>87.5%<option value=768>75%<option value=640>62.5%<option value=512>50%<option value=384>37.5%<option value=256>25%<option value=128>12.5%</select><div style=height:20px>Scaling</div></div></div></div><div id=dialog8 style=display:table;margin:3px><div style="margin:3px 0 3px 0;padding-top:5px"><input id=c12 value=admin style=float:right;width:220px><div style=height:20px>Username</div></div><div style="margin:3px 0 3px 0"><input id=c13 type=password autocomplete="off" style=float:right;width:220px><div style=height:20px>Password</div></div></div><div id=dialog9 style=margin:auto;margin:3px><label style=display:block><input type=checkbox id=c14>Redirection Port</label><label id=c15 style=display:block><input type=checkbox id=c16>KVM Remote Desktop</label><label style=display:block><input type=checkbox id=c17>IDE-Redirection<br></label><label style=display:block><input type=checkbox id=c18>Serial-over-LAN<br></label></div><div id=dialog10 style=margin:auto;margin:3px><label><input type=radio name=d10 id=c19 value=0>Not Required<br></label><label><input type=radio name=d10 id=c20 value=1>Required for KVM only<br></label><label><input type=radio name=d10 id=c21 value=4294967295>Always Required<br></label></div><div id=dialog11 style=margin:auto;margin:3px><div id=65></div></div><div id=dialog12 style=margin:auto;margin:3px><br><div style=height:26px><input id=c22 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Maximum 32 characters"><div title="Maximum 32 characters">Profile Name</div></div><div style=height:26px><input id=c23 style=float:right;width:200px maxlength="32" onkeyup=updateWifiDialog() title="Maximum 32 characters"><div title="Maximum 32 characters">SSID</div></div><div style=height:26px><select id=c24 style=float:right;width:200px onclick=updateWifiDialog()></select><div>Priority</div></div><div style=height:26px><select id=c25 style=float:right;width:200px onclick=updateWifiDialog()><option value=6>WPA2 PSK<option value=4>WPA PSK</select><div>Authentication</div></div><div style=height:26px><select id=c26 style=float:right;width:200px onclick=updateWifiDialog()><option id=66 value=4>CCMP-AES<option id=67 value=3>TKIP-RC4<option id=68 value=2>WEP<option id=69 value=5>None</select><div>Encryption</div></div><div style=height:26px><input id=c27 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Length between 8 and 63 characters"><div title="Length between 8 and 63 characters">Password*</div></div><div style=height:26px><input id=c28 type=password style=float:right;width:200px maxlength="63" onkeyup=updateWifiDialog() title="Length between 8 and 63 characters"><div title="Length between 8 and 63 characters">Confirm Password</div></div></div><div id=dialog19 style=margin:auto;margin:3px>This will save the entire state of Intel® AMT for this machine into file. Passwords will not be saved, but some sensitive data may be included.<br><br><input id=c29 style=width:100% value=amtstate.json></div><div id=dialog20 style=margin:auto;margin:3px><input type=radio name=d20 id=d20a value=0>Disabled<br><input type=radio name=d20 id=d20b value=1>ICMP response<br><input type=radio name=d20 id=d20c value=2>RMCP response<br><input type=radio name=d20 id=d20d value=3>ICMP & RMCP response<br><br></div><div id=dialog21 style=margin:auto;margin:3px><div id=70><label><input type=checkbox name=d21 id=d21ipsync onclick=updateIPSetupDlg()>Operating system IP address sync</label><br></div><label><input type=radio name=d21 id=d21o0 onclick=updateIPSetupDlg()><span id=d21l0></span></label><br><label><input type=radio name=d21 id=d21o1 onclick=updateIPSetupDlg()><span id=d21l1></span></label><br><div id=71><label><input type=radio name=d21 id=d21o2 onclick=updateIPSetupDlg()><span id=d21l2></span></label><br><br><div style=margin-left:20px><div style=height:26px><input id=c30 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>IP address</div></div><div style=height:26px id=72><input id=c31 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Subnet mark</div></div><div style=height:26px><input id=c32 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Gateway</div></div><div style=height:26px><input id=c33 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Primary DNS</div></div><div style=height:26px><input id=c34 onkeyup=updateIPSetupDlg() style=float:right;width:230px><div>Alternate DNS</div></div></div></div></div><div id=dialog23 style=margin:auto;margin:3px><br><div style=height:26px><select id=c35 style=float:right;width:200px onchange=showEditDnsDlgChange()><option value=0>Disabled<option value=1>Disabled, DHCP update<option value=2>Enabled</select><div>Dynamic DNS client</div></div><div style=height:26px><input id=c36 style=float:right;width:200px><div>Update Interval (minutes)</div></div><div style=height:26px><input id=c37 style=float:right;width:200px><div>TTL (seconds)</div></div><div style=font-size:10px><br>Defaut Interval is 1440 minutes, Default TTL is 900 seconds.</div></div><div id=dialog24 style=margin:auto;margin:3px><br><div style=height:26px><select id=c38 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=2>Power up<option value=10>Reset<option value=5>Power cycle<option value=8>Power down<option id=d24p500 value=500>OS Wake from Standby<option id=d24p501 value=501>OS Power Saving<option value=999>Set boot options</select><div>Remote Command</div></div><div style=height:80px><div id=c39 style="float:right;border:1px solid #666;width:200px;height:72px;overflow-y:scroll;background-color:white"><div id=d24dBiosPause><label><input type=checkbox id=d24BiosPause onchange=showAdvPowerDlgChange()>BIOS Pause</label><br></div><div id=d24dBiosSecureBoot><label><input type=checkbox id=d24BiosSecureBoot onchange=showAdvPowerDlgChange()>Enforce Secure Boot</label><br></div><div id=d24dBiosSetup><label><input type=checkbox id=d24BiosSetup onchange=showAdvPowerDlgChange()>BIOS Setup</label><br></div><div id=d24dForceProgressEvents><label><input type=checkbox id=d24ForceProgressEvents onchange=showAdvPowerDlgChange()>Force progress events</label><br></div><div id=d24dLockPowerButton><label><input type=checkbox id=d24LockPowerButton onchange=showAdvPowerDlgChange()>Lock power button</label><br></div><div id=d24dLockResetButton><label><input type=checkbox id=d24LockResetButton onchange=showAdvPowerDlgChange()>Lock reset button</label><br></div><div id=d24dLockSleepButton><label><input type=checkbox id=d24LockSleepButton onchange=showAdvPowerDlgChange()>Lock sleep button</label><br></div><div id=d24dLockKeyboard><label><input type=checkbox id=d24LockKeyboard onchange=showAdvPowerDlgChange()>Lock keyboard</label><br></div><div id=d24dUserPasswordBypass><label><input type=checkbox id=d24UserPasswordBypass onchange=showAdvPowerDlgChange()>BIOS password bypass</label><br></div><div id=d24dReflashBios><label><input type=checkbox id=d24ReflashBios onchange=showAdvPowerDlgChange()>Reflash BIOS</label><br></div><div id=d24dSafeMode><label><input type=checkbox id=d24SafeMode onchange=showAdvPowerDlgChange()>Safe mode</label><br></div><div id=d24dUseIDER><label><input type=checkbox id=d24UseIDER onchange=showAdvPowerDlgChange()>Use IDER</label><br></div><div id=d24dSerialOverLan><label><input type=checkbox id=d24SerialOverLan onchange=showAdvPowerDlgChange()>Serial-over-LAN</label><br></div><div id=d24dSecureErase><label><input type=checkbox id=d24SecureErase onchange=showAdvPowerDlgChange()>Intel® Remote Secure Erase</label><br></div></div><div>Boot Settings</div></div><div style=height:26px><select id=c40 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>None<option id=ForceDVDBootOption value=1>Force CD/DVD Boot<option id=ForcePXEBootOption value=2>Force PXE Boot<option id=ForceHDBootOption value=3>Force Hard Disk Boot<option id=ForceDiagBootOption value=4>Force Diagnostic Boot</select><div>Boot Source</div></div><div id=c41 style=height:26px><select id=c42 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>None<option value=1>Index 1<option value=2>Index 2<option value=3>Index 3<option value=3>Index 4</select><div>Boot Media</div></div><div style=height:26px id=idd_d24IDERBootDevice><select id=c43 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>Boot to floppy<option value=1>Boot to CDROM</select><div>IDER Boot Device</div></div><div style=height:26px><select id=c44 style=float:right;width:200px onchange=showAdvPowerDlgChange()><option value=0>System Default<option id=c45 value=1>Quiet<option id=c46 value=2>Verbose<option id=c47 value=3>Blank Screen</select><div>Verbocity</div></div><div style=height:26px id=idd_d24RSEPass><div style=float:right;width:200px><input type=password id=d24rsepass maxlength="32" style=float:right;width:100%></div><div>RSE Password</div></div></div><div id=dialog25 style=margin:auto;margin:3px><div style=text-align:left><div style=height:26px;margin-top:4px><input id=d25alarm_name style=float:right;width:180px maxlength="32" onkeyup=alertDialogUpdate()><div style=padding-top:4px>Alarm name</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_sdate style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Wake date (year-month-day)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_stime style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,58)"></div><div style=padding-top:4px>Wake time (hour:min:sec)</div></div><div style=height:26px;margin-top:4px><div style=float:right><input id=d25alarm_interval style=width:180px maxlength="10" onkeyup=alertDialogUpdate() onkeypress="return numbersOnly(event,45)"></div><div style=padding-top:4px>Interval (days-hours-min)</div></div><div style=height:26px;margin-top:4px><div style=float:right;width:180px><select id=d25alarm_doc style=width:100% onchange=showAdvPowerDlgChange()><option value=0>Keep alarm<option value=1>Delete on completion</select></div><div style=padding-top:4px>After wake</div></div></div></div></div><div style=padding:10px;margin-bottom:4px><input id=c48 type=button value=Cancel style=float:right;width:80px;margin-left:5px onclick=dialogclose(0)><input id=c49 type=button value=OK style=float:right;width:80px onclick=dialogclose(1)><div style=height:25px><input id=c50 type=button value=Delete style=width:80px;display:none onclick=dialogclose(2)></div></div></div><script>var $jscomp={scope:{},getGlobal:function(b){return"undefined"!=typeof window&&window===b?b:"undefined"!=typeof global?global:b}};$jscomp.global=$jscomp.getGlobal(this);$jscomp.initSymbol=function(){$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol);$jscomp.initSymbol=function(){}};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(b){return"jscomp_symbol_"+b+$jscomp.symbolCounter_++};
2
$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();$jscomp.global.Symbol.iterator||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));$jscomp.initSymbolIterator=function(){}};
3
$jscomp.makeIterator=function(b){$jscomp.initSymbolIterator();if(b[$jscomp.global.Symbol.iterator])return b[$jscomp.global.Symbol.iterator]();if(!(b instanceof Array||"string"==typeof b||b instanceof String))throw new TypeError(b+" is not iterable");var c=0;return{next:function(){return c==b.length?{done:!0}:{done:!1,value:b[c++]}}}};$jscomp.arrayFromIterator=function(b){for(var c,a=[];!(c=b.next()).done;)a.push(c.value);return a};
4
$jscomp.arrayFromIterable=function(b){return b instanceof Array?b:$jscomp.arrayFromIterator($jscomp.makeIterator(b))};$jscomp.arrayFromArguments=function(b){for(var c=[],a=0;a<b.length;a++)c.push(b[a]);return c};
@@ -12,103 +12,103 @@ function ObjectToStringEx2(b,c){var a="";if(0!=b&&(!b||null==b))return"(Null)";i
12
function ObjectToString2(b){return ObjectToStringEx2(b,0)}function hex2rstr(b){if("string"!=typeof b||0==b.length)return"";var c="";b=(""+b).match(/../g);for(var a;a=b.shift();)c+=String.fromCharCode("0x"+a);return c}function char2hex(b){return(b+256).toString(16).substr(-2).toUpperCase()}function rstr2hex(b){var c="",a;for(a=0;a<b.length;a++)c+=char2hex(b.charCodeAt(a));return c}function encode_utf8(b){return unescape(encodeURIComponent(b))}
13
function decode_utf8(b){return decodeURIComponent(escape(b))}function data2blob(b){for(var c=Array(b.length),a=0;a<b.length;a++)c[a]=b.charCodeAt(a);return new Blob([new Uint8Array(c)])}function random(b){return Math.floor(Math.random()*b)}function trademarks(b){return b.replace(/\(R\)/g,"®").replace(/\(TM\)/g,"™")}function format(b){var c=Array.prototype.slice.call(arguments,1);return b.replace(/{(\d+)}/g,function(a,b){return"undefined"!=typeof c[b]?c[b]:a})}
14
function makeUefiBootParam(b,c,a){"number"==typeof c&&(1==a&&(c=String.fromCharCode(c&255)),2==a&&(c=ShortToStrX(c)),4==a&&(c=IntToStrX(c)));return ShortToStrX(32902)+ShortToStrX(b)+IntToStrX(c.length)+c}
15
-var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,F,H){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
-0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:H=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,H,d);a(c,H,d,F);break;case 10:return H=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,H,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){H=
17
-d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;H=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;H=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,H,0),F&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
-2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);H=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),F&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
-e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,H);e.SendDataToHost(H,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),F&1);break;case 40:H=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
-c,H,d);a(c,H,d,F);break;case 42:case 46:H=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,H,d);e.SendGetDataFromHost(c,512*d);break;case 67:H=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+H+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
-F&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),F&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),F&1));break;case 70:var M=2!=d.charCodeAt(1),G=ReadShort(d,2);H=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,G,H);if(0==H)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),F&1),-1;u=IntToStr(8);0==G&&(u+=n);if(1==G||M&&1>G)u+=g;if(2==G||M&&2>G)u+=h;if(3==G||M&&3>G)u+=v;if(16==G||M&&16>G)u+=J;if(30==
22
-G||M&&30>G)u+=D;if(256==G||M&&256>G)u+=y;if(261==G||M&&261>G)u+=C;u=IntToStr(u.length)+u;u.length>H&&(u=u.substring(0,H));e.SendDataToHost(c,!0,u,F&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),F&1);break;case 76:e.SendCommand(81,
23
-IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);H=ReadShort(d,7);u=null;if(0==H)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),F&1),-1;H=0;160==c?null!=e.floppy&&(H=e.floppy.size>>9):null!=e.cdrom&&(H=e.cdrom.size>>11);
24
-switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=H?z:O:A;break;case 5:160==c&&(u=2880>=H?q:p);break;case 63:u=160==c?2880>=H?m:k:B;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,F&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var q=null,A=0;160==a&&(q=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
-a&&(q=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=q&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?F.push({media:q,dev:a,lba:b,len:c,fr:z}):(M=q,G=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
-b=String.fromCharCode.apply(null,b));e.SendDataToHost(G,0==R,b,a&1);0<R&&0==H?d(a):(M=null,H?(e.SendCommand(71),F=[],H=!1):0<F.length&&(b=F.shift(),M=b.media,G=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
-sectorStats:null},r=null;urlvars&&urlvars.iderlog&&(r=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),q=String.fromCharCode(0,38,
28
-36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),m=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
-24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),B=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var n=String.fromCharCode(0,0,3,4,0,8,1,0),g=String.fromCharCode(0,1,3,4,0,0,0,2),h=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),J=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),C=String.fromCharCode(1,
30
-5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;F=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
-IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=r&&r.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
-e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=r&&r.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
15
+var CreateAmtRemoteIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log(arguments)}function c(c,d,G,I){switch(d.charCodeAt(0)){case 0:b("SCSI: TEST_UNIT_READY",c);switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.floppyReady)return e.floppyReady=!0,e.SendCommandEndResponse(1,6,c,40,0),-1;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;if(0==e.cdromReady)return e.cdromReady=!0,e.SendCommandEndResponse(1,6,c,40,
16
+0),-1;break;default:return b("SCSI Internal error 3",c),-1}e.SendCommandEndResponse(1,0,c,0,0);break;case 8:I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3);d=d.charCodeAt(4);0==d&&(d=256);b("SCSI: READ_6",c,I,d);a(c,I,d,G);break;case 10:return I=((d.charCodeAt(1)&31)<<16)+(d.charCodeAt(2)<<8)+d.charCodeAt(3),d=d.charCodeAt(4),0==d&&(d=256),b("SCSI: WRITE_6",c,I,d),e.SendCommandEndResponse(1,2,c,58,0),-1;case 26:b("SCSI: MODE_SENSE_6",c);if(63==d.charCodeAt(2)&&0==d.charCodeAt(3)){I=
17
+d=0;switch(c){case 160:if(null==e.floppy)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=0;I=128;break;case 176:if(null==e.cdrom)return e.SendCommandEndResponse(1,2,c,58,0),-1;d=5;I=128;break;default:return b("SCSI Internal error 6",c),-1}e.SendDataToHost(c,!0,String.fromCharCode(0,d,I,0),G&1);return}e.SendCommandEndResponse(1,5,c,36,0);break;case 27:e.SendCommandEndResponse(1,0,c);break;case 30:b("SCSI: ALLOW_MEDIUM_REMOVAL",c);if(160==c&&null==e.floppy||176==c&&null==e.cdrom)return e.SendCommandEndResponse(1,
18
+2,c,58,0),-1;e.SendCommandEndResponse(1,0,c,0,0);break;case 35:b("SCSI: READ_FORMAT_CAPACITIES",c);I=ReadShort(d,7);switch(c){case 160:if(null==e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,5,c,36,0),-1;break;default:return b("SCSI Internal error 4",c),-1}e.SendDataToHost(c,!0,IntToStr(8)+String.fromCharCode(0,0,11,64,2,0,2,0),G&1);break;case 37:b("SCSI: READ_CAPACITY",c);d=0;switch(c){case 160:if(null==
19
+e.floppy||0==e.floppy.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.floppy&&(d=(e.floppy.size>>9)-1);b("DEV_FLOPPY",d);break;case 176:if(null==e.cdrom||0==e.cdrom.size)return e.SendCommandEndResponse(0,2,c,58,0),-1;null!=e.cdrom&&(d=(e.cdrom.size>>11)-1);b("DEV_CDDVD",d);break;default:return b("SCSI Internal error 4",c),-1}b("SCSI: READ_CAPACITY2",c,I);e.SendDataToHost(I,!0,IntToStr(d)+String.fromCharCode(0,0,176==c?8:2,0),G&1);break;case 40:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: READ_10",
20
+c,I,d);a(c,I,d,G);break;case 42:case 46:I=ReadInt(d,2);d=ReadShort(d,7);b("SCSI: WRITE_10",c,I,d);e.SendGetDataFromHost(c,512*d);break;case 67:I=ReadShort(d,7);var u=d.charCodeAt(1)&2,M=d.charCodeAt(2)&7;0==M&&(M=d.charCodeAt(9)>>6);b("SCSI: READ_TOC, dev="+c+", buflen="+I+", msf="+u+", format="+M);switch(c){case 160:return e.SendCommandEndResponse(1,5,c,32,0),-1;case 176:break;default:return b("SCSI Internal error 9",c),-1}1==M?e.SendDataToHost(c,!0,String.fromCharCode(0,10,1,1,0,20,1,0,0,0,0,0),
21
+G&1):0==M&&(u?e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,2,0,0,20,170,0,0,0,52,19),G&1):e.SendDataToHost(c,!0,String.fromCharCode(0,18,1,1,0,20,1,0,0,0,0,0,0,20,170,0,0,0,0,0),G&1));break;case 70:var M=2!=d.charCodeAt(1),H=ReadShort(d,2);I=ReadShort(d,7);b("SCSI: GET_CONFIGURATION",c,M,H,I);if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;u=IntToStr(8);0==H&&(u+=m);if(1==H||M&&1>H)u+=h;if(2==H||M&&2>H)u+=g;if(3==H||M&&3>H)u+=v;if(16==H||M&&16>H)u+=F;if(30==
22
+H||M&&30>H)u+=D;if(256==H||M&&256>H)u+=y;if(261==H||M&&261>H)u+=B;u=IntToStr(u.length)+u;u.length>I&&(u=u.substring(0,I));e.SendDataToHost(c,!0,u,G&1);return-1;case 74:b("SCSI: GET_EVENT_STATUS_NOTIFICATION",c,d.charCodeAt(1),d.charCodeAt(4),d.charCodeAt(9));if(1!=d.charCodeAt(1)&&16!=d.charCodeAt(4)){b("SCSI ERROR");e.SendCommandEndResponse(1,5,c,38,1);break}d=0;160==c&&null!=e.floppy?d=2:176==c&&null!=e.cdrom&&(d=2);e.SendDataToHost(c,!0,String.fromCharCode(0,d,128,0),G&1);break;case 76:e.SendCommand(81,
23
+IntToStrX(0)+IntToStrX(0)+IntToStrX(0)+String.fromCharCode(135,80,3,0,0,0,176,81,5,32,0),!0);break;case 81:return b("SCSI READ_DISC_INFO",c),e.SendCommandEndResponse(0,5,c,32,0),-1;case 85:return b("SCSI ERROR: MODE_SELECT_10",c),e.SendCommandEndResponse(1,5,c,32,0),-1;case 90:b("SCSI: MODE_SENSE_10",c,d.charCodeAt(2)&63);I=ReadShort(d,7);u=null;if(0==I)return e.SendDataToHost(c,!0,IntToStr(60)+IntToStr(8),G&1),-1;I=0;160==c?null!=e.floppy&&(I=e.floppy.size>>9):null!=e.cdrom&&(I=e.cdrom.size>>11);
24
+switch(d.charCodeAt(2)&63){case 1:u=160==c?2880>=I?z:O:A;break;case 5:160==c&&(u=2880>=I?r:p);break;case 63:u=160==c?2880>=I?n:k:C;break;case 26:176==c&&(u=w);break;case 29:176==c&&(u=l);break;case 42:176==c&&(u=x)}null==u?e.SendCommandEndResponse(0,5,c,32,0):e.SendDataToHost(c,!0,u,G&1);break;default:return b("IDER: Unknown SCSI command",d.charCodeAt(0)),e.SendCommandEndResponse(0,5,c,32,0),-1}return 0}function a(a,b,c,z){var r=null,A=0;160==a&&(r=e.floppy,null!=e.floppy&&(A=e.floppy.size>>9));176==
25
+a&&(r=e.cdrom,null!=e.cdrom&&(A=e.cdrom.size>>11));if(0>c||b+c>A)return e.SendCommandEndResponse(1,5,a,33,0),0;if(0==c)return e.SendCommandEndResponse(1,0,a,0,0),0;null!=r&&(e.sectorStats&&e.sectorStats(1,160==a?0:1,A,b,c),160==a?(b<<=9,c<<=9):(b<<=11,c<<=11),null!==M?G.push({media:r,dev:a,lba:b,len:c,fr:z}):(M=r,H=a,u=b,R=c,d(z)))}function d(a){var b=R,c=u;R>e.iderinfo.readbfr&&(b=e.iderinfo.readbfr);R-=b;u+=b;var z=new FileReader;z.onload=function(){var b=this.result;"object"==typeof b&&(b=new Uint8Array(b),
26
+b=String.fromCharCode.apply(null,b));e.SendDataToHost(H,0==R,b,a&1);0<R&&0==I?d(a):(M=null,I?(e.SendCommand(71),G=[],I=!1):0<G.length&&(b=G.shift(),M=b.media,H=b.dev,u=b.lba,R=b.len,d(b.fr)))};z.readAsBinaryString?z.readAsBinaryString(M.slice(c,c+b)):z.readAsArrayBuffer(M.slice(c,c+b))}var e={protocol:3,bytesToAmt:0,bytesFromAmt:0,rx_timeout:3E4,tx_timeout:0,heartbeat:2E4,version:1,acc:"",inSequence:0,outSequence:0,iderinfo:null,enabled:!1,iderStart:0,floppy:null,cdrom:null,floppyReady:!1,cdromReady:!1,
27
+sectorStats:null},q=null;urlvars&&urlvars.iderlog&&(q=require("fs").createWriteStream(urlvars.iderlog,{flags:"w"}));var p=String.fromCharCode(0,38,49,128,0,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),k=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,16,169,8,32,2,0,3,195,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),r=String.fromCharCode(0,38,
28
+36,128,0,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0),n=String.fromCharCode(0,92,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0,3,22,0,160,0,0,0,0,0,18,2,0,0,0,0,0,0,0,160,0,0,0,5,30,4,176,2,18,2,0,0,80,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,2,208,0,0,8,10,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,17,36,49),w=String.fromCharCode(0,18,1,128,0,0,0,0,26,10,0,0,0,0,0,0,0,0,0,0),l=String.fromCharCode(0,18,1,128,0,0,0,0,29,10,0,0,0,0,0,0,0,0,0,0),x=String.fromCharCode(0,32,1,128,0,0,0,0,42,
29
+24,0,0,0,0,32,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0),C=String.fromCharCode(0,40,1,128,0,0,0,0,1,6,0,255,0,0,0,0,42,24,0,0,0,0,2,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0);String.fromCharCode(0,0,0,40,0,0,0,8);var m=String.fromCharCode(0,0,3,4,0,8,1,0),h=String.fromCharCode(0,1,3,4,0,0,0,2),g=String.fromCharCode(0,2,3,4,0,0,0,0),v=String.fromCharCode(0,3,3,4,41,0,0,2),F=String.fromCharCode(0,16,1,8,0,0,8,0,0,1,0,0),D=String.fromCharCode(0,30,3,0),y=String.fromCharCode(1,0,3,0),B=String.fromCharCode(1,
30
+5,3,0),z=String.fromCharCode(0,18,36,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),O=String.fromCharCode(0,18,49,128,0,0,0,0,1,10,0,1,0,0,0,0,2,0,0,0),A=String.fromCharCode(0,14,1,128,0,0,0,0,1,6,0,255,0,0,0,0);e.xxStateChange=function(a){b("IDER-StateChange",a);0==a&&e.Stop();3==a&&e.Start()};e.Start=function(){b("IDER-Start");b(e.floppy,e.cdrom);e.bytesToAmt=0;e.bytesFromAmt=0;e.inSequence=0;e.outSequence=0;G=[];e.SendCommand(64,ShortToStrX(e.rx_timeout)+ShortToStrX(e.tx_timeout)+ShortToStrX(e.heartbeat)+
31
+IntToStrX(e.version));e.sectorStats&&(e.sectorStats(0,0,e.floppy?e.floppy.size>>9:0),e.sectorStats(0,1,e.cdrom?e.cdrom.size>>11:0))};e.Stop=function(){b("IDER-Stop");e.parent.Stop()};e.ProcessData=function(a){e.bytesFromAmt+=a.length;e.acc+=a;null!=q&&q.write("IDERRECV: "+rstr2hex(a)+"\r\n");for(b("IDER-ProcessData",e.acc.length,rstr2hex(e.acc));;){a=e.ProcessDataEx();if(0==a)break;if(e.inSequence!=ReadIntX(e.acc,4)){b("ERROR: Out of sequence",e.inSequence,ReadIntX(e.acc,4));e.Stop();break}e.inSequence++;
32
+e.acc=e.acc.substring(a)}};e.SendCommand=function(a,c,z,d){null==c&&(c="");z=50<a&&1==z?2:0;d&&(z+=1);c=String.fromCharCode(a,0,0,z)+IntToStrX(e.outSequence++)+c;e.parent.xxSend(c);e.bytesToAmt+=c.length;null!=q&&q.write("IDERSEND: "+rstr2hex(c)+"\r\n");75!=a&&b("IDER-SendData",c.length,rstr2hex(c))};e.SendCommandEndResponse=function(a,b,c,z,d){a?e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,197,0,3,0,0,0,c,80,0,0,0),!0):e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,
33
135,b<<4,3,0,0,0,c,81,b,z,d),!0)};e.SendDataToHost=function(a,b,c,z){var d=z?0:c.length;1==b?e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,133,0,3,0,0,0,a,80,0,0,0,0,0,0)+c,b,z):e.SendCommand(84,String.fromCharCode(0,c.length&255,c.length>>8,0,z?180:181,0,2,0,d&255,d>>8,a,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0)+c,b,z)};e.SendGetDataFromHost=function(a,b){e.SendCommand(82,String.fromCharCode(0,b&255,b>>8,0,181,0,0,0,b&255,b>>8,a,88,0,0,0,0,0,0,0,0,0,0,0),
34
!1)};e.SendDisableEnableFeatures=function(a,b){null==b&&(b="");e.SendCommand(72,String.fromCharCode(a)+b)};e.ProcessDataEx=function(){if(8>e.acc.length)return 0;switch(e.acc.charCodeAt(0)){case 65:if(30>e.acc.length)break;var a=e.acc.charCodeAt(29);if(e.acc.length<30+a)break;e.iderinfo={};e.iderinfo.major=e.acc.charCodeAt(8);e.iderinfo.minor=e.acc.charCodeAt(9);e.iderinfo.fwmajor=e.acc.charCodeAt(10);e.iderinfo.fwminor=e.acc.charCodeAt(11);e.iderinfo.readbfr=ReadShortX(e.acc,16);e.iderinfo.writebfr=
35
ReadShortX(e.acc,18);e.iderinfo.proto=e.acc.charCodeAt(21);e.iderinfo.iana=ReadIntX(e.acc,25);b(e.iderinfo);0!=e.iderinfo.proto&&(b("Unknown proto",e.iderinfo.proto),e.Stop());8192<e.iderinfo.readbfr&&(b("Illegal read buffer size",e.iderinfo.readbfr),e.Stop());8192<e.iderinfo.writebfr&&(b("Illegal write buffer size",e.iderinfo.writebfr),e.Stop());0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):2==e.iderStart&&e.SendDisableEnableFeatures(3,
36
-IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(H=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
-2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),q=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),q,z);c(a,d,q,z);return 28;case 83:if(14>e.acc.length)break;
38
-a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var F=[],H=!1,M=null,G,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
-onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,r,p){b("SIDER-Start",a,d,e,r,p);c.host=a;c.port=d;c.user=e;c.pass=r;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
-"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof r?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
36
+IntToStrX(25));return 30+a;case 67:return b("CLOSE"),e.Stop(),8;case 68:return e.SendCommand(69),8;case 69:return b("PONG"),8;case 70:if(9>e.acc.length)break;a=e.acc.charCodeAt(8);null===M?(e.SendCommand(71),b("RESETOCCURED1",a)):(I=!0,b("RESETOCCURED2",a));return 9;case 73:if(13>e.acc.length)break;var a=e.acc.charCodeAt(8),z=ReadIntX(e.acc,9);b("STATUS_DATA",a,z);switch(a){case 1:z&1&&(0==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(9)):1==e.iderStart?e.SendDisableEnableFeatures(3,IntToStrX(17)):
37
+2==e.iderStart&&e.SendDisableEnableFeatures(3,IntToStrX(25)));break;case 2:e.enabled=z&2?!0:!1;b("IDER Status: "+e.enabled);break;case 3:1!=z&&b("Register toggle failure")}return 13;case 74:if(11>e.acc.length)break;b("IDER: ABORT",e.acc.charCodeAt(8));return 11;case 75:return 8;case 80:if(28>e.acc.length)break;var a=e.acc.charCodeAt(14)&16?176:160,z=e.acc.charCodeAt(14),d=e.acc.substring(16,28),r=e.acc.charCodeAt(9);b("SCSI_CMD",a,rstr2hex(d),r,z);c(a,d,r,z);return 28;case 83:if(14>e.acc.length)break;
38
+a=ReadShortX(e.acc,9);if(e.acc.length<14+a)break;b("SCSI_WRITE, len = "+(14+a));e.SendCommand(81,String.fromCharCode(0,0,0,0,0,0,0,0,0,0,0,0,135,112,3,0,0,0,160,81,7,39,0),!0);return 14+a;default:b("Unknown IDER command",e.acc[0]),e.Stop()}return 0};var G=[],I=!1,M=null,H,u,R;return e},CreateAmtRemoteServerIder=function(){function b(){urlvars&&urlvars.idertrace&&console.log.apply(console,[].concat($jscomp.arrayFromArguments(arguments)))}var c={protocol:4,iderStart:0,floppy:null,cdrom:null,state:0,
39
+onStateChanged:null,m:{sectorStats:null,onDialogPrompt:null,dialogPrompt:function(a){c.socket.send(JSON.stringify({action:"dialogResponse",args:a}))},bytesToAmt:0,bytesFromAmt:0,server:!0,Stop:function(){c.Stop()}},xxStateChange:function(a){if(c.state!=a&&(b("SIDER-StateChange",a),c.state=a,null!=c.onStateChanged))c.onStateChanged(c,c.state)},Start:function(a,d,e,q,p){b("SIDER-Start",a,d,e,q,p);c.host=a;c.port=d;c.user=e;c.pass=q;c.connectstate=0;c.socket=new WebSocket(window.location.protocol.replace("http",
40
+"ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webider.ashx?host="+a+"&port="+d+"&tls="+p+("*"==e?"&serverauth=1":"")+("undefined"===typeof q?"&serverauth=1&user="+e:"")+"&tls1only="+c.tlsv1only);c.socket.onopen=c.xxOnSocketConnected;c.socket.onmessage=c.xxOnMessage;c.socket.onclose=c.xxOnSocketClosed;c.xxStateChange(1)},Stop:function(){b("SIDER-Stop");null!=c.socket&&(c.socket.close(),c.socket=null);c.xxStateChange(0)},xxOnSocketConnected:function(){c.xxStateChange(2);
41
c.socket.send(JSON.stringify({action:"start"}))},xxOnMessage:function(a){var b=null;try{b=JSON.parse(a.data)}catch(e){}if(null!=b&&"string"==typeof b.action)switch(b.action){case "dialog":if(null!=c.m.onDialogPrompt)c.m.onDialogPrompt(c,b.args,b.buttons);break;case "state":2==b.state&&c.xxStateChange(3);break;case "stats":c.m.bytesToAmt=b.toAmt;c.m.bytesFromAmt=b.fromAmt;c.m.sectorStats&&c.m.sectorStats(b.mode,b.dev,b.total,b.start,b.len);break;case "error":console.log("IDER Error: "+";Floppy disk image does not exist;Invalid floppy disk image;Unable to open floppy disk image;CDROM disk image does not exist;Invalid CDROM disk image;Unable to open CDROM disk image;Can't perform IDER with no disk images".split(";")[b.code]);
42
-break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function r(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){m.socketState=2;m.socketParseState=0;m.socketAccumulator="";m.socketHeader=null;m.socketData="";for(i in m.pendingAjaxCall)m.sendRequest(m.pendingAjaxCall[i][0],
43
-m.pendingAjaxCall[i][3],m.pendingAjaxCall[i][4])}function k(a){var b=m.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(m.socketAccumulator=b+a;;){if(0==m.socketParseState){b=m.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;m.socketHeader=m.socketAccumulator.substring(0,b).split("\r\n");if(null==m.amtVersion)for(var c in m.socketHeader)0==m.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(m.amtVersion=m.socketHeader[c].substring(46));
44
-m.socketAccumulator=m.socketAccumulator.substring(b+4);m.socketParseState=1;m.socketData="";m.socketXHeader={Directive:m.socketHeader[0].split(" ")};for(c in m.socketHeader)0!=c&&(b=m.socketHeader[c].indexOf(":"),m.socketXHeader[m.socketHeader[c].substring(0,b).toLowerCase()]=m.socketHeader[c].substring(b+2))}if(1==m.socketParseState){b=-1;if(void 0==m.socketXHeader.connection||"close"!=m.socketXHeader.connection.toLowerCase()||void 0!=m.socketXHeader["transfer-encoding"]&&"chunked"==m.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
-m.socketXHeader["content-length"]){b=parseInt(m.socketXHeader["content-length"]);if(m.socketAccumulator.length<b)break;a=m.socketAccumulator.substring(0,b);m.socketAccumulator=m.socketAccumulator.substring(b);m.socketData=a;b=0}else{var d=m.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(m.socketAccumulator.substring(0,d),16);if(isNaN(b)){m.websocket&&m.websocket.close();break}if(m.socketAccumulator.length<d+2+b+2)break;a=m.socketAccumulator.substring(d+2,d+2+b);m.socketAccumulator=m.socketAccumulator.substring(d+
46
-2+b+2);m.socketData+=a}else b=0;if(0==b){d=m.socketXHeader;b=m.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++m.authcounter){if(m.challengeParams=m.parseDigest(d["www-authenticate"]),null!=m.challengeParams.qop){b=m.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?m.challengeParams.qop="auth-int":m.challengeParams.qop="auth"}}else d=m.pendingAjaxCall.shift(),
47
-m.authcounter=0,m.ActiveAjaxCount--,m.gotNextMessages(b,"success",{status:a},d),m.PerformNextAjax();m.socketParseState=0;m.socketHeader=null}}}}function q(a){0==m.inDataCount&&(m.tlsv1only=1-m.tlsv1only);m.socketState=0;null!=m.socket&&(m.socket.close(),m.socket=null);if(0<m.pendingAjaxCall.length){a=m.pendingAjaxCall.shift();var b=a[5];m.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var m={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
-authcounter:0,socket:null,socketState:0};m.host=b;m.port=c;m.user=a;m.pass=d;m.tls=e;m.tlsv1only=0;m.cnonce=Math.random().toString(36).substring(7);m.inDataCount=0;m.amtVersion=null;m.digestRealmMatch=null;m.digestRealm=null;m.PerformAjax=function(a,b,c,d,q,g){m.ActiveAjaxCount<m.MaxActiveAjaxCount&&0==m.PendingAjax.length?m.PerformAjaxEx(a,b,c,q,g):1==d?m.PendingAjax.unshift([a,b,c,q,g]):m.PendingAjax.push([a,b,c,q,g])};m.PerformNextAjax=function(){if(!(m.ActiveAjaxCount>=m.MaxActiveAjaxCount||0==
49
-m.PendingAjax.length)){var a=m.PendingAjax.shift();m.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);m.PerformNextAjax()}};m.PerformAjaxEx=function(a,b,c,d,q){if(0!=m.FailAllError)m.gotNextMessagesError({status:m.FailAllError},"error",null,[a,b,c,d,q]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),m.ActiveAjaxCount++,m.PerformAjaxExNodeJS(a,b,c,d,q)};m.pendingAjaxCall=[];m.PerformAjaxExNodeJS=function(a,b,c,d,q){m.PerformAjaxExNodeJS2(a,b,c,d,q,5)};m.PerformAjaxExNodeJS2=
50
-function(a,b,c,d,q,g){0>=g||0!=m.FailAllError?(m.ActiveAjaxCount--,999!=m.FailAllError&&m.gotNextMessages(null,"error",{status:0==m.FailAllError?408:m.FailAllError},[a,b,c,d,q]),m.PerformNextAjax()):(m.pendingAjaxCall.push([a,b,c,d,q,g]),0==m.socketState?m.xxConnectHttpSocket():2==m.socketState&&m.sendRequest(a,d,q))};m.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=m.challengeParams){m.digestRealm=m.challengeParams.realm;if(m.digestRealmMatch&&m.digestRealm!=
51
-m.digestRealmMatch){m.FailAllError=997;m.CancelAllQueries(997);return}c=hex_md5(hex_md5(m.user+":"+m.challengeParams.realm+":"+m.pass)+":"+m.challengeParams.nonce+":"+m.noncecounter+":"+m.cnonce+":"+m.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==m.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+m.renderDigest({username:m.user,realm:m.challengeParams.realm,nonce:m.challengeParams.nonce,uri:b,qop:m.challengeParams.qop,response:c,nc:m.noncecounter++,cnonce:m.cnonce})+"\r\n"}a=d+=
52
-"Host: "+m.host+":"+m.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==m.socketState&&null!=m.socket&&m.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{m.socket.send(b.buffer)}catch(q){}}};m.parseDigest=function(a){return r(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};m.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,
53
-c){return b+","+c+'="'+a[c]+'"'},"").substring(1)};m.xxConnectHttpSocket=function(){m.inDataCount=0;m.socketState=1;m.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+m.host+"&port="+m.port+"&tls="+m.tls+"&tls1only="+m.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));m.socket.binaryType="arraybuffer";m.socket.onopen=
54
-p;m.socket.onmessage=k;m.socket.onclose=q};m.gotNextMessages=function(a,b,c,d){if(999!=m.FailAllError)if(0!=m.FailAllError)d[1](null,m.FailAllError,d[2]);else d[1](a,c.status,d[2])};m.gotNextMessagesError=function(a,b,c,d){if(999!=m.FailAllError)if(0!=m.FailAllError)d[1](null,m.FailAllError,d[2]);else d[1](m,null,{Header:{HttpError:a.status}},a.status,d[2])};m.CancelAllQueries=function(a){for(;0<m.PendingAjax.length;){var b=m.PendingAjax.shift();b[1](null,a,b[2])}null!=m.websocket&&(m.websocket.close(),
55
-m.websocket=null,m.socketState=0)};return m},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,q){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
-0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+q+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
42
+break;default:console.log("Unknown Server IDER action: "+b.action),breal}},xxOnSocketClosed:function(){c.Stop()}};return c},CreateWsmanComm=function(b,c,a,d,e){function q(a){return a.split(",").reduce(function(a,b){a.ic?a.st[a.st.length-1]+=","+b:a.st.push(b);0==b.split('"').length%2&&(a.ic=!a.ic);return a},{st:[],ic:!1}).st}function p(){n.socketState=2;n.socketParseState=0;n.socketAccumulator="";n.socketHeader=null;n.socketData="";for(i in n.pendingAjaxCall)n.sendRequest(n.pendingAjaxCall[i][0],
43
+n.pendingAjaxCall[i][3],n.pendingAjaxCall[i][4])}function k(a){var b=n.socketAccumulator;a=new Uint8Array(a.data);a=String.fromCharCode.apply(null,a);for(n.socketAccumulator=b+a;;){if(0==n.socketParseState){b=n.socketAccumulator.indexOf("\r\n\r\n");if(0>b)break;n.socketHeader=n.socketAccumulator.substring(0,b).split("\r\n");if(null==n.amtVersion)for(var c in n.socketHeader)0==n.socketHeader[c].indexOf("Server: Intel(R) Active Management Technology ")&&(n.amtVersion=n.socketHeader[c].substring(46));
44
+n.socketAccumulator=n.socketAccumulator.substring(b+4);n.socketParseState=1;n.socketData="";n.socketXHeader={Directive:n.socketHeader[0].split(" ")};for(c in n.socketHeader)0!=c&&(b=n.socketHeader[c].indexOf(":"),n.socketXHeader[n.socketHeader[c].substring(0,b).toLowerCase()]=n.socketHeader[c].substring(b+2))}if(1==n.socketParseState){b=-1;if(void 0==n.socketXHeader.connection||"close"!=n.socketXHeader.connection.toLowerCase()||void 0!=n.socketXHeader["transfer-encoding"]&&"chunked"==n.socketXHeader["transfer-encoding"].toLowerCase())if(void 0!=
45
+n.socketXHeader["content-length"]){b=parseInt(n.socketXHeader["content-length"]);if(n.socketAccumulator.length<b)break;a=n.socketAccumulator.substring(0,b);n.socketAccumulator=n.socketAccumulator.substring(b);n.socketData=a;b=0}else{var d=n.socketAccumulator.indexOf("\r\n");if(0>d)break;b=parseInt(n.socketAccumulator.substring(0,d),16);if(isNaN(b)){n.websocket&&n.websocket.close();break}if(n.socketAccumulator.length<d+2+b+2)break;a=n.socketAccumulator.substring(d+2,d+2+b);n.socketAccumulator=n.socketAccumulator.substring(d+
46
+2+b+2);n.socketData+=a}else b=0;if(0==b){d=n.socketXHeader;b=n.socketData;urlvars&&urlvars.wsmantrace&&console.log("WSMAN-RECV("+b.length+"): "+b);a=parseInt(d.Directive[1]);isNaN(a)&&(a=602);if(401==a&&3>++n.authcounter){if(n.challengeParams=n.parseDigest(d["www-authenticate"]),null!=n.challengeParams.qop){b=n.challengeParams.qop.split(",");a=void 0;for(a in b)b[a]=b[a].trim();0<=b.indexOf("auth-int")?n.challengeParams.qop="auth-int":n.challengeParams.qop="auth"}}else d=n.pendingAjaxCall.shift(),
47
+n.authcounter=0,n.ActiveAjaxCount--,n.gotNextMessages(b,"success",{status:a},d),n.PerformNextAjax();n.socketParseState=0;n.socketHeader=null}}}}function r(a){0==n.inDataCount&&(n.tlsv1only=1-n.tlsv1only);n.socketState=0;null!=n.socket&&(n.socket.close(),n.socket=null);if(0<n.pendingAjaxCall.length){a=n.pendingAjaxCall.shift();var b=a[5];n.PerformAjaxExNodeJS2(a[0],a[1],a[2],a[3],a[4],--b)}}var n={PendingAjax:[],ActiveAjaxCount:0,MaxActiveAjaxCount:1,FailAllError:0,challengeParams:null,noncecounter:1,
48
+authcounter:0,socket:null,socketState:0};n.host=b;n.port=c;n.user=a;n.pass=d;n.tls=e;n.tlsv1only=0;n.inDataCount=0;n.amtVersion=null;n.digestRealmMatch=null;n.digestRealm=null;n.PerformAjax=function(a,b,c,d,r,h){n.ActiveAjaxCount<n.MaxActiveAjaxCount&&0==n.PendingAjax.length?n.PerformAjaxEx(a,b,c,r,h):1==d?n.PendingAjax.unshift([a,b,c,r,h]):n.PendingAjax.push([a,b,c,r,h])};n.PerformNextAjax=function(){if(!(n.ActiveAjaxCount>=n.MaxActiveAjaxCount||0==n.PendingAjax.length)){var a=n.PendingAjax.shift();
49
+n.PerformAjaxEx(a[0],a[1],a[2],a[3],a[4]);n.PerformNextAjax()}};n.PerformAjaxEx=function(a,b,c,d,r){if(0!=n.FailAllError)n.gotNextMessagesError({status:n.FailAllError},"error",null,[a,b,c,d,r]);else return a||(a=""),urlvars&&urlvars.wsmantrace&&console.log("WSMAN-SEND("+a.length+"): "+a),n.ActiveAjaxCount++,n.PerformAjaxExNodeJS(a,b,c,d,r)};n.pendingAjaxCall=[];n.PerformAjaxExNodeJS=function(a,b,c,d,r){n.PerformAjaxExNodeJS2(a,b,c,d,r,5)};n.PerformAjaxExNodeJS2=function(a,b,c,d,r,h){0>=h||0!=n.FailAllError?
50
+(n.ActiveAjaxCount--,999!=n.FailAllError&&n.gotNextMessages(null,"error",{status:0==n.FailAllError?408:n.FailAllError},[a,b,c,d,r]),n.PerformNextAjax()):(n.pendingAjaxCall.push([a,b,c,d,r,h]),0==n.socketState?n.xxConnectHttpSocket():2==n.socketState&&n.sendRequest(a,d,r))};n.sendRequest=function(a,b,c){b=b?b:"/wsman";c=c?c:"POST";var d=c+" "+b+" HTTP/1.1\r\n";if(null!=n.challengeParams){n.digestRealm=n.challengeParams.realm;if(n.digestRealmMatch&&n.digestRealm!=n.digestRealmMatch){n.FailAllError=
51
+997;n.CancelAllQueries(997);return}var r=Math.random().toString(36).substring(7);c=hex_md5(hex_md5(n.user+":"+n.challengeParams.realm+":"+n.pass)+":"+n.challengeParams.nonce+":"+n.noncecounter+":"+r+":"+n.challengeParams.qop+":"+hex_md5(c+":"+b+("auth-int"==n.challengeParams.qop?":"+hex_md5(a):"")));d+="Authorization: "+n.renderDigest({username:n.user,realm:n.challengeParams.realm,nonce:n.challengeParams.nonce,uri:b,qop:n.challengeParams.qop,response:c,nc:n.noncecounter++,cnonce:r})+"\r\n"}a=d+="Host: "+
52
+n.host+":"+n.port+"\r\nContent-Length: "+a.length+"\r\n\r\n"+a;if(2==n.socketState&&null!=n.socket&&n.socket.readyState==WebSocket.OPEN){b=new Uint8Array(a.length);for(d=0;d<a.length;++d)b[d]=a.charCodeAt(d);try{n.socket.send(b.buffer)}catch(h){}}};n.parseDigest=function(a){return q(a.substring(7)).reduce(function(a,b){var c=b.trim().split("=");a[c[0]]=c[1].replace(RegExp('"',"g"),"");return a},{})};n.renderDigest=function(a){var b=[];for(i in a)b.push(i);return"Digest "+b.reduce(function(b,c){return b+
53
+","+c+'="'+a[c]+'"'},"").substring(1)};n.xxConnectHttpSocket=function(){n.inDataCount=0;n.socketState=1;n.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=1&host="+n.host+"&port="+n.port+"&tls="+n.tls+"&tls1only="+n.tlsv1only+("*"==a?"&serverauth=1":"")+("undefined"===typeof d?"&serverauth=1&user="+a:""));n.socket.binaryType="arraybuffer";n.socket.onopen=p;
54
+n.socket.onmessage=k;n.socket.onclose=r};n.gotNextMessages=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](a,c.status,d[2])};n.gotNextMessagesError=function(a,b,c,d){if(999!=n.FailAllError)if(0!=n.FailAllError)d[1](null,n.FailAllError,d[2]);else d[1](n,null,{Header:{HttpError:a.status}},a.status,d[2])};n.CancelAllQueries=function(a){for(;0<n.PendingAjax.length;){var b=n.PendingAjax.shift();b[1](null,a,b[2])}null!=n.websocket&&(n.websocket.close(),
55
+n.websocket=null,n.socketState=0)};return n},CreateAmtRedirect=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}var d={};d.m=b;b.parent=d;d.authCookie=c;d.State=0;d.socket=null;d.host=null;d.port=0;d.user=null;d.pass=null;d.authuri="/RedirectionService";d.tlsv1only=0;d.inDataCount=0;d.connectstate=0;d.protocol=b.protocol;d.acc=null;d.amtsequence=1;d.amtkeepalivetimer=null;d.onStateChanged=null;d.Start=function(a,b,p,k,r){d.host=a;d.port=b;d.user=p;d.pass=k;d.connectstate=0;d.inDataCount=
56
+0;a=window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+a+"&port="+b+"&tls="+r+("*"==p?"&serverauth=1":"")+("undefined"===typeof k?"&serverauth=1&user="+p:"");null!=c&&""!=c&&(a+="&auth="+c);d.socket=new WebSocket(a);d.socket.binaryType="arraybuffer";d.socket.onopen=d.xxOnSocketConnected;d.socket.onmessage=d.xxOnMessage;d.socket.onclose=d.xxOnSocketClosed;d.xxStateChange(1)};
57
d.xxOnSocketConnected=function(){d.xxStateChange(2);1==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,83,79,76,32]));2==d.protocol&&d.directSend(new Uint8Array([16,1,0,0,75,86,77,82]));3==d.protocol&&d.directSend(new Uint8Array([16,0,0,0,73,68,69,82]))};d.xxOnMessage=function(b){if(b.data&&-1!=d.connectstate){d.inDataCount++;if(1==d.connectstate&&(2==d.protocol||3==d.protocol))return d.m.ProcessBinaryData?d.m.ProcessBinaryData(b.data):d.m.ProcessData(a(new Uint8Array(b.data)));if(null==d.acc)d.acc=
58
b.data;else{var c=new Uint8Array(d.acc.byteLength+b.data.byteLength);c.set(new Uint8Array(d.acc),0);c.set(new Uint8Array(b.data),d.acc.byteLength);d.acc=c.buffer}for(;null!=d.acc&&1<=d.acc.byteLength;){b=0;var p=new Uint8Array(d.acc);switch(p[0]){case 17:if(4>p.byteLength)return;switch(p[1]){case 0:if(13>p.byteLength)return;b=p[12];if(p.byteLength<13+b)return;d.directSend(new Uint8Array([19,0,0,0,0,0,0,0,0]));b=13+b;break;default:d.Stop(1)}break;case 20:if(9>p.byteLength)return;b=(new DataView(d.acc)).getUint32(5,
59
-!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],q=[];for(i=0;i<b;i++)q.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=q.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=q.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
-d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=q.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
-ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var m=0,q=p[m],k=a(new Uint8Array(p.buffer.slice(m+1,m+1+q))),m=m+(q+1),w=p[m],q=a(new Uint8Array(p.buffer.slice(m+1,m+1+w))),m=m+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[m],w=a(new Uint8Array(p.buffer.slice(m+1,m+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
-":"+k+":"+d.pass)+":"+q+":"+x+hex_md5("POST:"+d.authuri));m=d.user.length+k.length+q.length+d.authuri.length+l.length+8+p.length+7;4==c&&(m+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(m)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(q.length)+q+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
59
+!0);if(p.byteLength<9+b)return;var k=p[1],c=p[4],r=[];for(i=0;i<b;i++)r.push(p[9+i]);p=new Uint8Array(d.acc.slice(9,9+b));b=9+b;if(0==c)0<=r.indexOf(4)?d.xxSend(String.fromCharCode(19,0,0,0,4)+IntToStrX(d.user.length+d.authuri.length+8)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0,0)):0<=r.indexOf(3)?d.xxSend(String.fromCharCode(19,0,0,0,3)+IntToStrX(d.user.length+d.authuri.length+7)+String.fromCharCode(d.user.length)+
60
+d.user+String.fromCharCode(0,0)+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(0,0,0)):0<=r.indexOf(1)?d.xxSend(String.fromCharCode(19,0,0,0,1)+IntToStrX(d.user.length+d.pass.length+2)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(d.pass.length)+d.pass):d.Stop(2);else if(3!=c&&4!=c||1!=k)if(0==k)switch(d.protocol){case 1:d.xxSend(String.fromCharCode(32,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(1E4)+ShortToStrX(100)+ShortToStrX(0)+ShortToStrX(1E4)+ShortToStrX(100)+
61
+ShortToStrX(0)+IntToStrX(0));break;case 2:d.directSend(new Uint8Array([64,0,0,0,0,0,0,0]));break;case 3:d.connectstate=1,d.xxStateChange(3)}else d.Stop(3);else{var n=0,r=p[n],k=a(new Uint8Array(p.buffer.slice(n+1,n+1+r))),n=n+(r+1),w=p[n],r=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),n=n+(w+1),w=0,w=null,l;l="";for(var x=0;32>x;x++)l+="abcdef0123456789".charAt(Math.floor(16*Math.random()));x="";4==c&&(w=p[n],w=a(new Uint8Array(p.buffer.slice(n+1,n+1+w))),x="00000002:"+l+":"+w+":");p=hex_md5(hex_md5(d.user+
62
+":"+k+":"+d.pass)+":"+r+":"+x+hex_md5("POST:"+d.authuri));n=d.user.length+k.length+r.length+d.authuri.length+l.length+8+p.length+7;4==c&&(n+=w.length+1);p=String.fromCharCode(19,0,0,0,c)+IntToStrX(n)+String.fromCharCode(d.user.length)+d.user+String.fromCharCode(k.length)+k+String.fromCharCode(r.length)+r+String.fromCharCode(d.authuri.length)+d.authuri+String.fromCharCode(l.length)+l+String.fromCharCode(8)+"00000002"+String.fromCharCode(p.length)+p;4==c&&(p+=String.fromCharCode(w.length)+w);d.xxSend(p)}break;
63
case 33:if(23>p.byteLength)break;b=23;d.xxSend(String.fromCharCode(39,0,0,0)+IntToStrX(d.amtsequence++)+String.fromCharCode(0,0,27,0,0,0));1==d.protocol&&(d.amtkeepalivetimer=setInterval(d.xxSendAmtKeepAlive,2E3));d.connectstate=1;d.xxStateChange(3);break;case 41:if(10>p.byteLength)break;b=10;break;case 42:if(10>p.byteLength)break;c=10+(p[9]<<8)+p[8];if(p.byteLength<c)break;d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(10,c))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(10,
64
c))));b=c;break;case 43:if(8>p.byteLength)break;b=8;break;case 65:if(8>p.byteLength)break;d.connectstate=1;d.m.Start();8<p.byteLength&&(d.m.ProcessBinaryData?d.m.ProcessBinaryData(new Uint8Array(p.buffer.slice(8))):d.m.ProcessData(a(new Uint8Array(p.buffer.slice(8)))));b=p.byteLength;break;case 240:d.serverIsRecording=!0;b=1;break;default:console.log("Unknown Intel AMT command: "+p[0]+" acclen="+p.byteLength);d.Stop(4);return}if(0==b)break;d.acc=b!=d.acc.byteLength?d.acc.slice(b):null}}};d.directSend=
65
function(a){try{d.socket.send(a.buffer)}catch(b){}};d.xxSend=function(a){if(null!=d.socket&&d.socket.readyState==WebSocket.OPEN){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);try{d.socket.send(b.buffer)}catch(k){}}};d.Send=d.send=function(a){null!=d.socket&&1==d.connectstate&&(1==d.protocol?d.xxSend(String.fromCharCode(40,0,0,0)+IntToStrX(d.amtsequence++)+ShortToStrX(a.length)+a):d.xxSend(a))};d.xxSendAmtKeepAlive=function(){null!=d.socket&&d.xxSend(String.fromCharCode(43,
66
0,0,0)+IntToStrX(d.amtsequence++))};d.xxOnSocketClosed=function(){0==d.inDataCount&&0==d.tlsv1only?(d.tlsv1only=1,d.socket=new WebSocket(window.location.protocol.replace("http","ws")+"//"+window.location.host+window.location.pathname.substring(0,window.location.pathname.lastIndexOf("/"))+"/webrelay.ashx?p=2&host="+d.host+"&port="+d.port+"&tls="+d.tls+"&tls1only=1"+("*"==d.user?"&serverauth=1":"")+("undefined"===typeof pass?"&serverauth=1&user="+d.user:"")),d.socket.binaryType="arraybuffer",d.socket.onopen=
67
-d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,r){function p(a){for(var b,
68
-c={},d=0;d<a.childNodes.length;d++){var q=a.childNodes[d];b=null==q.childElementCount||0==q.childElementCount?q.textContent:p(q);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var g=b;if(null!=q.attributes&&0<q.attributes.length)for(g={Value:b},b=0;b<q.attributes.length;b++)g["@"+q.attributes[b].name]=q.attributes[b].value;c[q.localName]instanceof Array?c[q.localName].push(g):c[q.localName]=null==c[q.localName]?g:[c[q.localName],g]}return c}function k(a){if(!a)return"";var b=
69
-"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function q(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
-a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var q=0;q<d.length;q++)b+="<w:Selector"+k(d[q])+">"+d[q].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var m={NextMessageId:1,Address:"/wsman"};m.comm=CreateWsmanComm(b,c,a,d,e,r);m.PerformAjax=function(a,
71
-b,c,d,q){null==q&&(q="");m.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+q+"><Header><a:Action>"+a,function(a,c,d){var q=m.ParseWsman(a);if(null==a||q&&null!=q){if(200!=c){null==q&&(q={Header:{}});q.Header.HttpError=
72
-c;try{q.Header.WsmanError=q.Body.Reason.Text.Value}catch(n){}}b(m,q.Header.ResourceURI,q,c,d)}else b(m,null,{Header:{HttpError:c}},601,d)},c,d)};m.CancelAllQueries=function(a){m.comm.CancelAllQueries(a)};m.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};m.ExecSubscribe=function(a,b,c,d,n,g,h,e,k,D){var y="",C="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
-k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",C='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
-a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+m.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+m.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+q(h)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+C+"</e:Delivery></e:Subscribe>";m.PerformAjax(a+"</Body></Envelope>",d,n,
75
-g,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};m.ExecUnSubscribe=function(a,b,c,d,n){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+m.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+m.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+q(n)+"</Header><Body><e:Unsubscribe/>";m.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
-m.ExecPut=function(a,b,c,d,n,g){g="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+m.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+m.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+q(g)+"</Header><Body>";if(a&&null!=b){var h=m.GetNameFromUrl(a);a="<r:"+h+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
-0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var J=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(J))for(var D=0;D<J.length;D++)a+="<w:Selector"+k(J[D])+">"+J[D].Value+"</w:Selector>";else a+="<w:Selector"+k(J)+">"+J.Value+"</w:Selector>";
78
-a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+h+">")}else b="";m.PerformAjax(g+b+"</Body></Envelope>",c,d,n)};m.ExecCreate=function(a,b,c,d,n,g){var h=m.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+m.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+m.NextMessageId++ +
79
-"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+q(g)+"</Header><Body><g:"+h+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";m.PerformAjax(a+"</g:"+h+"></Body></Envelope>",c,d,n)};m.ExecDelete=function(a,b,c,d,n){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+m.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+m.NextMessageId++ +
80
-"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+q(b)+"</Header><Body /></Envelope>";m.PerformAjax(a,c,d,n)};m.ExecGet=function(a,b,c,d){m.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+m.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+m.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
-b,c,d)};m.ExecMethod=function(a,b,c,d,q,g,h){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";m.ExecMethodXml(a,b,e,d,q,g,h)};m.ExecMethodXml=function(a,b,c,d,n,g,h){m.PerformAjax(a+"/"+b+"</a:Action><a:To>"+m.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+m.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
-q(h)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,n,g)};m.ExecEnum=function(a,b,c,d){m.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+m.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+m.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
-b,c,d)};m.ExecPull=function(a,b,c,d,q){m.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+m.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+m.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
-c,d,q)};m.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var q=a.getElementsByTagName("Header")[0],g;q||(q=a.getElementsByTagName("a:Header")[0]);if(!q)return null;for(c=0;c<q.childNodes.length;c++){var h=q.childNodes[c];b.Header[h.localName]=h.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
-if(!e)return null;if(0<e.childNodes.length){g=e.childNodes[0].localName;var m=g.indexOf("_OUTPUT");-1!=m&&m==g.length-7&&(g=g.substring(0,g.length-7));b.Header.Method=g;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return m};
86
-function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&B!=a&&(B=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,q,y,h,g){200!=y?(c(l,a,null,y,h),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(q,b.Body.EnumerationContext,function(b,z,q,A){d(a,q,c,z,[],A,h,g)}):(c(l,a,null,603,h),e(1))}function d(a,b,q,A,y,h,g,n){if(200!=h)q(l,a,null,h,g),e(1);else if(null==b||"PullResponse"!=b.Header.Method)q(l,
87
-a,null,604,g),e(1);else{for(var m in b.Body.Items)if(b.Body.Items[m]instanceof Array)for(var w in b.Body.Items[m])"function"!=typeof b.Body.Items[m][w]&&y.push(b.Body.Items[m][w]);else"function"!=typeof b.Body.Items[m]&&y.push(b.Body.Items[m]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,q,c,y,A,g,1)}):(e(1),q(l,a,y,h,g),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
-l.Enum(a[0],a[1],a[2]),e(0))}function r(a,b,d,q,y,h,g){l.PendingBatchOperations-=2;var e=b.shift(),n=l.Enum;"*"==e[0]&&(n=l.Get,e=e.substring(1));n(e,function(y,F,e,n,m){m[2][F]={response:null==e?null:e.Body,responses:e,status:n};0==m[1].length||401==n||1!=h&&200!=n&&400!=n?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,m[2],n,q)):(c(),r(a,b,d,q,m[2],g))},[a,b,y],g);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
-function(b,c,d,q){null==d||200!=q?a.callback(l,a.name,null,q,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,q,y)}function q(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var g,e,n;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(g in w){a=null;try{a=window.atob(w[g])}catch(v){}if(null!=
90
-a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){n={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)n.EventData.push(a.charCodeAt(e));n.EntityStr=h[n.Entity];n.Desc=m(n.EventSensorType,n.EventOffset,n.EventData,n.Entity);
91
-n.EntityStr||(n.EntityStr="Unknown");b.push(n)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,q,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function m(a,b,c,d){if(15==a)return 235==c[0]?"Invalid Data":0==b?n[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",J[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",
92
-v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":g[c[1]];if(18==a&&170==c[0])return"Agent watchdog "+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... changed to "+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"Case intrusion";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"A remote Serial Over LAN session was established.";if(1==c[2])return"Remote Serial Over LAN session finished. User control was restored.";
67
+d.xxOnSocketConnected,d.socket.onmessage=d.xxOnMessage,d.socket.onclose=d.xxOnSocketClosed):d.Stop(5)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(a){d.xxStateChange(0);d.connectstate=-1;d.acc=null;null!=d.socket&&(d.socket.close(),d.socket=null);null!=d.amtkeepalivetimer&&(clearInterval(d.amtkeepalivetimer),d.amtkeepalivetimer=null)};return d},WsmanStackCreateService=function(b,c,a,d,e,q){function p(a){for(var b,
68
+c={},d=0;d<a.childNodes.length;d++){var r=a.childNodes[d];b=null==r.childElementCount||0==r.childElementCount?r.textContent:p(r);"true"==b&&(b=!0);"false"==b&&(b=!1);parseInt(b)+""===b&&(b=parseInt(b));var h=b;if(null!=r.attributes&&0<r.attributes.length)for(h={Value:b},b=0;b<r.attributes.length;b++)h["@"+r.attributes[b].name]=r.attributes[b].value;c[r.localName]instanceof Array?c[r.localName].push(h):c[r.localName]=null==c[r.localName]?h:[c[r.localName],h]}return c}function k(a){if(!a)return"";var b=
69
+"",c;for(c in a)a.hasOwnProperty(c)&&0===c.indexOf("@")&&(b+=" "+c.substring(1)+'="'+a[c]+'"');return b}function r(a){if(!a)return"";if("string"==typeof a)return a;if(a.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+a.InstanceID+"</w:Selector></w:SelectorSet>";var b="<w:SelectorSet>",c;for(c in a)if(a.hasOwnProperty(c)){b+='<w:Selector Name="'+c+'">';if(a[c].ReferenceParameters){var b=b+"<a:EndpointReference>",b=b+("<a:Address>"+a[c].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+
70
+a[c].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>"),d=a[c].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(d))for(var r=0;r<d.length;r++)b+="<w:Selector"+k(d[r])+">"+d[r].Value+"</w:Selector>";else b+="<w:Selector"+k(d)+">"+d.Value+"</w:Selector>";b+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else b+=a[c];b+="</w:Selector>"}return b+"</w:SelectorSet>"}var n={NextMessageId:1,Address:"/wsman"};n.comm=CreateWsmanComm(b,c,a,d,e,q);n.PerformAjax=function(a,
71
+b,c,d,r){null==r&&(r="");n.comm.PerformAjax('<?xml version="1.0" encoding="utf-8"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+r+"><Header><a:Action>"+a,function(a,c,d){var r=n.ParseWsman(a);if(null==a||r&&null!=r||200!=c){if(200!=c){null==r&&(r={Header:{}});r.Header.HttpError=
72
+c;try{r.Header.WsmanError=r.Body.Reason.Text.Value}catch(m){}}b(n,r.Header.ResourceURI,r,c,d)}else b(n,null,{Header:{HttpError:c}},601,d)},c,d)};n.CancelAllQueries=function(a){n.comm.CancelAllQueries(a)};n.GetNameFromUrl=function(a){var b=a.lastIndexOf("/");return-1==b?a:a.substring(b+1)};n.ExecSubscribe=function(a,b,c,d,m,h,g,e,k,D){var y="",B="";e="";null!=k&&null!=D&&(y='<t:IssuedTokens xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>'+
73
+k+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+D+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",B='<w:Auth Profile="http://schemas.dmtf.org/wbem/wsman/1/wsman/secprofile/http/digest"/>');null!=e&&(e="<a:ReferenceParameters><m:arg>"+e+"</m:arg></a:ReferenceParameters>");"PushWithAck"==b?b="dmtf.org/wbem/wsman/1/wsman/PushWithAck":"Push"==b&&(b="xmlsoap.org/ws/2004/08/eventing/DeliveryModes/Push");
74
+a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(g)+y+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.'+b+'"><e:NotifyTo><a:Address>'+c+"</a:Address>"+e+"</e:NotifyTo>"+B+"</e:Delivery></e:Subscribe>";n.PerformAjax(a+"</Body></Envelope>",d,m,
75
+h,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:m="http://x.com"')};n.ExecUnSubscribe=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+r(m)+"</Header><Body><e:Unsubscribe/>";n.PerformAjax(a+"</Body></Envelope>",b,c,d,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')};
76
+n.ExecPut=function(a,b,c,d,m,h){h="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+r(h)+"</Header><Body>";if(a&&null!=b){var g=n.GetNameFromUrl(a);a="<r:"+g+' xmlns:r="'+a+'">';for(var e in b)if(b.hasOwnProperty(e)&&
77
+0!==e.indexOf("__")&&0!==e.indexOf("@")&&null!=b[e]&&"function"!==typeof b[e])if("object"===typeof b[e]&&b[e].ReferenceParameters){a+="<r:"+e+"><a:Address>"+b[e].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+b[e].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var F=b[e].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(F))for(var D=0;D<F.length;D++)a+="<w:Selector"+k(F[D])+">"+F[D].Value+"</w:Selector>";else a+="<w:Selector"+k(F)+">"+F.Value+"</w:Selector>";
78
+a+="</w:SelectorSet></a:ReferenceParameters></r:"+e+">"}else if(Array.isArray(b[e]))for(D=0;D<b[e].length;D++)a+="<r:"+e+">"+b[e][D].toString()+"</r:"+e+">";else a+="<r:"+e+">"+b[e].toString()+"</r:"+e+">";b=a+("</r:"+g+">")}else b="";n.PerformAjax(h+b+"</Body></Envelope>",c,d,m)};n.ExecCreate=function(a,b,c,d,m,h){var g=n.GetNameFromUrl(a);a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
79
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(h)+"</Header><Body><g:"+g+' xmlns:g="'+a+'">';for(var e in b)a+="<g:"+e+">"+b[e]+"</g:"+e+">";n.PerformAjax(a+"</g:"+g+"></Body></Envelope>",c,d,m)};n.ExecDelete=function(a,b,c,d,m){a="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +
80
+"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+r(b)+"</Header><Body /></Envelope>";n.PerformAjax(a,c,d,m)};n.ExecGet=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",
81
+b,c,d)};n.ExecMethod=function(a,b,c,d,r,h,g){var e="",k;for(k in c)if(null!=c[k])if(Array.isArray(c[k]))for(var D in c[k])e+="<r:"+k+">"+c[k][D]+"</r:"+k+">";else e+="<r:"+k+">"+c[k]+"</r:"+k+">";n.ExecMethodXml(a,b,e,d,r,h,g)};n.ExecMethodXml=function(a,b,c,d,m,h,g){n.PerformAjax(a+"/"+b+"</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+
82
+r(g)+"</Header><Body><r:"+b+'_INPUT xmlns:r="'+a+'">'+c+"</r:"+b+"_INPUT></Body></Envelope>",d,m,h)};n.ExecEnum=function(a,b,c,d){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',
83
+b,c,d)};n.ExecPull=function(a,b,c,d,r){n.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+n.Address+"</a:To><w:ResourceURI>"+a+"</w:ResourceURI><a:MessageID>"+n.NextMessageId++ +'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+b+"</EnumerationContext></Pull></Body></Envelope>",
84
+c,d,r)};n.ParseWsman=function(a){if(null==a)return null;var b={Header:{}};try{if(!a.childNodes){var c=a;if(window.DOMParser)a=(new DOMParser).parseFromString(c,"text/xml");else{var d=new ActiveXObject("Microsoft.XMLDOM");d.async=!1;d.loadXML(c);a=d}}var r=a.getElementsByTagName("Header")[0],h;r||(r=a.getElementsByTagName("a:Header")[0]);if(!r)return null;for(c=0;c<r.childNodes.length;c++){var g=r.childNodes[c];b.Header[g.localName]=g.textContent}var e=a.getElementsByTagName("Body")[0];e||(e=a.getElementsByTagName("a:Body")[0]);
85
+if(!e)return null;if(0<e.childNodes.length){h=e.childNodes[0].localName;var n=h.indexOf("_OUTPUT");-1!=n&&n==h.length-7&&(h=h.substring(0,h.length-7));b.Header.Method=h;try{b.Body=p(e.childNodes[0])}catch(k){return console.log("_ParseWsmanRec failed",e,k),null}}}catch(k){return console.log("Unable to parse XML: "+a+", "+k),null}return b};return n};
86
+function AmtStackCreateService(b){function c(){var a=l.GetPendingActions();x<a&&(x=a);null!=l.onProcessChanged&&C!=a&&(C=a,l.onProcessChanged(a,x));0==a&&(x=0)}function a(a,b,c,r,y,g,h){200!=y?(c(l,a,null,y,g),e(1)):null!=b&&"EnumerateResponse"==b.Header.Method&&b.Body.EnumerationContext?l.wsman.ExecPull(r,b.Body.EnumerationContext,function(b,z,r,A){d(a,r,c,z,[],A,g,h)}):(c(l,a,null,603,g),e(1))}function d(a,b,r,A,y,g,h,m){if(200!=g)r(l,a,null,g,h),e(1);else if(null==b||"PullResponse"!=b.Header.Method)r(l,
87
+a,null,604,h),e(1);else{for(var n in b.Body.Items)if(b.Body.Items[n]instanceof Array)for(var w in b.Body.Items[n])"function"!=typeof b.Body.Items[n][w]&&y.push(b.Body.Items[n][w]);else"function"!=typeof b.Body.Items[n]&&y.push(b.Body.Items[n]);b.Body.EnumerationContext?l.wsman.ExecPull(A,b.Body.EnumerationContext,function(b,c,z,A){d(a,z,r,c,y,A,h,1)}):(e(1),r(l,a,y,g,h),c())}}function e(a){l.ActiveEnumsCount-=a;l.ActiveEnumsCount>=l.MaxActiveEnumsCount||0==l.PendingEnums.length?c():(a=l.PendingEnums.shift(),
88
+l.Enum(a[0],a[1],a[2]),e(0))}function q(a,b,d,r,y,g,h){l.PendingBatchOperations-=2;var e=b.shift(),m=l.Enum;"*"==e[0]&&(m=l.Get,e=e.substring(1));m(e,function(y,G,e,m,n){n[2][G]={response:null==e?null:e.Body,responses:e,status:m};0==n[1].length||401==m||1!=g&&200!=m&&400!=m?(l.PendingBatchOperations-=2*b.length,c(),d(l,a,n[2],m,r)):(c(),q(a,b,d,r,n[2],h))},[a,b,y],h);c()}function p(a){a.names.length<=a.current?a.callback(l,a.name,a.responses,200,a.tag):(l.wsman.ExecGet(l.CompleteName(a.names[a.current]),
89
+function(b,c,d,r){null==d||200!=r?a.callback(l,a.name,null,r,a.tag):(a.responses[d.Header.Method]=d,p(a))},a.pri),a.current++);c()}function k(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,y)}function r(a,b,c,d,y){if(200!=d||"0"!=c.Body.ReturnValue)y[0](l,null,y[2]);else{var h,e,m;b=y[2];d=new Date;var w=c.Body.RecordArray;"string"===typeof w&&(c.Body.RecordArray=[c.Body.RecordArray]);for(h in w){a=null;try{a=window.atob(w[h])}catch(v){}if(null!=
90
+a&&(e=ReadIntX(a,0),0<e&&4294967295>e)){m={DeviceAddress:a.charCodeAt(4),EventSensorType:a.charCodeAt(5),EventType:a.charCodeAt(6),EventOffset:a.charCodeAt(7),EventSourceType:a.charCodeAt(8),EventSeverity:a.charCodeAt(9),SensorNumber:a.charCodeAt(10),Entity:a.charCodeAt(11),EntityInstance:a.charCodeAt(12),EventData:[],Time:new Date(1E3*(e+60*d.getTimezoneOffset()))};for(e=13;21>e;e++)m.EventData.push(a.charCodeAt(e));m.EntityStr=g[m.Entity];m.Desc=n(m.EventSensorType,m.EventOffset,m.EventData,m.Entity);
91
+m.EntityStr||(m.EntityStr="Unknown");b.push(m)}}if(1!=c.Body.NoMoreRecords)l.AMT_MessageLog_GetRecords(c.Body.IterationIdentifier,390,r,[y[0],b,y[2]]);else y[0](l,b,y[2])}}function n(a,b,c,d){if(15==a)return 235==c[0]?"Invalid Data":0==b?m[c[1]]:3==b?170==c[0]&&48==c[1]?format("AMT One Click Recovery: {0}",F[c[2]]):"OEM Specific Firmware Error event":5==b?170==c[0]&&48==c[1]?1==c[2]?format("AMT One Click Recovery: CSME Boot Option {0}:{1} added successfully",c[3],D[c[3]]):7>c[2]?format("AMT One Click Recovery: {0}",
92
+v[c[2]]):format("AMT One Click Recovery: Unknown progress event {0}",c[2]):"OEM Specific Firmware Progress event":h[c[1]];if(18==a&&170==c[0])return"Agent watchdog "+char2hex(c[4])+char2hex(c[3])+char2hex(c[2])+char2hex(c[1])+"-"+char2hex(c[6])+char2hex(c[5])+"-... changed to "+l.WatchdogCurrentStates[c[7]];if(5==a&&0==b)return"Case intrusion";if(192==a&&0==b&&170==c[0]&&48==c[1]){if(0==c[2])return"A remote Serial Over LAN session was established.";if(1==c[2])return"Remote Serial Over LAN session finished. User control was restored.";
93
if(2==c[2])return"A remote IDE-Redirection session was established.";if(3==c[2])return"Remote IDE-Redirection session finished. User control was restored."}if(36==a)return a=(c[1]<<24)+(c[2]<<16)+(c[3]<<8)+c[4],b="#"+c[0],170==c[0]&&(b="wired"),4294967293==a?"All received packet filter was matched on "+b+" interface.":4294967292==a?"All outbound packet filter was matched on "+b+" interface.":4294967290==a?"Spoofed packet filter was matched on "+b+" interface.":"Filter "+a+" was matched on "+b+" interface.";
94
if(192==a)return 0==c[2]?"Security policy invoked. Some or all network traffic (TX) was stopped.":2==c[2]?"Security policy invoked. Some or all network traffic (RX) was stopped.":"Security policy invoked.";if(193==a){if(170==c[0]&&48==c[1]&&0==c[2]&&0==c[3])return"User request for remote connection.";if(170==c[0]&&32==c[1]&&3==c[2]&&1==c[3])return"EAC error: attempt to get posture while NAC in Intel\ufffd AMT is disabled.";if(170==c[0]&&32==c[1]&&4==c[2]&&0==c[3])return"HWA Error: general error"}return 6==
95
-a?"Authentication failed "+(c[1]+(c[2]<<8))+" times. The system may be under attack.":30==a?"No bootable media":32==a?"Operating system lockup or power interrupt":35==a?"System boot failure":37==a?"System firmware started (at least one CPU is properly executing).":"Unknown Sensor Type #"+a}function w(a,b,c,d,q){if(200!=d)q[0](l,[],d);else{var h,g,e=q[1],n=new Date,m;if(0<c.Body.RecordsReturned)for(g in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[g])}catch(v){console.log(v+
96
-" "+c.Body.EventRecords[g])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(h=a.charCodeAt(5),b.Initiator=a.substring(6,6+h),h=6+h);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),h=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+h)),h=10+h);2==b.InitiatorType&&(b.Initiator="<i>Local</i>",h=5);3==b.InitiatorType&&(b.Initiator=
97
-"<i>KVM Default Port</i>",h=5);m=ReadInt(a,h);b.Time=new Date(1E3*(m+60*n.getTimezoneOffset()));h+=4;b.MCLocationType=a.charCodeAt(h++);m=a.charCodeAt(h++);b.NetAddress=a.substring(h,h+m);h+=m;m=a.charCodeAt(h++);b.Ex=a.substring(h,h+m);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[q[0],e]);else q[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/",
98
-"http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,B=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,q,y,h,g,e,n,m){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,h){c();q(l,a,z,h,y)},0,h,g,e,n,m);c()};l.UnSubscribe=function(a,
99
-b,d,q,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(q,A,y,h){c();b(l,a,y,h,d)},0,q,y);c()};l.Get=function(a,b,d,q){l.wsman.ExecGet(l.CompleteName(a),function(q,A,y,h){c();b(l,a,y,h,d)},0,q);c()};l.Put=function(a,b,d,q,y,h){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,h){c();d(l,a,y,h,q)},0,y,h);c()};l.Create=function(a,b,d,q,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,h){c();d(l,a,y,h,q)},0,y);c()};l.Delete=function(a,b,d,q,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,
100
-z,y,h){c();d(l,a,y,h,q)},0,y);c()};l.Exec=function(a,b,d,q,y,h,g){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,h){c();q(l,a,l.CompleteExecResponse(z),h,y)},0,h,g);c()};l.ExecWithXml=function(a,b,d,q,y,h,g){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),function(b,d,z,h){c();q(l,a,l.CompleteExecResponse(z),h,y)},0,h,g);c()};l.Enum=function(b,d,q,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(q,A,y,h,g){c();a(b,
101
-y,d,A,h,g)},q,A)):l.PendingEnums.push([b,d,q,A]);c()};l.BatchEnum=function(a,b,d,q,y,h){l.PendingBatchOperations+=2*b.length;r(a,Clone(b),d,q,{},y,h);c()};l.BatchGet=function(a,b,d,q,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:q,pri:y});c()};l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=
95
+a?"Authentication failed "+(c[1]+(c[2]<<8))+" times. The system may be under attack.":30==a?"No bootable media":32==a?"Operating system lockup or power interrupt":35==a?"System boot failure":37==a?"System firmware started (at least one CPU is properly executing).":"Unknown Sensor Type #"+a}function w(a,b,c,d,r){if(200!=d)r[0](l,[],d);else{var g,h,e=r[1],m=new Date,n;if(0<c.Body.RecordsReturned)for(h in c.Body.EventRecords=MakeToArray(c.Body.EventRecords),c.Body.EventRecords){a=null;try{a=window.atob(c.Body.EventRecords[h])}catch(v){console.log(v+
96
+" "+c.Body.EventRecords[h])}b={AuditAppID:ReadShort(a,0),EventID:ReadShort(a,2),InitiatorType:a.charCodeAt(4)};b.AuditApp=y[b.AuditAppID];b.Event=y[100*b.AuditAppID+b.EventID];b.Event||(b.Event="#"+b.EventID);0==b.InitiatorType&&(g=a.charCodeAt(5),b.Initiator=a.substring(6,6+g),g=6+g);1==b.InitiatorType&&(b.KerberosUserInDomain=ReadInt(a,5),g=a.charCodeAt(9),b.Initiator=GetSidString(a.substring(10,10+g)),g=10+g);2==b.InitiatorType&&(b.Initiator="<i>Local</i>",g=5);3==b.InitiatorType&&(b.Initiator=
97
+"<i>KVM Default Port</i>",g=5);n=ReadInt(a,g);b.Time=new Date(1E3*(n+60*m.getTimezoneOffset()));g+=4;b.MCLocationType=a.charCodeAt(g++);n=a.charCodeAt(g++);b.NetAddress=a.substring(g,g+n);g+=n;n=a.charCodeAt(g++);b.Ex=a.substring(g,g+n);b.ExStr=l.GetAuditLogExtendedDataStr(100*b.AuditAppID+b.EventID,b.Ex);e.push(b)}if(c.Body.TotalRecordCount>e.length)l.AMT_AuditLog_ReadRecords(e.length+1,w,[r[0],e]);else r[0](l,e,d)}}var l={};l.wsman=b;l.pfx=["http://intel.com/wbem/wscim/1/amt-schema/1/","http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/",
98
+"http://intel.com/wbem/wscim/1/ips-schema/1/"];l.PendingEnums=[];l.PendingBatchOperations=0;l.ActiveEnumsCount=0;l.MaxActiveEnumsCount=1;l.onProcessChanged=null;var x=0,C=0;l.GetPendingActions=function(){return 2*l.PendingEnums.length+l.ActiveEnumsCount+l.wsman.comm.PendingAjax.length+l.wsman.comm.ActiveAjaxCount+l.PendingBatchOperations};l.Subscribe=function(a,b,d,r,y,g,e,h,m,n){l.wsman.ExecSubscribe(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,z,g,y)},0,g,e,h,m,n);c()};l.UnSubscribe=function(a,
99
+b,d,r,y){l.wsman.ExecUnSubscribe(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r,y);c()};l.Get=function(a,b,d,r){l.wsman.ExecGet(l.CompleteName(a),function(r,A,y,g){c();b(l,a,y,g,d)},0,r);c()};l.Put=function(a,b,d,r,y,g){l.wsman.ExecPut(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y,g);c()};l.Create=function(a,b,d,r,y){l.wsman.ExecCreate(l.CompleteName(a),b,function(b,z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Delete=function(a,b,d,r,y){l.wsman.ExecDelete(l.CompleteName(a),b,function(b,
100
+z,y,g){c();d(l,a,y,g,r)},0,y);c()};l.Exec=function(a,b,d,r,y,g,e){l.wsman.ExecMethod(l.CompleteName(a),b,d,function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.ExecWithXml=function(a,b,d,r,y,g,e){l.wsman.ExecMethodXml(l.CompleteName(a),b,execArgumentsToXml(d),function(b,d,z,g){c();r(l,a,l.CompleteExecResponse(z),g,y)},0,g,e);c()};l.Enum=function(b,d,r,A){l.ActiveEnumsCount<l.MaxActiveEnumsCount?(l.ActiveEnumsCount++,l.wsman.ExecEnum(l.CompleteName(b),function(r,A,y,g,e){c();a(b,
101
+y,d,A,g,e)},r,A)):l.PendingEnums.push([b,d,r,A]);c()};l.BatchEnum=function(a,b,d,r,y,g){l.PendingBatchOperations+=2*b.length;q(a,Clone(b),d,r,{},y,g);c()};l.BatchGet=function(a,b,d,r,y){p({name:a,names:b,callback:d,current:0,responses:{},tag:r,pri:y});c()};l.CompleteName=function(a){if(0==a.indexOf("AMT_"))return l.pfx[0]+a;if(0==a.indexOf("CIM_"))return l.pfx[1]+a;if(0==a.indexOf("IPS_"))return l.pfx[2]+a};l.CompleteExecResponse=function(a){a&&null!=a&&a.Body&&void 0!=a.Body.ReturnValue&&(a.Body.ReturnValueStr=
102
l.AmtStatusToStr(a.Body.ReturnValue));return a};l.RequestPowerStateChange=function(a,b){l.CIM_PowerManagementService_RequestPowerStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
103
null,null,b)};l.RequestOSPowerStateChange=function(a,b){l.IPS_PowerManagementService_RequestOSPowerSavingStateChange(a,'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ComputerSystem</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="CreationClassName">CIM_ComputerSystem</Selector><Selector Name="Name">ManagedSystem</Selector></SelectorSet></ReferenceParameters>',
104
null,null,b)};l.SetBootConfigRole=function(a,b){l.CIM_BootService_SetBootConfigRole('<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootConfigSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: Boot Configuration 0</Selector></SelectorSet></ReferenceParameters>',
105
-a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,q,y,
106
-h,g,e){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:q},y,h,g,e)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
107
-function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,q,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:q},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
105
+a,b)};l.CancelAllQueries=function(a){l.wsman.CancelAllQueries(a)};l.AMT_AgentPresenceWatchdog_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdog","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdog_AssertPresence=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdog","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdog_AddAction=function(a,b,c,d,r,y,
106
+g,e,h){l.Exec("AMT_AgentPresenceWatchdog","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y,g,e,h)};l.AMT_AgentPresenceWatchdog_DeleteAllActions=function(a,b,c,d){l.Exec("AMT_AgentPresenceWatchdog","DeleteAllActions",{},a,b,c,d)};l.AMT_AgentPresenceWatchdogAction_GetActionEac=function(a){l.Exec("AMT_AgentPresenceWatchdogAction","GetActionEac",{},a)};l.AMT_AgentPresenceWatchdogVA_RegisterAgent=function(a){l.Exec("AMT_AgentPresenceWatchdogVA","RegisterAgent",{},a)};l.AMT_AgentPresenceWatchdogVA_AssertPresence=
107
+function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertPresence",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AssertShutdown=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA","AssertShutdown",{SequenceNumber:a},b)};l.AMT_AgentPresenceWatchdogVA_AddAction=function(a,b,c,d,r,y){l.Exec("AMT_AgentPresenceWatchdogVA","AddAction",{OldState:a,NewState:b,EventOnTransition:c,ActionSd:d,ActionEac:r},y)};l.AMT_AgentPresenceWatchdogVA_DeleteAllActions=function(a,b){l.Exec("AMT_AgentPresenceWatchdogVA",
108
"DeleteAllActions",{_method_dummy:a},b)};l.AMT_AuditLog_ClearLog=function(a){l.Exec("AMT_AuditLog","ClearLog",{},a)};l.AMT_AuditLog_RequestStateChange=function(a,b,c){l.Exec("AMT_AuditLog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_AuditLog_ReadRecords=function(a,b,c){l.Exec("AMT_AuditLog","ReadRecords",{StartIndex:a},b,c)};l.AMT_AuditLog_SetAuditLock=function(a,b,c,d){l.Exec("AMT_AuditLog","SetAuditLock",{LockTimeoutInSeconds:a,Flag:b,Handle:c},d)};l.AMT_AuditLog_ExportAuditLogSignature=
109
-function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,q){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},q)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,q){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},q)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,q){l.Exec("AMT_AuditPolicyRule",
110
-"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},q)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,q,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:q},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
111
-"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,q,y,h){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:q,Realms:y},h)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
109
+function(a,b){l.Exec("AMT_AuditLog","ExportAuditLogSignature",{SigningMechanism:a},b)};l.AMT_AuditLog_SetSigningKeyMaterial=function(a,b,c,d,r){l.Exec("AMT_AuditLog","SetSigningKeyMaterial",{SigningMechanismType:a,SigningKey:b,LengthOfCertificates:c,Certificates:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicy=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule","SetAuditPolicy",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuditPolicyRule_SetAuditPolicyBulk=function(a,b,c,d,r){l.Exec("AMT_AuditPolicyRule",
110
+"SetAuditPolicyBulk",{Enable:a,AuditedAppID:b,EventID:c,PolicyType:d},r)};l.AMT_AuthorizationService_AddUserAclEntryEx=function(a,b,c,d,r,y){l.Exec("AMT_AuthorizationService","AddUserAclEntryEx",{DigestUsername:a,DigestPassword:b,KerberosUserSid:c,AccessPermission:d,Realms:r},y)};l.AMT_AuthorizationService_EnumerateUserAclEntries=function(a,b){l.Exec("AMT_AuthorizationService","EnumerateUserAclEntries",{StartIndex:a},b)};l.AMT_AuthorizationService_GetUserAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService",
111
+"GetUserAclEntryEx",{Handle:a},b,c)};l.AMT_AuthorizationService_UpdateUserAclEntryEx=function(a,b,c,d,r,y,g){l.Exec("AMT_AuthorizationService","UpdateUserAclEntryEx",{Handle:a,DigestUsername:b,DigestPassword:c,KerberosUserSid:d,AccessPermission:r,Realms:y},g)};l.AMT_AuthorizationService_RemoveUserAclEntry=function(a,b){l.Exec("AMT_AuthorizationService","RemoveUserAclEntry",{Handle:a},b)};l.AMT_AuthorizationService_SetAdminAclEntryEx=function(a,b,c){l.Exec("AMT_AuthorizationService","SetAdminAclEntryEx",
112
{Username:a,DigestPassword:b},c)};l.AMT_AuthorizationService_GetAdminAclEntry=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntry",{},a)};l.AMT_AuthorizationService_GetAdminAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminAclEntryStatus",{},a)};l.AMT_AuthorizationService_GetAdminNetAclEntryStatus=function(a){l.Exec("AMT_AuthorizationService","GetAdminNetAclEntryStatus",{},a)};l.AMT_AuthorizationService_SetAclEnabledState=function(a,b,c,d){l.Exec("AMT_AuthorizationService",
113
"SetAclEnabledState",{Handle:a,Enabled:b},c,d)};l.AMT_AuthorizationService_GetAclEnabledState=function(a,b,c){l.Exec("AMT_AuthorizationService","GetAclEnabledState",{Handle:a},b,c)};l.AMT_EndpointAccessControlService_RequestStateChange=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_EndpointAccessControlService_GetPosture=function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPosture",{PostureType:a},b)};l.AMT_EndpointAccessControlService_GetPostureHash=
114
function(a,b){l.Exec("AMT_EndpointAccessControlService","GetPostureHash",{PostureType:a},b)};l.AMT_EndpointAccessControlService_UpdatePostureState=function(a,b){l.Exec("AMT_EndpointAccessControlService","UpdatePostureState",{UpdateType:a},b)};l.AMT_EndpointAccessControlService_GetEacOptions=function(a){l.Exec("AMT_EndpointAccessControlService","GetEacOptions",{},a)};l.AMT_EndpointAccessControlService_SetEacOptions=function(a,b,c){l.Exec("AMT_EndpointAccessControlService","SetEacOptions",{EacVendors:a,
@@ -118,20 +118,20 @@ b)};l.AMT_MessageLog_CancelIteration=function(a,b){l.Exec("AMT_MessageLog","Canc
118
b,c){l.Exec("AMT_MessageLog","GetRecord",{IterationIdentifier:a,PositionToNext:b},c)};l.AMT_MessageLog_PositionAtRecord=function(a,b,c,d){l.Exec("AMT_MessageLog","PositionAtRecord",{IterationIdentifier:a,MoveAbsolute:b,RecordNumber:c},d)};l.AMT_MessageLog_PositionToFirstRecord=function(a,b){l.Exec("AMT_MessageLog","PositionToFirstRecord",{},a,b)};l.AMT_MessageLog_FreezeLog=function(a,b){l.Exec("AMT_MessageLog","FreezeLog",{Freeze:a},b)};l.AMT_PublicKeyManagementService_AddCRL=function(a,b,c){l.Exec("AMT_PublicKeyManagementService",
119
"AddCRL",{Url:a,SerialNumbers:b},c)};l.AMT_PublicKeyManagementService_ResetCRLList=function(a,b){l.Exec("AMT_PublicKeyManagementService","ResetCRLList",{_method_dummy:a},b)};l.AMT_PublicKeyManagementService_AddCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddTrustedRootCertificate=function(a,b){l.Exec("AMT_PublicKeyManagementService","AddTrustedRootCertificate",{CertificateBlob:a},b)};l.AMT_PublicKeyManagementService_AddKey=
120
function(a,b){l.Exec("AMT_PublicKeyManagementService","AddKey",{KeyBlob:a},b)};l.AMT_PublicKeyManagementService_GeneratePKCS10Request=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10Request",{KeyPair:a,DNName:b,Usage:c},d)};l.AMT_PublicKeyManagementService_GeneratePKCS10RequestEx=function(a,b,c,d){l.Exec("AMT_PublicKeyManagementService","GeneratePKCS10RequestEx",{KeyPair:a,SigningAlgorithm:b,NullSignedCertificateRequest:c},d)};l.AMT_PublicKeyManagementService_GenerateKeyPair=
121
-function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,q,y,h,g,e){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
122
-Port:c,AuthMethod:d,Certificate:q,Username:y,Password:h,CN:g},e)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,q,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:q},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
121
+function(a,b,c){l.Exec("AMT_PublicKeyManagementService","GenerateKeyPair",{KeyAlgorithm:a,KeyLength:b},c)};l.AMT_RedirectionService_RequestStateChange=function(a,b){l.Exec("AMT_RedirectionService","RequestStateChange",{RequestedState:a},b)};l.AMT_RedirectionService_TerminateSession=function(a,b){l.Exec("AMT_RedirectionService","TerminateSession",{SessionType:a},b)};l.AMT_RemoteAccessService_AddMpServer=function(a,b,c,d,r,y,g,e,h){l.Exec("AMT_RemoteAccessService","AddMpServer",{AccessInfo:a,InfoFormat:b,
122
+Port:c,AuthMethod:d,Certificate:r,Username:y,Password:g,CN:e},h)};l.AMT_RemoteAccessService_AddRemoteAccessPolicyRule=function(a,b,c,d,r,y){l.Exec("AMT_RemoteAccessService","AddRemoteAccessPolicyRule",{Trigger:a,TunnelLifeTime:b,ExtendedData:c,MpServer:d,InternalMpServer:r},y)};l.AMT_RemoteAccessService_CloseRemoteAccessConnection=function(a,b){l.Exec("AMT_RemoteAccessService","CloseRemoteAccessConnection",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_CommitChanges=function(a,b){l.Exec("AMT_SetupAndConfigurationService",
123
"CommitChanges",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_Unprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","Unprovision",{ProvisioningMode:a},b)};l.AMT_SetupAndConfigurationService_PartialUnprovision=function(a,b){l.Exec("AMT_SetupAndConfigurationService","PartialUnprovision",{_method_dummy:a},b)};l.AMT_SetupAndConfigurationService_ResetFlashWearOutProtection=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ResetFlashWearOutProtection",{_method_dummy:a},b)};
124
l.AMT_SetupAndConfigurationService_ExtendProvisioningPeriod=function(a,b){l.Exec("AMT_SetupAndConfigurationService","ExtendProvisioningPeriod",{Duration:a},b)};l.AMT_SetupAndConfigurationService_SetMEBxPassword=function(a,b){l.Exec("AMT_SetupAndConfigurationService","SetMEBxPassword",{Password:a},b)};l.AMT_SetupAndConfigurationService_SetTLSPSK=function(a,b,c){l.Exec("AMT_SetupAndConfigurationService","SetTLSPSK",{PID:a,PPS:b},c)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecord=function(a){l.Exec("AMT_SetupAndConfigurationService",
125
"GetProvisioningAuditRecord",{},a)};l.AMT_SetupAndConfigurationService_GetUuid=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUuid",{},a)};l.AMT_SetupAndConfigurationService_GetUnprovisionBlockingComponents=function(a){l.Exec("AMT_SetupAndConfigurationService","GetUnprovisionBlockingComponents",{},a)};l.AMT_SetupAndConfigurationService_GetProvisioningAuditRecordV2=function(a){l.Exec("AMT_SetupAndConfigurationService","GetProvisioningAuditRecordV2",{},a)};l.AMT_SystemDefensePolicy_GetTimeout=
126
-function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,q,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,q,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
127
-function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,q){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,q)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
128
-"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,q,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:q},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,q,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
129
-IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:q},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
126
+function(a){l.Exec("AMT_SystemDefensePolicy","GetTimeout",{},a)};l.AMT_SystemDefensePolicy_SetTimeout=function(a,b){l.Exec("AMT_SystemDefensePolicy","SetTimeout",{Timeout:a},b)};l.AMT_SystemDefensePolicy_UpdateStatistics=function(a,b,c,d,r,y){l.Exec("AMT_SystemDefensePolicy","UpdateStatistics",{NetworkInterface:a,ResetOnRead:b},c,d,r,y)};l.AMT_SystemPowerScheme_SetPowerScheme=function(a,b,c){l.Exec("AMT_SystemPowerScheme","SetPowerScheme",{},a,c,0,{InstanceID:b})};l.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch=
127
+function(a,b){l.Exec("AMT_TimeSynchronizationService","GetLowAccuracyTimeSynch",{},a,b)};l.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch=function(a,b,c,d,r){l.Exec("AMT_TimeSynchronizationService","SetHighAccuracyTimeSynch",{Ta0:a,Tm1:b,Tm2:c},d,r)};l.AMT_UserInitiatedConnectionService_RequestStateChange=function(a,b,c){l.Exec("AMT_UserInitiatedConnectionService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WebUIService_RequestStateChange=function(a,b,c){l.Exec("AMT_WebUIService",
128
+"RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.AMT_WiFiPortConfigurationService_AddWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","AddWiFiSettings",{WiFiEndpoint:a,WiFiEndpointSettingsInput:b,IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_UpdateWiFiSettings=function(a,b,c,d,r,y){l.ExecWithXml("AMT_WiFiPortConfigurationService","UpdateWiFiSettings",{WiFiEndpointSettings:a,WiFiEndpointSettingsInput:b,
129
+IEEE8021xSettingsInput:c,ClientCredential:d,CACredential:r},y)};l.AMT_WiFiPortConfigurationService_DeleteAllITProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllITProfiles",{_method_dummy:a},b)};l.AMT_WiFiPortConfigurationService_DeleteAllUserProfiles=function(a,b){l.Exec("AMT_WiFiPortConfigurationService","DeleteAllUserProfiles",{_method_dummy:a},b)};l.CIM_Account_RequestStateChange=function(a,b,c){l.Exec("CIM_Account","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
130
c)};l.CIM_AccountManagementService_CreateAccount=function(a,b,c){l.Exec("CIM_AccountManagementService","CreateAccount",{System:a,AccountTemplate:b},c)};l.CIM_BootConfigSetting_ChangeBootOrder=function(a,b){l.Exec("CIM_BootConfigSetting","ChangeBootOrder",{Source:a},b)};l.CIM_BootService_SetBootConfigRole=function(a,b,c){l.Exec("CIM_BootService","SetBootConfigRole",{BootConfigSetting:a,Role:b},c,0,1)};l.CIM_Card_ConnectorPower=function(a,b,c){l.Exec("CIM_Card","ConnectorPower",{Connector:a,PoweredOn:b},
131
c)};l.CIM_Card_IsCompatible=function(a,b){l.Exec("CIM_Card","IsCompatible",{ElementToCheck:a},b)};l.CIM_Chassis_IsCompatible=function(a,b){l.Exec("CIM_Chassis","IsCompatible",{ElementToCheck:a},b)};l.CIM_Fan_SetSpeed=function(a,b){l.Exec("CIM_Fan","SetSpeed",{DesiredSpeed:a},b)};l.CIM_KVMRedirectionSAP_RequestStateChange=function(a,b,c){l.Exec("CIM_KVMRedirectionSAP","RequestStateChange",{RequestedState:a},c)};l.CIM_MediaAccessDevice_LockMedia=function(a,b){l.Exec("CIM_MediaAccessDevice","LockMedia",
132
{Lock:a},b)};l.CIM_MediaAccessDevice_SetPowerState=function(a,b,c){l.Exec("CIM_MediaAccessDevice","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_MediaAccessDevice_Reset=function(a){l.Exec("CIM_MediaAccessDevice","Reset",{},a)};l.CIM_MediaAccessDevice_EnableDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","EnableDevice",{Enabled:a},b)};l.CIM_MediaAccessDevice_OnlineDevice=function(a,b){l.Exec("CIM_MediaAccessDevice","OnlineDevice",{Online:a},b)};l.CIM_MediaAccessDevice_QuiesceDevice=function(a,
133
b){l.Exec("CIM_MediaAccessDevice","QuiesceDevice",{Quiesce:a},b)};l.CIM_MediaAccessDevice_SaveProperties=function(a){l.Exec("CIM_MediaAccessDevice","SaveProperties",{},a)};l.CIM_MediaAccessDevice_RestoreProperties=function(a){l.Exec("CIM_MediaAccessDevice","RestoreProperties",{},a)};l.CIM_MediaAccessDevice_RequestStateChange=function(a,b,c){l.Exec("CIM_MediaAccessDevice","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_PhysicalFrame_IsCompatible=function(a,b){l.Exec("CIM_PhysicalFrame",
134
-"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,q){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},q,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
134
+"IsCompatible",{ElementToCheck:a},b)};l.CIM_PhysicalPackage_IsCompatible=function(a,b){l.Exec("CIM_PhysicalPackage","IsCompatible",{ElementToCheck:a},b)};l.CIM_PowerManagementService_RequestPowerStateChange=function(a,b,c,d,r){l.Exec("CIM_PowerManagementService","RequestPowerStateChange",{PowerState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.CIM_PowerSupply_SetPowerState=function(a,b,c){l.Exec("CIM_PowerSupply","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_PowerSupply_Reset=function(a){l.Exec("CIM_PowerSupply",
135
"Reset",{},a)};l.CIM_PowerSupply_EnableDevice=function(a,b){l.Exec("CIM_PowerSupply","EnableDevice",{Enabled:a},b)};l.CIM_PowerSupply_OnlineDevice=function(a,b){l.Exec("CIM_PowerSupply","OnlineDevice",{Online:a},b)};l.CIM_PowerSupply_QuiesceDevice=function(a,b){l.Exec("CIM_PowerSupply","QuiesceDevice",{Quiesce:a},b)};l.CIM_PowerSupply_SaveProperties=function(a){l.Exec("CIM_PowerSupply","SaveProperties",{},a)};l.CIM_PowerSupply_RestoreProperties=function(a){l.Exec("CIM_PowerSupply","RestoreProperties",
136
{},a)};l.CIM_PowerSupply_RequestStateChange=function(a,b,c){l.Exec("CIM_PowerSupply","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_Processor_SetPowerState=function(a,b,c){l.Exec("CIM_Processor","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Processor_Reset=function(a){l.Exec("CIM_Processor","Reset",{},a)};l.CIM_Processor_EnableDevice=function(a,b){l.Exec("CIM_Processor","EnableDevice",{Enabled:a},b)};l.CIM_Processor_OnlineDevice=function(a,b){l.Exec("CIM_Processor","OnlineDevice",
137
{Online:a},b)};l.CIM_Processor_QuiesceDevice=function(a,b){l.Exec("CIM_Processor","QuiesceDevice",{Quiesce:a},b)};l.CIM_Processor_SaveProperties=function(a){l.Exec("CIM_Processor","SaveProperties",{},a)};l.CIM_Processor_RestoreProperties=function(a){l.Exec("CIM_Processor","RestoreProperties",{},a)};l.CIM_Processor_RequestStateChange=function(a,b,c){l.Exec("CIM_Processor","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.CIM_RecordLog_ClearLog=function(a){l.Exec("CIM_RecordLog","ClearLog",
@@ -140,21 +140,21 @@ b){l.Exec("CIM_Sensor","EnableDevice",{Enabled:a},b)};l.CIM_Sensor_OnlineDevice=
140
TimeoutPeriod:b},c)};l.CIM_StatisticalData_ResetSelectedStats=function(a,b){l.Exec("CIM_StatisticalData","ResetSelectedStats",{SelectedStatistics:a},b)};l.CIM_Watchdog_KeepAlive=function(a){l.Exec("CIM_Watchdog","KeepAlive",{},a)};l.CIM_Watchdog_SetPowerState=function(a,b,c){l.Exec("CIM_Watchdog","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_Watchdog_Reset=function(a){l.Exec("CIM_Watchdog","Reset",{},a)};l.CIM_Watchdog_EnableDevice=function(a,b){l.Exec("CIM_Watchdog","EnableDevice",{Enabled:a},
141
b)};l.CIM_Watchdog_OnlineDevice=function(a,b){l.Exec("CIM_Watchdog","OnlineDevice",{Online:a},b)};l.CIM_Watchdog_QuiesceDevice=function(a,b){l.Exec("CIM_Watchdog","QuiesceDevice",{Quiesce:a},b)};l.CIM_Watchdog_SaveProperties=function(a){l.Exec("CIM_Watchdog","SaveProperties",{},a)};l.CIM_Watchdog_RestoreProperties=function(a){l.Exec("CIM_Watchdog","RestoreProperties",{},a)};l.CIM_Watchdog_RequestStateChange=function(a,b,c){l.Exec("CIM_Watchdog","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},
142
c)};l.CIM_WiFiPort_SetPowerState=function(a,b,c){l.Exec("CIM_WiFiPort","SetPowerState",{PowerState:a,Time:b},c)};l.CIM_WiFiPort_Reset=function(a){l.Exec("CIM_WiFiPort","Reset",{},a)};l.CIM_WiFiPort_EnableDevice=function(a,b){l.Exec("CIM_WiFiPort","EnableDevice",{Enabled:a},b)};l.CIM_WiFiPort_OnlineDevice=function(a,b){l.Exec("CIM_WiFiPort","OnlineDevice",{Online:a},b)};l.CIM_WiFiPort_QuiesceDevice=function(a,b){l.Exec("CIM_WiFiPort","QuiesceDevice",{Quiesce:a},b)};l.CIM_WiFiPort_SaveProperties=function(a){l.Exec("CIM_WiFiPort",
143
-"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,q,y,h){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:q,DigitalSignature:y},h)};l.IPS_HostBasedSetupService_AddNextCertInChain=
144
-function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,q,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:q},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
143
+"SaveProperties",{},a)};l.CIM_WiFiPort_RestoreProperties=function(a){l.Exec("CIM_WiFiPort","RestoreProperties",{},a)};l.CIM_WiFiPort_RequestStateChange=function(a,b,c){l.Exec("CIM_WiFiPort","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HostBasedSetupService_Setup=function(a,b,c,d,r,y,g){l.Exec("IPS_HostBasedSetupService","Setup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,Certificate:d,SigningAlgorithm:r,DigitalSignature:y},g)};l.IPS_HostBasedSetupService_AddNextCertInChain=
144
+function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","AddNextCertInChain",{NextCertificate:a,IsLeafCertificate:b,IsRootCertificate:c},d)};l.IPS_HostBasedSetupService_AdminSetup=function(a,b,c,d,r,y){l.Exec("IPS_HostBasedSetupService","AdminSetup",{NetAdminPassEncryptionType:a,NetworkAdminPassword:b,McNonce:c,SigningAlgorithm:d,DigitalSignature:r},y)};l.IPS_HostBasedSetupService_UpgradeClientToAdmin=function(a,b,c,d){l.Exec("IPS_HostBasedSetupService","UpgradeClientToAdmin",{McNonce:a,SigningAlgorithm:b,
145
DigitalSignature:c},d)};l.IPS_HostBasedSetupService_DisableClientControlMode=function(a,b){l.Exec("IPS_HostBasedSetupService","DisableClientControlMode",{_method_dummy:a},b)};l.IPS_KVMRedirectionSettingData_TerminateSession=function(a){l.Exec("IPS_KVMRedirectionSettingData","TerminateSession",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelRead=function(a){l.Exec("IPS_KVMRedirectionSettingData","DataChannelRead",{},a)};l.IPS_KVMRedirectionSettingData_DataChannelWrite=function(a,b){l.Exec("IPS_KVMRedirectionSettingData",
146
"DataChannelWrite",{DataMessage:a},b)};l.IPS_OptInService_StartOptIn=function(a){l.Exec("IPS_OptInService","StartOptIn",{},a)};l.IPS_OptInService_CancelOptIn=function(a){l.Exec("IPS_OptInService","CancelOptIn",{},a)};l.IPS_OptInService_SendOptInCode=function(a,b){l.Exec("IPS_OptInService","SendOptInCode",{OptInCode:a},b)};l.IPS_OptInService_StartService=function(a){l.Exec("IPS_OptInService","StartService",{},a)};l.IPS_OptInService_StopService=function(a){l.Exec("IPS_OptInService","StopService",{},
147
-a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,q){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},q,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
147
+a)};l.IPS_OptInService_RequestStateChange=function(a,b,c){l.Exec("IPS_OptInService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_PowerManagementService_RequestOSPowerSavingStateChange=function(a,b,c,d,r){l.Exec("IPS_PowerManagementService","RequestOSPowerSavingStateChange",{OSPowerSavingState:a,ManagedElement:b,Time:c,TimeoutPeriod:d},r,0,1)};l.IPS_ProvisioningRecordLog_RequestStateChange=function(a,b,c){l.Exec("IPS_ProvisioningRecordLog","RequestStateChange",{RequestedState:a,
148
TimeoutPeriod:b},c)};l.IPS_ProvisioningRecordLog_ClearLog=function(a,b){l.Exec("IPS_ProvisioningRecordLog","ClearLog",{_method_dummy:a},b)};l.IPS_ScreenConfigurationService_SetSessionState=function(a,b,c){l.Exec("IPS_ScreenConfigurationService","SetSessionState",{SessionState:a,ConsecutiveRebootsNum:b},c)};l.IPS_SecIOService_RequestStateChange=function(a,b,c){l.Exec("IPS_SecIOService","RequestStateChange",{RequestedState:a,TimeoutPeriod:b},c)};l.IPS_HTTPProxyService_AddProxyAccessPoint=function(a,
149
-b,c,d,q){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},q)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
149
+b,c,d,r){l.Exec("IPS_HTTPProxyService","AddProxyAccessPoint",{AccessInfo:a,InfoFormat:b,Port:c,NetworkDnsSuffix:d},r)};l.AmtStatusToStr=function(a){return l.AmtStatusCodes[a]?l.AmtStatusCodes[a]:"UNKNOWN_ERROR"};l.AmtStatusCodes={0:"SUCCESS",1:"INTERNAL_ERROR",2:"NOT_READY",3:"INVALID_PT_MODE",4:"INVALID_MESSAGE_LENGTH",5:"TABLE_FINGERPRINT_NOT_AVAILABLE",6:"INTEGRITY_CHECK_FAILED",7:"UNSUPPORTED_ISVS_VERSION",8:"APPLICATION_NOT_REGISTERED",9:"INVALID_REGISTRATION_DATA",10:"APPLICATION_DOES_NOT_EXIST",
150
11:"NOT_ENOUGH_STORAGE",12:"INVALID_NAME",13:"BLOCK_DOES_NOT_EXIST",14:"INVALID_BYTE_OFFSET",15:"INVALID_BYTE_COUNT",16:"NOT_PERMITTED",17:"NOT_OWNER",18:"BLOCK_LOCKED_BY_OTHER",19:"BLOCK_NOT_LOCKED",20:"INVALID_GROUP_PERMISSIONS",21:"GROUP_DOES_NOT_EXIST",22:"INVALID_MEMBER_COUNT",23:"MAX_LIMIT_REACHED",24:"INVALID_AUTH_TYPE",25:"AUTHENTICATION_FAILED",26:"INVALID_DHCP_MODE",27:"INVALID_IP_ADDRESS",28:"INVALID_DOMAIN_NAME",29:"UNSUPPORTED_VERSION",30:"REQUEST_UNEXPECTED",31:"INVALID_TABLE_TYPE",
151
32:"INVALID_PROVISIONING_STATE",33:"UNSUPPORTED_OBJECT",34:"INVALID_TIME",35:"INVALID_INDEX",36:"INVALID_PARAMETER",37:"INVALID_NETMASK",38:"FLASH_WRITE_LIMIT_EXCEEDED",39:"INVALID_IMAGE_LENGTH",40:"INVALID_IMAGE_SIGNATURE",41:"PROPOSE_ANOTHER_VERSION",42:"INVALID_PID_FORMAT",43:"INVALID_PPS_FORMAT",44:"BIST_COMMAND_BLOCKED",45:"CONNECTION_FAILED",46:"CONNECTION_TOO_MANY",47:"RNG_GENERATION_IN_PROGRESS",48:"RNG_NOT_READY",49:"CERTIFICATE_NOT_READY",1024:"DISABLED_BY_POLICY",2048:"NETWORK_IF_ERROR_BASE",
152
2049:"UNSUPPORTED_OEM_NUMBER",2050:"UNSUPPORTED_BOOT_OPTION",2051:"INVALID_COMMAND",2052:"INVALID_SPECIAL_COMMAND",2053:"INVALID_HANDLE",2054:"INVALID_PASSWORD",2055:"INVALID_REALM",2056:"STORAGE_ACL_ENTRY_IN_USE",2057:"DATA_MISSING",2058:"DUPLICATE",2059:"EVENTLOG_FROZEN",2060:"PKI_MISSING_KEYS",2061:"PKI_GENERATING_KEYS",2062:"INVALID_KEY",2063:"INVALID_CERT",2064:"CERT_KEY_NOT_MATCH",2065:"MAX_KERB_DOMAIN_REACHED",2066:"UNSUPPORTED",2067:"INVALID_PRIORITY",2068:"NOT_FOUND",2069:"INVALID_CREDENTIALS",
153
-2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var n="Unspecified.;No system memory is physically installed in the system.;No usable system memory, all installed memory has experienced an unrecoverable failure.;Unrecoverable hard-disk/ATAPI/IDE device failure.;Unrecoverable system-board failure.;Unrecoverable diskette subsystem failure.;Unrecoverable hard-disk controller failure.;Unrecoverable PS/2 or USB keyboard failure.;Removable boot media not found.;Unrecoverable video controller failure.;No video device detected.;Firmware (BIOS) ROM corruption detected.;CPU voltage mismatch (processors that share same supply have mismatched voltage requirements);CPU speed matching failure".split(";"),
154
-g="Unspecified.;Memory initialization.;Starting hard-disk initialization and test;Secondary processor(s) initialization;User authentication;User-initiated system setup;USB resource configuration;PCI resource configuration;Option ROM initialization;Video initialization;Cache initialization;SM Bus initialization;Keyboard controller initialization;Embedded controller/management controller initialization;Docking station attachment;Enabling docking station;Docking station ejection;Disabling docking station;Calling operating system wake-up vector;Starting operating system boot process;Baseboard or motherboard initialization;reserved;Floppy initialization;Keyboard test;Pointing device test;Primary processor initialization".split(";"),
155
-h="Unspecified;Other;Unknown;Processor;Disk;Peripheral;System management module;System board;Memory module;Processor module;Power supply;Add in card;Front panel board;Back panel board;Power system board;Drive backplane;System internal expansion board;Other system board;Processor board;Power unit;Power module;Power management board;Chassis back panel board;System chassis;Sub chassis;Other chassis board;Disk drive bay;Peripheral bay;Device bay;Fan cooling;Cooling unit;Cable interconnect;Memory device;System management software;BIOS;Intel(r) ME;System bus;Group;Intel(r) ME;External environment;Battery;Processing blade;Connectivity switch;Processor/memory module;I/O module;Processor I/O module;Management controller firmware;IPMI channel;PCI bus;PCI express bus;SCSI bus;SATA/SAS bus;Processor front side bus".split(";");
153
+2070:"INVALID_PASSPHRASE",2072:"NO_ASSOCIATION",2075:"AUDIT_FAIL",2076:"BLOCKING_COMPONENT",2081:"USER_CONSENT_REQUIRED",4096:"APP_INTERNAL_ERROR",4097:"NOT_INITIALIZED",4098:"LIB_VERSION_UNSUPPORTED",4099:"INVALID_PARAM",4100:"RESOURCES",4101:"HARDWARE_ACCESS_ERROR",4102:"REQUESTOR_NOT_REGISTERED",4103:"NETWORK_ERROR",4104:"PARAM_BUFFER_TOO_SHORT",4105:"COM_NOT_INITIALIZED_IN_THREAD",4106:"URL_REQUIRED"};l.GetMessageLog=function(a,b){l.AMT_MessageLog_PositionToFirstRecord(k,[a,b,[]])};var m="Unspecified.;No system memory is physically installed in the system.;No usable system memory, all installed memory has experienced an unrecoverable failure.;Unrecoverable hard-disk/ATAPI/IDE device failure.;Unrecoverable system-board failure.;Unrecoverable diskette subsystem failure.;Unrecoverable hard-disk controller failure.;Unrecoverable PS/2 or USB keyboard failure.;Removable boot media not found.;Unrecoverable video controller failure.;No video device detected.;Firmware (BIOS) ROM corruption detected.;CPU voltage mismatch (processors that share same supply have mismatched voltage requirements);CPU speed matching failure".split(";"),
154
+h="Unspecified.;Memory initialization.;Starting hard-disk initialization and test;Secondary processor(s) initialization;User authentication;User-initiated system setup;USB resource configuration;PCI resource configuration;Option ROM initialization;Video initialization;Cache initialization;SM Bus initialization;Keyboard controller initialization;Embedded controller/management controller initialization;Docking station attachment;Enabling docking station;Docking station ejection;Disabling docking station;Calling operating system wake-up vector;Starting operating system boot process;Baseboard or motherboard initialization;reserved;Floppy initialization;Keyboard test;Pointing device test;Primary processor initialization".split(";"),
155
+g="Unspecified;Other;Unknown;Processor;Disk;Peripheral;System management module;System board;Memory module;Processor module;Power supply;Add in card;Front panel board;Back panel board;Power system board;Drive backplane;System internal expansion board;Other system board;Processor board;Power unit;Power module;Power management board;Chassis back panel board;System chassis;Sub chassis;Other chassis board;Disk drive bay;Peripheral bay;Device bay;Fan cooling;Cooling unit;Cable interconnect;Memory device;System management software;BIOS;Intel(r) ME;System bus;Group;Intel(r) ME;External environment;Battery;Processing blade;Connectivity switch;Processor/memory module;I/O module;Processor I/O module;Management controller firmware;IPMI channel;PCI bus;PCI express bus;SCSI bus;SATA/SAS bus;Processor front side bus".split(";");
156
l.RealmNames=";;Redirection;;Hardware Asset;Remote Control;Storage;Event Manager;Storage Admin;Agent Presence Local;Agent Presence Remote;Circuit Breaker;Network Time;General Information;Firmware Update;EIT;LocalUN;Endpoint Access Control;Endpoint Access Control Admin;Event Log Reader;Audit Log;ACL Realm;;;Local System".split(";");l.WatchdogCurrentStates={1:"Not Started",2:"Stopped",4:"Running",8:"Expired",16:"Suspended"};var v="Boot parameters received from CSME;CSME Boot Option % added successfully;HTTPS URI name resolved;HTTPS connected successfully;HTTPSBoot download is completed;Attempt to boot;Exit boot services".split(";"),
157
-J=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),D={1:"",2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"Security Admin",17:"RCO",18:"Redirection Manager",19:"Firmware Update Manager",20:"Security Audit Log",21:"Network Time",22:"Network Administration",23:"Storage Administration",24:"Event Manager",25:"Circuit Breaker Manager",
157
+F=";No network connection available;Name resolution of URI failed;Connect to URI failed;OEM app not found at local URI;HTTPS TLS Auth failed;HTTPS Digest Auth failed;Verified boot failed (bad image);HTTPS Boot File not found".split(";"),D={1:"",2:"HTTPS",4:"Local PBA",8:"WinRE"},y={16:"Security Admin",17:"RCO",18:"Redirection Manager",19:"Firmware Update Manager",20:"Security Audit Log",21:"Network Time",22:"Network Administration",23:"Storage Administration",24:"Event Manager",25:"Circuit Breaker Manager",
158
26:"Agent Presence Manager",27:"Wireless Configuration",28:"EAC",29:"KVM",30:"User Opt-In Events",32:"Screen Blanking",33:"Watchdog Events",1600:"Provisioning Started",1601:"Provisioning Completed",1602:"ACL Entry Added",1603:"ACL Entry Modified",1604:"ACL Entry Removed",1605:"ACL Access with Invalid Credentials",1606:"ACL Entry State",1607:"TLS State Changed",1608:"TLS Server Certificate Set",1609:"TLS Server Certificate Remove",1610:"TLS Trusted Root Certificate Added",1611:"TLS Trusted Root Certificate Removed",
159
1612:"TLS Preshared Key Set",1613:"Kerberos Settings Modified",1614:"Kerberos Main Key Modified",1615:"Flash Wear out Counters Reset",1616:"Power Package Modified",1617:"Set Realm Authentication Mode",1618:"Upgrade Client to Admin Control Mode",1619:"Unprovisioning Started",1700:"Performed Power Up",1701:"Performed Power Down",1702:"Performed Power Cycle",1703:"Performed Reset",1704:"Set Boot Options",1800:"IDER Session Opened",1801:"IDER Session Closed",1802:"IDER Enabled",1803:"IDER Disabled",1804:"SoL Session Opened",
160
1805:"SoL Session Closed",1806:"SoL Enabled",1807:"SoL Disabled",1808:"KVM Session Started",1809:"KVM Session Ended",1810:"KVM Enabled",1811:"KVM Disabled",1812:"VNC Password Failed 3 Times",1900:"Firmware Updated",1901:"Firmware Update Failed",2E3:"Security Audit Log Cleared",2001:"Security Audit Policy Modified",2002:"Security Audit Log Disabled",2003:"Security Audit Log Enabled",2004:"Security Audit Log Exported",2005:"Security Audit Log Recovered",2100:"Intel® ME Time Set",2200:"TCPIP Parameters Set",
@@ -164,19 +164,19 @@ J=";No network connection available;Name resolution of URI failed;Connect to URI
164
"ServerAuth","MutualAuth"][b.charCodeAt(1)]:1617==a?l.RealmNames[ReadInt(b,0)]+", "+["NoAuth","Auth","Disabled"][b.charCodeAt(4)]:1619==a?["BIOS","MEBx","Local MEI","Local WSMAN","Remote WSAMN"][b.charCodeAt(0)]:1900==a?"From "+ReadShort(b,0)+"."+ReadShort(b,2)+"."+ReadShort(b,4)+"."+ReadShort(b,6)+" to "+ReadShort(b,8)+"."+ReadShort(b,10)+"."+ReadShort(b,12)+"."+ReadShort(b,14):2100==a?(c=new Date,c.setTime(1E3*ReadInt(b,0)+6E4*(new Date).getTimezoneOffset()),c.toLocaleString()):3E3==a?"From "+["None",
165
"KVM","All"][b.charCodeAt(0)]+" to "+["None","KVM","All"][b.charCodeAt(1)]:3001==a?["Success","Failed 3 times"][b.charCodeAt(0)]:null};l.GetAuditLog=function(a){l.AMT_AuditLog_ReadRecords(1,w,[a,[]])};return l}function hex_md5(b){null==b&&(b="");return forge.md.md5.create().update(b).digest().toHex()}function rstr_md5(b){return hex2rstr(hex_md5(b))}
166
function execArgumentsToXml(b){if(void 0===b||null===b)return null;var c="",a;for(a in b){var d=b[a];d&&(c="reference"===d.__parameterType?c+referenceToXml(a,d):c+instanceToXml(a,d))}return c}
167
-function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",r;for(r in c)c.hasOwnProperty(r)&&0!==r.indexOf("__")&&("function"===typeof c[r]||Array.isArray(c[r])||("object"===typeof c[r]?console.error("only convert one level down..."):a+=d+r+">"+c[r].toString()+e+r+">"));return a+("</r:"+b+">")}
167
+function instanceToXml(b,c){if(void 0===c||null===c)return null;var a=!!c.__namespace,d=a?"<q:":"<",e=a?"</q:":"</",a="<r:"+b+(a?' xmlns:q="'+c.__namespace+'"':"")+">",q;for(q in c)c.hasOwnProperty(q)&&0!==q.indexOf("__")&&("function"===typeof c[q]||Array.isArray(c[q])||("object"===typeof c[q]?console.error("only convert one level down..."):a+=d+q+">"+c[q].toString()+e+q+">"));return a+("</r:"+b+">")}
168
function referenceToXml(b,c){if(void 0===c||null===c)return null;var a="<r:"+b+"><a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+c.__resourceUri+"</w:ResourceURI><w:SelectorSet>",d;for(d in c)c.hasOwnProperty(d)&&0!==d.indexOf("__")&&("function"===typeof c[d]||"object"===typeof c[d]||Array.isArray(c[d])||(a+='<w:Selector Name="'+d+'">'+c[d].toString()+"</w:Selector>"));return a+("</w:SelectorSet></a:ReferenceParameters></r:"+b+">")}
169
function GetSidString(b){for(var c="S-"+b.charCodeAt(0)+"-"+b.charCodeAt(7),a=2;a<b.length/4;a++)c+="-"+ReadIntX(b,4*a);return c}
170
function GetSidByteArray(b){if(!b||null==b)return null;b=b.split("-");if(4>b.length||"s"!=b[0]&&"S"!=b[0])return null;for(var c=1;c<b.length;c++){var a=parseInt(b[c]);if(a!=b[c])return null;b[c]=a}a=String.fromCharCode(b[1])+String.fromCharCode(b.length-3)+ShortToStr(Math.floor(b[2]/Math.pow(2,32)))+IntToStr(b[2]&65535);for(c=3;c<b.length;c++)a+=IntToStrX(b[c]);return a}
171
-(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,q,y,h,g,e,n,m,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");h=a.length-1;v.nodeIdCompat&&C.test(a[h])&&(a[h]=a[h].replace(C,""));a=l.concat(a);for(h=0;h<a.length;h+=1)if(c=a[h],"."===c)a.splice(h,1),--h;else if(".."===c)if(1!==h||".."!==a[2]&&".."!==a[0])0<h&&(a.splice(h-1,2),h-=2);else break;
172
-a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(h=c.length;0<h;--h){d=c.slice(0,h).join("/");if(l)for(m=l.length;0<m;--m)if(q=w[l.slice(0,m).join("/")])if(q=q[d]){y=q;g=h;break}if(y)break;!e&&x&&x[d]&&(e=x[d],n=h)}!y&&e&&(y=e,g=n);y&&(c.splice(0,g,y),a=c.join("/"))}return a}function r(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){g[a]=b}}function q(a){if(D.call(h,
173
-a)){var b=h[a];delete h[a];J[a]=!0;l.apply(d,b)}if(!D.call(g,a)&&!D.call(J,a))throw Error("No "+a);return g[a]}function m(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,B,n,g={},h={},v={},J={},D=Object.prototype.hasOwnProperty,y=[].slice,C=/\.js$/;B=function(a,b){var c,d=m(a),y=d[0];a=d[1];y&&(y=e(y,b),c=q(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=m(a),
174
-y=d[0],a=d[1],y&&(c=q(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};n={require:function(a){return r(a)},exports:function(a){var b=g[a];return"undefined"!==typeof b?b:g[a]={}},module:function(a){return{id:a,uri:"",exports:g[a],config:w(a)}}};l=function(a,b,c,y){var e,m,l,C,w=[];m=typeof c;var v;y=y||a;if("undefined"===m||"function"===m){b=!b.length&&c.length?["require","exports","module"]:b;for(C=0;C<b.length;C+=1)if(l=B(b[C],y),m=l.f,"require"===m)w[C]=n.require(a);else if("exports"===m)w[C]=n.exports(a),
175
-v=!0;else if("module"===m)e=w[C]=n.module(a);else if(D.call(g,m)||D.call(h,m)||D.call(J,m))w[C]=q(m);else if(l.p)l.p.load(l.n,r(y,!0),k(m),{}),w[C]=g[m];else throw Error(a+" missing "+m);b=c?c.apply(g[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==g[a]?g[a]=e.exports:b===d&&v||(g[a]=b))}else a&&(g[a]=c)};b=c=x=function(a,b,c,y,h){if("string"===typeof a)return n[a]?n[a](b):q(B(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
176
-typeof c&&(c=y,y=h);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=g;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(g,a)||D.call(h,a)||(h[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var q=
177
-0;q<a.length;++q)this.putByte(a[q])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
178
-else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,q=document.createElement("div"),a=[];
179
-(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(q,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&q.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
171
+(function(b,c){"function"===typeof define&&define.amd?define([],c):b.forge=c()})(this,function(){var b,c,a;(function(d){function e(a,b){var c,d,r,y,g,e,h,m,n,l=b&&b.split("/"),w=v.map,x=w&&w["*"]||{};if(a&&"."===a.charAt(0))if(b){l=l.slice(0,l.length-1);a=a.split("/");g=a.length-1;v.nodeIdCompat&&B.test(a[g])&&(a[g]=a[g].replace(B,""));a=l.concat(a);for(g=0;g<a.length;g+=1)if(c=a[g],"."===c)a.splice(g,1),--g;else if(".."===c)if(1!==g||".."!==a[2]&&".."!==a[0])0<g&&(a.splice(g-1,2),g-=2);else break;
172
+a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((l||x)&&w){c=a.split("/");for(g=c.length;0<g;--g){d=c.slice(0,g).join("/");if(l)for(n=l.length;0<n;--n)if(r=w[l.slice(0,n).join("/")])if(r=r[d]){y=r;e=g;break}if(y)break;!h&&x&&x[d]&&(h=x[d],m=g)}!y&&h&&(y=h,e=m);y&&(c.splice(0,e,y),a=c.join("/"))}return a}function q(a,b){return function(){return x.apply(d,y.call(arguments,0).concat([a,b]))}}function p(a){return function(b){return e(b,a)}}function k(a){return function(b){h[a]=b}}function r(a){if(D.call(g,
173
+a)){var b=g[a];delete g[a];F[a]=!0;l.apply(d,b)}if(!D.call(h,a)&&!D.call(F,a))throw Error("No "+a);return h[a]}function n(a){var b,c=a?a.indexOf("!"):-1;-1<c&&(b=a.substring(0,c),a=a.substring(c+1,a.length));return[b,a]}function w(a){return function(){return v&&v.config&&v.config[a]||{}}}var l,x,C,m,h={},g={},v={},F={},D=Object.prototype.hasOwnProperty,y=[].slice,B=/\.js$/;C=function(a,b){var c,d=n(a),y=d[0];a=d[1];y&&(y=e(y,b),c=r(y));y?a=c&&c.normalize?c.normalize(a,p(b)):e(a,b):(a=e(a,b),d=n(a),
174
+y=d[0],a=d[1],y&&(c=r(y)));return{f:y?y+"!"+a:a,n:a,pr:y,p:c}};m={require:function(a){return q(a)},exports:function(a){var b=h[a];return"undefined"!==typeof b?b:h[a]={}},module:function(a){return{id:a,uri:"",exports:h[a],config:w(a)}}};l=function(a,b,c,y){var e,n,l,B,w=[];n=typeof c;var v;y=y||a;if("undefined"===n||"function"===n){b=!b.length&&c.length?["require","exports","module"]:b;for(B=0;B<b.length;B+=1)if(l=C(b[B],y),n=l.f,"require"===n)w[B]=m.require(a);else if("exports"===n)w[B]=m.exports(a),
175
+v=!0;else if("module"===n)e=w[B]=m.module(a);else if(D.call(h,n)||D.call(g,n)||D.call(F,n))w[B]=r(n);else if(l.p)l.p.load(l.n,q(y,!0),k(n),{}),w[B]=h[n];else throw Error(a+" missing "+n);b=c?c.apply(h[a],w):void 0;a&&(e&&e.exports!==d&&e.exports!==h[a]?h[a]=e.exports:b===d&&v||(h[a]=b))}else a&&(h[a]=c)};b=c=x=function(a,b,c,y,g){if("string"===typeof a)return m[a]?m[a](b):r(C(a,b).f);if(!a.splice){v=a;v.deps&&x(v.deps,v.callback);if(!b)return;b.splice?(a=b,b=c,c=null):a=d}b=b||function(){};"function"===
176
+typeof c&&(c=y,y=g);y?l(d,a,b,c):setTimeout(function(){l(d,a,b,c)},4);return x};x.config=function(a){return x(a)};b._defined=h;a=function(a,b,c){b.splice||(c=b,b=[]);D.call(h,a)||D.call(g,a)||(g[a]=[a,b,c])};a.amd={jQuery:!0}})();a("node_modules/almond/almond",function(){});(function(){function b(a){function c(a){this.data="";this.read=0;if("string"===typeof a)this.data=a;else if(d.isArrayBuffer(a)||d.isArrayBufferView(a)){a=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,a)}catch(b){for(var r=
177
+0;r<a.length;++r)this.putByte(a[r])}}else if(a instanceof c||"object"===typeof a&&"string"===typeof a.data&&"number"===typeof a.read)this.data=a.data,this.read=a.read;this._constructedStringLength=0}var d=a.util=a.util||{};(function(){if("undefined"!==typeof process&&process.nextTick)d.nextTick=process.nextTick,d.setImmediate="function"===typeof setImmediate?setImmediate:d.nextTick;else if("function"===typeof setImmediate)d.setImmediate=setImmediate,d.nextTick=function(a){return setImmediate(a)};
178
+else{d.setImmediate=function(a){setTimeout(a,0)};if("undefined"!==typeof window&&"function"===typeof window.postMessage){var a=[];d.setImmediate=function(b){a.push(b);1===a.length&&window.postMessage("forge.setImmediate","*")};window.addEventListener("message",function(b){b.source===window&&"forge.setImmediate"===b.data&&(b.stopPropagation(),b=a.slice(),a.length=0,b.forEach(function(a){a()}))},!0)}if("undefined"!==typeof MutationObserver){var b=Date.now(),c=!0,r=document.createElement("div"),a=[];
179
+(new MutationObserver(function(){var b=a.slice();a.length=0;b.forEach(function(a){a()})})).observe(r,{attributes:!0});var A=d.setImmediate;d.setImmediate=function(d){15<Date.now()-b?(b=Date.now(),A(d)):(a.push(d),1===a.length&&r.setAttribute("a",c=!c))}}d.nextTick=d.setImmediate}})();d.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};d.isArrayBuffer=function(a){return"undefined"!==typeof ArrayBuffer&&a instanceof ArrayBuffer};d.isArrayBufferView=function(a){return a&&
180
d.isArrayBuffer(a.buffer)&&void 0!==a.byteLength};d.ByteBuffer=c;d.ByteStringBuffer=c;d.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a;4096<this._constructedStringLength&&(this.data.substr(0,1),this._constructedStringLength=0)};d.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};d.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()};d.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))};
181
d.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);this.data=c;this._optimizeConstructedString(b);return this};d.ByteStringBuffer.prototype.putBytes=function(a){this.data+=a;this._optimizeConstructedString(a.length);return this};d.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(d.encodeUtf8(a))};d.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&
182
255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255))};d.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(a&255)+String.fromCharCode(a>>
@@ -187,9 +187,9 @@ function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+
187
function(a){var b=this.getInt(a);a=2<<a-2;b>=a&&(b-=a<<1);return b};d.ByteStringBuffer.prototype.getBytes=function(a){var b;a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear());return b};d.ByteStringBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+
188
a)};d.ByteStringBuffer.prototype.setAt=function(a,b){this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1);return this};d.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};d.ByteStringBuffer.prototype.copy=function(){var a=d.createBuffer(this.data);a.read=this.read;return a};d.ByteStringBuffer.prototype.compact=function(){0<this.read&&(this.data=this.data.slice(this.read),this.read=0);return this};d.ByteStringBuffer.prototype.clear=
189
function(){this.data="";this.read=0;return this};d.ByteStringBuffer.prototype.truncate=function(a){a=Math.max(0,this.length()-a);this.data=this.data.substr(this.read,a);this.read=0;return this};d.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.ByteStringBuffer.prototype.toString=function(){return d.decodeUtf8(this.bytes())};d.DataBuffer=function(a,b){b=b||{};this.read=b.readOffset||
190
-0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),q=d.isArrayBufferView(a);c||q?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
190
+0;this.growSize=b.growSize||1024;var c=d.isArrayBuffer(a),r=d.isArrayBufferView(a);c||r?(this.data=c?new DataView(a):new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength):(this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!==a&&void 0!==a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset))};d.DataBuffer.prototype.length=function(){return this.write-this.read};d.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()};
191
d.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);d.set(c);this.data=new DataView(d.buffer);return this};d.DataBuffer.prototype.putByte=function(a){this.accommodate(1);this.data.setUint8(this.write++,a);return this};d.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);
192
-return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),q=c.byteLength-c.byteOffset;this.accommodate(q);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=q;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
192
+return this};d.DataBuffer.prototype.putBytes=function(a,b){if(d.isArrayBufferView(a)){var c=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),r=c.byteLength-c.byteOffset;this.accommodate(r);var A=new Uint8Array(this.data.buffer,this.write);A.set(c);this.write+=r;return this}if(d.isArrayBuffer(a))return c=new Uint8Array(a),this.accommodate(c.byteLength),A=new Uint8Array(this.data.buffer),A.set(c,this.write),this.write+=c.byteLength,this;if(a instanceof d.DataBuffer||"object"===typeof a&&"number"===
193
typeof a.read&&"number"===typeof a.write&&d.isArrayBufferView(a.data))return c=new Uint8Array(a.data.byteLength,a.read,a.length()),this.accommodate(c.byteLength),A=new Uint8Array(a.data.byteLength,this.write),A.set(c),this.write+=c.byteLength,this;a instanceof d.ByteStringBuffer&&(a=a.data,b="binary");b=b||"binary";if("string"===typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.hex.decode(a,c,this.write),this;if("base64"===
194
b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.base64.decode(a,c,this.write),this;"utf8"===b&&(a=d.encodeUtf8(a),b="binary");if("binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=d.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=d.text.utf16.encode(c),this;throw Error("Invalid encoding: "+
195
b);}throw Error("Invalid parameter: "+a);};d.DataBuffer.prototype.putBuffer=function(a){this.putBytes(a);a.clear();return this};d.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")};d.DataBuffer.prototype.putInt16=function(a){this.accommodate(2);this.data.setInt16(this.write,a);this.write+=2;return this};d.DataBuffer.prototype.putInt24=function(a){this.accommodate(3);this.data.setInt16(this.write,a>>8&65535);this.data.setInt8(this.write,a>>16&255);this.write+=3;return this};
@@ -200,69 +200,69 @@ this.data.getInt32(this.read,!0);this.read+=4;return a};d.DataBuffer.prototype.g
200
d.DataBuffer.prototype.bytes=function(a){return"undefined"===typeof a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)};d.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)};d.DataBuffer.prototype.setAt=function(a,b){this.data.setUint8(a,b);return this};d.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};d.DataBuffer.prototype.copy=function(){return new d.DataBuffer(this)};d.DataBuffer.prototype.compact=function(){if(0<this.read){var a=
201
new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a);this.data=new DataView(b);this.write-=this.read;this.read=0}return this};d.DataBuffer.prototype.clear=function(){this.data=new DataView(new ArrayBuffer(0));this.read=this.write=0;return this};d.DataBuffer.prototype.truncate=function(a){this.write=Math.max(0,this.length()-a);this.read=Math.min(this.read,this.write);return this};d.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=
202
this.data.getUint8(b);16>c&&(a+="0");a+=c.toString(16)}return a};d.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());a=a||"utf8";if("binary"===a||"raw"===a)return d.binary.raw.encode(b);if("hex"===a)return d.binary.hex.encode(b);if("base64"===a)return d.binary.base64.encode(b);if("utf8"===a)return d.text.utf8.decode(b);if("utf16"===a)return d.text.utf16.decode(b);throw Error("Invalid encoding: "+a);};d.createBuffer=function(a,b){void 0!==a&&"utf8"===
203
-(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",q="",h="",e=0,g=0;0<c;--c,++e)q=a.charCodeAt(e)^b.charCodeAt(e),10<=g&&(d+=h,h="",g=0),h+=String.fromCharCode(q),++g;return d+h};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
204
-function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",q,h,e,g=0;g<a.length;)q=
205
-a.charCodeAt(g++),h=a.charCodeAt(g++),e=a.charCodeAt(g++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(q>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((q&3)<<4|h>>4),isNaN(h)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((h&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
206
-c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,q,h,g=0;g<a.length;)c=e[a.charCodeAt(g++)-43],d=e[a.charCodeAt(g++)-43],q=e[a.charCodeAt(g++)-43],h=e[a.charCodeAt(g++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==q&&(b+=String.fromCharCode((d&15)<<4|q>>2),64!==h&&(b+=String.fromCharCode((q&3)<<6|h)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
207
-d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var q=c=c||0,h=0;h<a.length;++h)d[q++]=a.charCodeAt(h);return b?q-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var q=0,h=c;a.length&1&&(q=1,d[h++]=parseInt(a[0],16));for(;q<a.length;q+=2)d[h++]=parseInt(a.substr(q,2),16);return b?h-c:d};d.binary.base64.encode=
208
-function(a,b){for(var c="",d="",q,h,g,e=0;e<a.byteLength;)q=a[e++],h=a[e++],g=a[e++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(q>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((q&3)<<4|h>>4),isNaN(h)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((h&15)<<2|g>>6),c+=isNaN(g)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(g&63)),b&&c.length>b&&(d+=c.substr(0,
209
-b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var q,h,g,n,m=0,v=c;m<a.length;)q=e[a.charCodeAt(m++)-43],h=e[a.charCodeAt(m++)-43],g=e[a.charCodeAt(m++)-43],n=e[a.charCodeAt(m++)-43],d[v++]=q<<2|h>>4,64!==g&&(d[v++]=(h&15)<<4|g>>2,64!==n&&(d[v++]=(g&3)<<6|n));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
210
-var q=b;q||(q=new Uint8Array(a.length));for(var A=c=c||0,h=0;h<a.length;++h)q[A++]=a.charCodeAt(h);return b?A-c:q};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var q=new Uint16Array(d.buffer),h=c=c||0,g=c,e=0;e<a.length;++e)q[g++]=a.charCodeAt(e),h+=2;return b?h-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
203
+(b||"raw")&&(a=d.encodeUtf8(a));return new d.ByteBuffer(a)};d.fillString=function(a,b){for(var c="";0<b;)b&1&&(c+=a),b>>>=1,0<b&&(a+=a);return c};d.xorBytes=function(a,b,c){for(var d="",r="",g="",e=0,h=0;0<c;--c,++e)r=a.charCodeAt(e)^b.charCodeAt(e),10<=h&&(d+=g,g="",h=0),g+=String.fromCharCode(r),++h;return d+g};d.hexToBytes=function(a){var b="",c=0;a.length&1&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));for(;c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b};d.bytesToHex=
204
+function(a){return d.createBuffer(a).toHex()};d.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(a&255)};var e=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];d.encode64=function(a,b){for(var c="",d="",r,g,e,h=0;h<a.length;)r=
205
+a.charCodeAt(h++),g=a.charCodeAt(h++),e=a.charCodeAt(h++),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+
206
+c};d.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b="",c,d,r,g,h=0;h<a.length;)c=e[a.charCodeAt(h++)-43],d=e[a.charCodeAt(h++)-43],r=e[a.charCodeAt(h++)-43],g=e[a.charCodeAt(h++)-43],b+=String.fromCharCode(c<<2|d>>4),64!==r&&(b+=String.fromCharCode((d&15)<<4|r>>2),64!==g&&(b+=String.fromCharCode((r&3)<<6|g)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};
207
+d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var r=c=c||0,g=0;g<a.length;++g)d[r++]=a.charCodeAt(g);return b?r-c:d};d.binary.hex.encode=d.bytesToHex;d.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));c=c||0;var r=0,g=c;a.length&1&&(r=1,d[g++]=parseInt(a[0],16));for(;r<a.length;r+=2)d[g++]=parseInt(a.substr(r,2),16);return b?g-c:d};d.binary.base64.encode=
208
+function(a,b){for(var c="",d="",r,g,e,h=0;h<a.byteLength;)r=a[h++],g=a[h++],e=a[h++],c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(r>>2),c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((r&3)<<4|g>>4),isNaN(g)?c+="==":(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt((g&15)<<2|e>>6),c+=isNaN(e)?"=":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e&63)),b&&c.length>b&&(d+=c.substr(0,
209
+b)+"\r\n",c=c.substr(b));return d+c};d.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var r,g,h,m,n=0,v=c;n<a.length;)r=e[a.charCodeAt(n++)-43],g=e[a.charCodeAt(n++)-43],h=e[a.charCodeAt(n++)-43],m=e[a.charCodeAt(n++)-43],d[v++]=r<<2|g>>4,64!==h&&(d[v++]=(g&15)<<4|h>>2,64!==m&&(d[v++]=(h&3)<<6|m));return b?v-c:d.subarray(0,v)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);
210
+var r=b;r||(r=new Uint8Array(a.length));for(var A=c=c||0,g=0;g<a.length;++g)r[A++]=a.charCodeAt(g);return b?A-c:r};d.text.utf8.decode=function(a){return d.decodeUtf8(String.fromCharCode.apply(null,a))};d.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var r=new Uint16Array(d.buffer),g=c=c||0,e=c,h=0;h<a.length;++h)r[e++]=a.charCodeAt(h),g+=2;return b?g-c:d};d.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))};d.deflate=function(a,
211
b,c){b=d.decode64(a.deflate(d.encode64(b)).rval);c&&(a=2,b.charCodeAt(1)&32&&(a=6),b=b.substring(a,b.length-4));return b};d.inflate=function(a,b,c){a=a.inflate(d.encode64(b)).rval;return null===a?null:d.decode64(a)};var x=function(a,b,c){if(!a)throw Error("WebStorage not available.");null===c?a=a.removeItem(b):(c=d.encode64(JSON.stringify(c)),a=a.setItem(b,c));if("undefined"!==typeof a&&!0!==a.rval)throw b=Error(a.error.message),b.id=a.error.id,b.name=a.error.name,b;},k=function(a,b){if(!a)throw Error("WebStorage not available.");
212
-var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var q=Error(c.error.message);q.id=c.error.id;q.name=c.error.name;throw q;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},n=function(a,b,c,d){var q=k(a,b);null===q&&(q={});q[c]=d;x(a,b,q)},g=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},h=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var q in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},J=function(a,b,
213
-c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var q,h=!1,g=null,e;for(e in c){q=c[e];try{if("flash"===q||"both"===q){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);h="flash"===q}if("web"===q||"both"===q)b[0]=localStorage,d=a.apply(this,b),h=!0}catch(n){g=n}if(h)break}if(!h)throw g;return d};d.setItem=function(a,b,c,d,q){J(n,arguments,q)};d.getItem=function(a,b,c,d){return J(g,arguments,d)};d.removeItem=function(a,b,c,d){J(h,arguments,d)};d.clearItems=
214
-function(a,b,c){J(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
215
-{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),q;0<d?(q=a[c].substring(0,d),d=a[c].substring(d+1)):(q=a[c],d=null);q in b||(b[q]=[]);q in Object.prototype||null===d||b[q].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",q=a.indexOf("?");0<q&&(b=a.substring(0,q),c=a.substring(q+1));a=b.split("/");
216
-0<a.length&&""===a[0]&&a.shift();q=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:q}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
217
-b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,q=b.length;d<q;){var h=b[d++];if(d==q)a[h]=c;else{var g=h in a;if(!g||g&&"object"!==typeof a[h]||g&&null===a[h])a[h]={};a=a[h]}}};d.getPath=function(a,b,c){for(var d=0,q=b.length,h=!0;h&&d<q&&"object"===typeof a&&null!==a;){var g=b[d++];(h=g in a)&&(a=a[g])}return h?a:c};d.deletePath=function(a,b){if("object"===
218
-typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var q=b[c++];if(c==d)delete a[q];else{if(!(q in a)||"object"!==typeof a[q]||null===a[q])break;a=a[q]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,q=0,h=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&h.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":q<arguments.length?h.push(arguments[q++ +1]):h.push("<?>");break;case "%":h.push("%");break;default:h.push("<#"+
219
-c+"?>")}h.push(a.substring(d));return h.join("")};d.formatNumber=function(a,b,c,d){var q=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var h=parseInt(a=Math.abs(+a||0).toFixed(q),10)+"",g=3<h.length?h.length%3:0;return c+(g?h.substr(0,g)+d:"")+h.substr(g).replace(/(\d{3})(?=\d)/g,"$1"+d)+(q?b+Math.abs(a-h).toFixed(q).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
220
-" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var q=parseInt(a[c],10);if(isNaN(q))return null;b.putByte(q)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
221
-2*(8-a.length+b),q=d.createBuffer(),h=0;8>h;++h)if(a[h]&&0!==a[h].length){var g=d.hexToBytes(a[h]);2>g.length&&q.putByte(0);q.putBytes(g)}else q.fillWithByte(0,c),c=0;return q.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],q=0,h=0;h<a.length;h+=
222
-2){for(var g=d.bytesToHex(a[h]+a[h+1]);"0"===g[0]&&"0"!==g;)g=g.substr(1);if("0"===g){var e=c[c.length-1],n=b.length;e&&n===e.end+1?(e.end=n,e.end-e.start>c[q].end-c[q].start&&(q=c.length-1)):c.push({start:n,end:n})}b.push(g)}0<c.length&&(a=c[q],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,e,n){if(0===e){var m=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
223
-Math.max(1,m);URL.revokeObjectURL(g);return b(null,d.cores)}q(n,function(b,d){a.push(h(n,d));c(a,e-1,n)})}function q(a,b){for(var c=[],d=[],h=0;h<a;++h){var A=new Worker(g);A.addEventListener("message",function(q){d.push(q.data);if(d.length===a){for(q=0;q<a;++q)c[q].terminate();b(null,d)}});c.push(A)}for(h=0;h<a;++h)c[h].postMessage(h)}function h(a,b){for(var c=[],d=0;d<a;++d)for(var q=b[d],A=c[d]=[],g=0;g<a;++g)if(d!==g){var e=b[g];(q.st>e.st&&q.st<e.et||e.st>q.st&&e.st<q.et)&&A.push(g)}return c.reduce(function(a,
224
-b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var g=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
225
-Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var m=0;m<e.length;++m)e[m](c);
226
-return c.util}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
212
+var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var r=Error(c.error.message);r.id=c.error.id;r.name=c.error.name;throw r;}c=null}else c=c.rval;null!==c&&(c=JSON.parse(d.decode64(c)));return c},m=function(a,b,c,d){var r=k(a,b);null===r&&(r={});r[c]=d;x(a,b,r)},h=function(a,b,c){a=k(a,b);null!==a&&(a=c in a?a[c]:null);return a},g=function(a,b,c){var d=k(a,b);if(null!==d&&c in d){delete d[c];c=!0;for(var r in d){c=!1;break}c&&(d=null);x(a,b,d)}},v=function(a,b){x(a,b,null)},F=function(a,b,
213
+c){var d=null;"undefined"===typeof c&&(c=["web","flash"]);var r,g=!1,e=null,h;for(h in c){r=c[h];try{if("flash"===r||"both"===r){if(null===b[0])throw Error("Flash local storage not available.");d=a.apply(this,b);g="flash"===r}if("web"===r||"both"===r)b[0]=localStorage,d=a.apply(this,b),g=!0}catch(m){e=m}if(g)break}if(!g)throw e;return d};d.setItem=function(a,b,c,d,r){F(m,arguments,r)};d.getItem=function(a,b,c,d){return F(h,arguments,d)};d.removeItem=function(a,b,c,d){F(g,arguments,d)};d.clearItems=
214
+function(a,b,c){F(v,arguments,c)};d.parseUrl=function(a){var b=/^(https?):\/\/([^:&^\/]*):?(\d*)(.*)$/g;b.lastIndex=0;b=b.exec(a);if(a=null===b?null:{full:a,scheme:b[1],host:b[2],port:b[3],path:b[4]})a.fullHost=a.host,a.port?80!==a.port&&"http"===a.scheme?a.fullHost+=":"+a.port:443!==a.port&&"https"===a.scheme&&(a.fullHost+=":"+a.port):"http"===a.scheme?a.port=80:"https"===a.scheme&&(a.port=443),a.full=a.scheme+"://"+a.fullHost;return a};var D=null;d.getQueryVariables=function(a){var b=function(a){var b=
215
+{};a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),r;0<d?(r=a[c].substring(0,d),d=a[c].substring(d+1)):(r=a[c],d=null);r in b||(b[r]=[]);r in Object.prototype||null===d||b[r].push(unescape(d))}return b};"undefined"===typeof a?(null===D&&(D="undefined"!==typeof window&&window.location&&window.location.search?b(window.location.search.substring(1)):{}),a=D):a=b(a);return a};d.parseFragment=function(a){var b=a,c="",r=a.indexOf("?");0<r&&(b=a.substring(0,r),c=a.substring(r+1));a=b.split("/");
216
+0<a.length&&""===a[0]&&a.shift();r=""===c?{}:d.getQueryVariables(c);return{pathString:b,queryString:c,path:a,query:r}};d.makeRequest=function(a){var b=d.parseFragment(a),c={path:b.pathString,query:b.queryString,getPath:function(a){return"undefined"===typeof a?b.path:b.path[a]},getQuery:function(a,c){var d;"undefined"===typeof a?d=b.query:(d=b.query[a])&&"undefined"!==typeof c&&(d=d[c]);return d},getQueryLast:function(a,b){var d=c.getQuery(a);return d?d[d.length-1]:b}};return c};d.makeLink=function(a,
217
+b,c){a=jQuery.isArray(a)?a.join("/"):a;b=jQuery.param(b||{});c=c||"";return a+(0<b.length?"?"+b:"")+(0<c.length?"#"+c:"")};d.setPath=function(a,b,c){if("object"===typeof a&&null!==a)for(var d=0,r=b.length;d<r;){var g=b[d++];if(d==r)a[g]=c;else{var e=g in a;if(!e||e&&"object"!==typeof a[g]||e&&null===a[g])a[g]={};a=a[g]}}};d.getPath=function(a,b,c){for(var d=0,r=b.length,g=!0;g&&d<r&&"object"===typeof a&&null!==a;){var e=b[d++];(g=e in a)&&(a=a[e])}return g?a:c};d.deletePath=function(a,b){if("object"===
218
+typeof a&&null!==a)for(var c=0,d=b.length;c<d;){var r=b[c++];if(c==d)delete a[r];else{if(!(r in a)||"object"!==typeof a[r]||null===a[r])break;a=a[r]}}};d.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0};d.format=function(a){var b=/%./g,c,d,r=0,g=[];for(d=0;c=b.exec(a);)switch(d=a.substring(d,b.lastIndex-2),0<d.length&&g.push(d),d=b.lastIndex,c=c[0][1],c){case "s":case "o":r<arguments.length?g.push(arguments[r++ +1]):g.push("<?>");break;case "%":g.push("%");break;default:g.push("<#"+
219
+c+"?>")}g.push(a.substring(d));return g.join("")};d.formatNumber=function(a,b,c,d){var r=isNaN(b=Math.abs(b))?2:b;b=void 0===c?",":c;d=void 0===d?".":d;c=0>a?"-":"";var g=parseInt(a=Math.abs(+a||0).toFixed(r),10)+"",e=3<g.length?g.length%3:0;return c+(e?g.substr(0,e)+d:"")+g.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+d)+(r?b+Math.abs(a-g).toFixed(r).slice(2):"")};d.formatSize=function(a){return a=1073741824<=a?d.formatNumber(a/1073741824,2,".","")+" GiB":1048576<=a?d.formatNumber(a/1048576,2,".","")+
220
+" MiB":1024<=a?d.formatNumber(a/1024,0)+" KiB":d.formatNumber(a,0)+" bytes"};d.bytesFromIP=function(a){return-1!==a.indexOf(".")?d.bytesFromIPv4(a):-1!==a.indexOf(":")?d.bytesFromIPv6(a):null};d.bytesFromIPv4=function(a){a=a.split(".");if(4!==a.length)return null;for(var b=d.createBuffer(),c=0;c<a.length;++c){var r=parseInt(a[c],10);if(isNaN(r))return null;b.putByte(r)}return b.getBytes()};d.bytesFromIPv6=function(a){var b=0;a=a.split(":").filter(function(a){0===a.length&&++b;return!0});for(var c=
221
+2*(8-a.length+b),r=d.createBuffer(),g=0;8>g;++g)if(a[g]&&0!==a[g].length){var e=d.hexToBytes(a[g]);2>e.length&&r.putByte(0);r.putBytes(e)}else r.fillWithByte(0,c),c=0;return r.getBytes()};d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")};d.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],r=0,g=0;g<a.length;g+=
222
+2){for(var e=d.bytesToHex(a[g]+a[g+1]);"0"===e[0]&&"0"!==e;)e=e.substr(1);if("0"===e){var h=c[c.length-1],m=b.length;h&&m===h.end+1?(h.end=m,h.end-h.start>c[r].end-c[r].start&&(r=c.length-1)):c.push({start:m,end:m})}b.push(e)}0<c.length&&(a=c[r],0<a.end-a.start&&(b.splice(a.start,a.end-a.start+1,""),0===a.start&&b.unshift(""),7===a.end&&b.push("")));return b.join(":")};d.estimateCores=function(a,b){function c(a,h,m){if(0===h){var n=Math.floor(a.reduce(function(a,b){return a+b},0)/a.length);d.cores=
223
+Math.max(1,n);URL.revokeObjectURL(e);return b(null,d.cores)}r(m,function(b,d){a.push(g(m,d));c(a,h-1,m)})}function r(a,b){for(var c=[],d=[],g=0;g<a;++g){var A=new Worker(e);A.addEventListener("message",function(r){d.push(r.data);if(d.length===a){for(r=0;r<a;++r)c[r].terminate();b(null,d)}});c.push(A)}for(g=0;g<a;++g)c[g].postMessage(g)}function g(a,b){for(var c=[],d=0;d<a;++d)for(var r=b[d],A=c[d]=[],e=0;e<a;++e)if(d!==e){var h=b[e];(r.st>h.st&&r.st<h.et||h.st>r.st&&h.st<r.et)&&A.push(e)}return c.reduce(function(a,
224
+b){return Math.max(a,b.length)},0)}"function"===typeof a&&(b=a,a={});a=a||{};if("cores"in d&&!a.update)return b(null,d.cores);if("undefined"!==typeof navigator&&"hardwareConcurrency"in navigator&&0<navigator.hardwareConcurrency)return d.cores=navigator.hardwareConcurrency,b(null,d.cores);if("undefined"===typeof Worker)return d.cores=1,b(null,d.cores);if("undefined"===typeof Blob)return d.cores=2,b(null,d.cores);var e=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(a){a=
225
+Date.now();for(var b=a+4;Date.now()<b;);self.postMessage({st:a,et:b})})}.toString(),")()"],{type:"application/javascript"}));c([],5,16)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.util)return c.util;c.defined.util=!0;for(var n=0;n<e.length;++n)e[n](c);
226
+return c.util}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/util",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.cipher=a.cipher||{};a.cipher.algorithms=a.cipher.algorithms||{};a.cipher.createCipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&
227
(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!1})};a.cipher.createDecipher=function(b,c){var d=b;"string"===typeof d&&(d=a.cipher.getAlgorithm(d))&&(d=d());if(!d)throw Error("Unsupported algorithm: "+b);return new a.cipher.BlockCipher({algorithm:d,key:c,decrypt:!0})};a.cipher.registerAlgorithm=function(b,c){b=b.toUpperCase();a.cipher.algorithms[b]=c};a.cipher.getAlgorithm=function(b){b=b.toUpperCase();return b in a.cipher.algorithms?
228
a.cipher.algorithms[b]:null};var c=a.cipher.BlockCipher=function(a){this.algorithm=a.algorithm;this.mode=this.algorithm.mode;this.blockSize=this.mode.blockSize;this._finish=!1;this.output=this._input=null;this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt;this._decrypt=a.decrypt;this.algorithm.initialize(a)};c.prototype.start=function(b){b=b||{};var c={},d;for(d in b)c[d]=b[d];c.decrypt=this._decrypt;this._finish=!1;this._input=a.util.createBuffer();this.output=b.output||a.util.createBuffer();
229
this.mode.start(c)};c.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};c.prototype.finish=function(a){!a||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};b.decrypt=this._decrypt;b.overflow=this._input.length()%this.blockSize;if(!this._decrypt&&this.mode.pad&&
230
-!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
231
-c.defined.cipher=!0;for(var m=0;m<e.length;++m)e[m](c);return c.cipher}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
232
-4<b.length){var d=b;b=a.util.createBuffer();for(var g=0;g<d.length;++g)b.putByte(d[g])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
230
+!this.mode.pad(this._input,b))return!1;this._finish=!0;this.update();return this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,b)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,b)?!1:!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipher)return c.cipher;
231
+c.defined.cipher=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipher}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipher",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){"string"===typeof b&&(b=a.util.createBuffer(b));if(a.util.isArray(b)&&
232
+4<b.length){var d=b;b=a.util.createBuffer();for(var e=0;e<d.length;++e)b.putByte(d[e])}a.util.isArray(b)||(b=[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()]);return b}function d(a){a[a.length-1]=a[a.length-1]+1&4294967295}function e(a){return[a/4294967296|0,a&4294967295]}a.cipher=a.cipher||{};var x=a.cipher.modes=a.cipher.modes||{};x.ecb=function(a){a=a||{};this.name="ECB";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=
233
Array(this._ints)};x.ecb.prototype.start=function(a){};x.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,
234
this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c])};x.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.ecb.prototype.unpad=function(a,b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cbc=function(a){a=a||{};this.name="CBC";this.cipher=a.cipher;this.blockSize=a.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);
235
this._outBlock=Array(this._ints)};x.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=c(a.iv),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.");};x.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=this._prev[c]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._outBlock[c]);
236
this._prev=this._outBlock};x.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&0<a.length()))return!0;for(c=0;c<this._ints;++c)this._inBlock[c]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(c=0;c<this._ints;++c)b.putInt32(this._prev[c]^this._outBlock[c]);this._prev=this._inBlock.slice(0)};x.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();a.fillWithByte(c,c);return!0};x.cbc.prototype.unpad=function(a,
237
b){if(0<b.overflow)return!1;var c=a.length(),c=a.at(c-1);if(c>this.blockSize<<2)return!1;a.truncate(c);return!0};x.cfb=function(b){b=b||{};this.name="CFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=
238
-this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var q=0;q<this._ints;++q)this._inBlock[q]=a.getInt32()^this._outBlock[q],b.putInt32(this._inBlock[q]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(q=0;q<this._ints;++q)this._partialBlock[q]=a.getInt32()^this._outBlock[q],this._partialOutput.putInt32(this._partialBlock[q]);
239
-if(0<e)a.read-=this.blockSize;else for(q=0;q<this._ints;++q)this._inBlock[q]=this._partialBlock[q];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
240
-d>=this.blockSize)for(var q=0;q<this._ints;++q)this._inBlock[q]=a.getInt32(),b.putInt32(this._inBlock[q]^this._outBlock[q]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(q=0;q<this._ints;++q)this._partialBlock[q]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[q]^this._outBlock[q]);if(0<e)a.read-=this.blockSize;else for(q=0;q<this._ints;++q)this._inBlock[q]=this._partialBlock[q];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
238
+this._iv.slice(0);this._partialBytes=0};x.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32()^this._outBlock[r],b.putInt32(this._inBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32()^this._outBlock[r],this._partialOutput.putInt32(this._partialBlock[r]);
239
+if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&
240
+d>=this.blockSize)for(var r=0;r<this._ints;++r)this._inBlock[r]=a.getInt32(),b.putInt32(this._inBlock[r]^this._outBlock[r]);else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialBlock[r]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[r]^this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._partialBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);
241
if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb=function(b){b=b||{};this.name="OFB";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");
242
-this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var q=0;q<this._ints;++q)b.putInt32(a.getInt32()^this._outBlock[q]),this._inBlock[q]=this._outBlock[q];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(q=0;q<this._ints;++q)this._partialOutput.putInt32(a.getInt32()^
243
-this._outBlock[q]);if(0<e)a.read-=this.blockSize;else for(q=0;q<this._ints;++q)this._inBlock[q]=this._outBlock[q];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
244
-b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var q=a.length();if(0===q)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&q>=this.blockSize)for(var e=0;e<
245
-this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var m=(this.blockSize-q)%this.blockSize;0<m&&(m=this.blockSize-m);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<m&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<m&&!c)return b.putBytes(this._partialOutput.getBytes(m-this._partialBytes)),this._partialBytes=m,!0;b.putBytes(this._partialOutput.getBytes(q-this._partialBytes));
246
-this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var g;
247
-g="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
248
-this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;g=a.util.createBuffer(g);this._aDataLength=e(8*g.length());(c=g.length()%this.blockSize)&&g.fillWithByte(0,this.blockSize-c);
249
-for(this._s=[0,0,0,0];0<g.length();)this._s=this.ghash(this._hashSubkey,this._s,[g.getInt32(),g.getInt32(),g.getInt32(),g.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var q=a.length();if(0===q)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&q>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var m=(this.blockSize-q)%this.blockSize;0<m&&(m=this.blockSize-m);this._partialOutput.clear();
250
-for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===m||c){c?(e=q%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<m&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(m-this._partialBytes)),
251
-this._partialBytes=m,!0;b.putBytes(this._partialOutput.getBytes(q-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var q=a.length();if(q<this.blockSize&&!(c&&0<q))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
252
-this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=q<this.blockSize?this._cipherLength+q%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var h=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,h);h=[];this.cipher.encrypt(this._j0,h);for(var m=0;m<
253
-this._ints;++m)this.tag.putInt32(this._s[m]^h[m]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),q=0;128>q;++q)a[q/32|0]&1<<31-q%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
254
-[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,q=Array(c),e=0;e<c;++e){var m=[0,0,0,0];m[e/d|0]=1<<b-1<<(d-1-e%d)*b;q[e]=this.generateSubHashTable(this.multiply(m,a),b)}return q};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
255
-d=c>>>1,q=Array(c);q[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(q[2*e],q[e]=[]),e>>=1;for(e=2;e<d;){for(var m=1;m<e;++m){var l=q[e],x=q[m];q[e+m]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}q[0]=[0,0,0,0];for(e=d+1;e<c;++e)m=q[e^d],q[e]=[a[0]^m[0],a[1]^m[1],a[2]^m[2],a[3]^m[3]];return q}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=
256
-r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var m=0;m<e.length;++m)e[m](c);return c.cipherModes}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
257
-0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){n=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;h=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,q=0,e,g,m,l,u,b=0;256>b;++b){l=q^q<<1^q<<2^q<<3^q<<4;l=l>>8^l&255^99;h[c]=l;v[l]=c;u=a[l];e=a[c];g=a[e];m=a[g];u^=u<<24^l<<16^l<<8^l;g=(e^g^m)<<24^(c^
258
-m)<<16^(c^g^m)<<8^c^e^m;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=g,u=u<<24|u>>>8,g=g<<24|g>>>8;0===c?c=q=1:(c=e^a[a[a[e^m]]],q^=a[a[q]])}}function e(a,b){for(var c=a.slice(0),d,q=1,m=c.length,n=g*(m+6+1),l=m;l<n;++l)d=c[l-1],0===l%m?(d=h[d>>>16&255]<<24^h[d>>>8&255]<<16^h[d&255]<<8^h[d>>>24]^p[q]<<24,q++):6<m&&4===l%m&&(d=h[d>>>24]<<24^h[d>>>16&255]<<16^h[d>>>8&255]<<8^h[d&255]),c[l]=c[l-m]^d;if(b){for(var q=y[0],m=y[1],v=y[2],x=y[3],k=c.slice(0),n=c.length,l=0,w=n-g;l<n;l+=g,w-=g)if(0===l||l===n-g)k[l]=
259
-c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<g;++D)d=c[w+D],k[l+(3&-D)]=q[h[d>>>24]]^m[h[d>>>16&255]]^v[h[d>>>8&255]]^x[h[d&255]];c=k}return c}function x(a,b,c,d){var q=a.length/4-1,e,m,g,n,l;d?(e=y[0],m=y[1],g=y[2],n=y[3],l=v):(e=D[0],m=D[1],g=D[2],n=D[3],l=h);var x,k,w,L,B,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var J=3,r=1;r<q;++r)L=e[x>>>24]^m[k>>>16&255]^g[w>>>8&255]^n[b&255]^a[++J],B=e[k>>>24]^m[w>>>16&255]^g[b>>>8&255]^n[x&255]^a[++J],p=e[w>>>24]^
260
-m[b>>>16&255]^g[x>>>8&255]^n[k&255]^a[++J],b=e[b>>>24]^m[x>>>16&255]^g[k>>>8&255]^n[w&255]^a[++J],x=L,k=B,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++J];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++J];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++J];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++J]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
261
-a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var h=null;c instanceof a.util.ByteBuffer&&(h=c,c={});c=c||{};c.output=h;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
262
-function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){n||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
263
-c;for(var c=a.util.createBuffer(),h=0;h<d.length;++h)c.putByte(d[h])}if(!a.util.isArray(c)){d=c;var c=[],m=d.length();if(16===m||24===m||32===m)for(m>>>=2,h=0;h<m;++h)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){n||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
264
-a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var n=!1,g=4,h,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
265
-!0;for(var m=0;m<e.length;++m)e[m](c);return c.aes}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
242
+this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&d>=this.blockSize)for(var r=0;r<this._ints;++r)b.putInt32(a.getInt32()^this._outBlock[r]),this._inBlock[r]=this._outBlock[r];else{var e=(this.blockSize-d)%this.blockSize;0<e&&(e=this.blockSize-e);this._partialOutput.clear();for(r=0;r<this._ints;++r)this._partialOutput.putInt32(a.getInt32()^
243
+this._outBlock[r]);if(0<e)a.read-=this.blockSize;else for(r=0;r<this._ints;++r)this._inBlock[r]=this._outBlock[r];0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<e&&!c)return b.putBytes(this._partialOutput.getBytes(e-this._partialBytes)),this._partialBytes=e,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes));this._partialBytes=0}};x.ofb.prototype.decrypt=x.ofb.prototype.encrypt;x.ctr=function(b){b=b||{};this.name="CTR";this.cipher=b.cipher;this.blockSize=
244
+b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=null;this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0};x.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=c(a.iv);this._inBlock=this._iv.slice(0);this._partialBytes=0};x.ctr.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize)for(var e=0;e<
245
+this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);0<n&&(a.read-=this.blockSize);0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));
246
+this._partialBytes=0}d(this._inBlock)};x.ctr.prototype.decrypt=x.ctr.prototype.encrypt;x.gcm=function(b){b=b||{};this.name="GCM";this.cipher=b.cipher;this.blockSize=b.blockSize||16;this._ints=this.blockSize/4;this._inBlock=Array(this._ints);this._outBlock=Array(this._ints);this._partialOutput=a.util.createBuffer();this._partialBytes=0;this._R=3774873600};x.gcm.prototype.start=function(b){if(!("iv"in b))throw Error("Invalid IV parameter.");var c=a.util.createBuffer(b.iv);this._cipherLength=0;var h;
247
+h="additionalData"in b?a.util.createBuffer(b.additionalData):a.util.createBuffer();this._tagLength="tagLength"in b?b.tagLength:128;this._tag=null;if(b.decrypt&&(this._tag=a.util.createBuffer(b.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints);this.tag=null;this._hashSubkey=Array(this._ints);this.cipher.encrypt([0,0,0,0],this._hashSubkey);this.componentBits=4;this._m=this.generateHashTable(this._hashSubkey,
248
+this.componentBits);b=c.length();if(12===b)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];0<c.length();)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(e(8*b)))}this._inBlock=this._j0.slice(0);d(this._inBlock);this._partialBytes=0;h=a.util.createBuffer(h);this._aDataLength=e(8*h.length());(c=h.length()%this.blockSize)&&h.fillWithByte(0,this.blockSize-c);
249
+for(this._s=[0,0,0,0];0<h.length();)this._s=this.ghash(this._hashSubkey,this._s,[h.getInt32(),h.getInt32(),h.getInt32(),h.getInt32()])};x.gcm.prototype.encrypt=function(a,b,c){var r=a.length();if(0===r)return!0;this.cipher.encrypt(this._inBlock,this._outBlock);if(0===this._partialBytes&&r>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var n=(this.blockSize-r)%this.blockSize;0<n&&(n=this.blockSize-n);this._partialOutput.clear();
250
+for(e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(0===n||c){c?(e=r%this.blockSize,this._cipherLength+=e,this._partialOutput.truncate(this.blockSize-e)):this._cipherLength+=this.blockSize;for(e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}0<this._partialBytes&&this._partialOutput.getBytes(this._partialBytes);if(0<n&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),
251
+this._partialBytes=n,!0;b.putBytes(this._partialOutput.getBytes(r-this._partialBytes));this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock);d(this._inBlock)};x.gcm.prototype.decrypt=function(a,b,c){var r=a.length();if(r<this.blockSize&&!(c&&0<r))return!0;this.cipher.encrypt(this._inBlock,this._outBlock);d(this._inBlock);this._hashBlock[0]=a.getInt32();this._hashBlock[1]=a.getInt32();this._hashBlock[2]=a.getInt32();this._hashBlock[3]=a.getInt32();this._s=this.ghash(this._hashSubkey,
252
+this._s,this._hashBlock);for(a=0;a<this._ints;++a)b.putInt32(this._outBlock[a]^this._hashBlock[a]);this._cipherLength=r<this.blockSize?this._cipherLength+r%this.blockSize:this._cipherLength+this.blockSize};x.gcm.prototype.afterFinish=function(b,c){var d=!0;c.decrypt&&c.overflow&&b.truncate(this.blockSize-c.overflow);this.tag=a.util.createBuffer();var g=this._aDataLength.concat(e(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,g);g=[];this.cipher.encrypt(this._j0,g);for(var n=0;n<
253
+this._ints;++n)this.tag.putInt32(this._s[n]^g[n]);this.tag.truncate(this.tag.length()%(this._tagLength/8));c.decrypt&&this.tag.bytes()!==this._tag&&(d=!1);return d};x.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),r=0;128>r;++r)a[r/32|0]&1<<31-r%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c};x.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0<d;--d)b[d]=a[d]>>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};x.gcm.prototype.tableMultiply=function(a){for(var b=
254
+[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};x.gcm.prototype.ghash=function(a,b,c){b[0]^=c[0];b[1]^=c[1];b[2]^=c[2];b[3]^=c[3];return this.tableMultiply(b)};x.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,r=Array(c),e=0;e<c;++e){var n=[0,0,0,0];n[e/d|0]=1<<b-1<<(d-1-e%d)*b;r[e]=this.generateSubHashTable(this.multiply(n,a),b)}return r};x.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,
255
+d=c>>>1,r=Array(c);r[d]=a.slice(0);for(var e=d>>>1;0<e;)this.pow(r[2*e],r[e]=[]),e>>=1;for(e=2;e<d;){for(var n=1;n<e;++n){var l=r[e],x=r[n];r[e+n]=[l[0]^x[0],l[1]^x[1],l[2]^x[2],l[3]^x[3]]}e*=2}r[0]=[0,0,0,0];for(e=d+1;e<c;++e)n=r[e^d],r[e]=[a[0]^n[0],a[1]^n[1],a[2]^n[2],a[3]^n[3]];return r}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=
256
+q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.cipherModes)return c.cipherModes;c.defined.cipherModes=!0;for(var n=0;n<e.length;++n)e[n](c);return c.cipherModes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/cipherModes",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,
257
+0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,d)})}function d(){m=!0;p=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;g=Array(256);v=Array(256);D=Array(4);y=Array(4);for(b=0;4>b;++b)D[b]=Array(256),y[b]=Array(256);for(var c=0,r=0,e,n,h,l,u,b=0;256>b;++b){l=r^r<<1^r<<2^r<<3^r<<4;l=l>>8^l&255^99;g[c]=l;v[l]=c;u=a[l];e=a[c];n=a[e];h=a[n];u^=u<<24^l<<16^l<<8^l;n=(e^n^h)<<24^(c^
258
+h)<<16^(c^n^h)<<8^c^e^h;for(var x=0;4>x;++x)D[x][c]=u,y[x][l]=n,u=u<<24|u>>>8,n=n<<24|n>>>8;0===c?c=r=1:(c=e^a[a[a[e^h]]],r^=a[a[r]])}}function e(a,b){for(var c=a.slice(0),d,r=1,n=c.length,m=h*(n+6+1),l=n;l<m;++l)d=c[l-1],0===l%n?(d=g[d>>>16&255]<<24^g[d>>>8&255]<<16^g[d&255]<<8^g[d>>>24]^p[r]<<24,r++):6<n&&4===l%n&&(d=g[d>>>24]<<24^g[d>>>16&255]<<16^g[d>>>8&255]<<8^g[d&255]),c[l]=c[l-n]^d;if(b){for(var r=y[0],n=y[1],v=y[2],x=y[3],k=c.slice(0),m=c.length,l=0,w=m-h;l<m;l+=h,w-=h)if(0===l||l===m-h)k[l]=
259
+c[w],k[l+1]=c[w+3],k[l+2]=c[w+2],k[l+3]=c[w+1];else for(var D=0;D<h;++D)d=c[w+D],k[l+(3&-D)]=r[g[d>>>24]]^n[g[d>>>16&255]]^v[g[d>>>8&255]]^x[g[d&255]];c=k}return c}function x(a,b,c,d){var r=a.length/4-1,e,n,h,m,l;d?(e=y[0],n=y[1],h=y[2],m=y[3],l=v):(e=D[0],n=D[1],h=D[2],m=D[3],l=g);var x,k,w,L,C,p;x=b[0]^a[0];k=b[d?3:1]^a[1];w=b[2]^a[2];b=b[d?1:3]^a[3];for(var q=3,F=1;F<r;++F)L=e[x>>>24]^n[k>>>16&255]^h[w>>>8&255]^m[b&255]^a[++q],C=e[k>>>24]^n[w>>>16&255]^h[b>>>8&255]^m[x&255]^a[++q],p=e[w>>>24]^
260
+n[b>>>16&255]^h[x>>>8&255]^m[k&255]^a[++q],b=e[b>>>24]^n[x>>>16&255]^h[k>>>8&255]^m[w&255]^a[++q],x=L,k=C,w=p;c[0]=l[x>>>24]<<24^l[k>>>16&255]<<16^l[w>>>8&255]<<8^l[b&255]^a[++q];c[d?3:1]=l[k>>>24]<<24^l[w>>>16&255]<<16^l[b>>>8&255]<<8^l[x&255]^a[++q];c[2]=l[w>>>24]<<24^l[b>>>16&255]<<16^l[x>>>8&255]<<8^l[k&255]^a[++q];c[d?1:3]=l[b>>>24]<<24^l[x>>>16&255]<<16^l[k>>>8&255]<<8^l[w&255]^a[++q]}function k(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):
261
+a.cipher.createCipher(c,b.key);var e=d.start;d.start=function(b,c){var g=null;c instanceof a.util.ByteBuffer&&(g=c,c={});c=c||{};c.output=g;c.iv=b;e.call(d,c)};return d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!1,mode:d});a.start(b);return a};a.aes.createEncryptionCipher=function(a,b){return k({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=k({key:a,output:c,decrypt:!0,mode:d});a.start(b);return a};a.aes.createDecryptionCipher=
262
+function(a,b){return k({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){m||d();var c=this;c.name=a;c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return x(c._w,a,b,!1)},decrypt:function(a,b){return x(c._w,a,b,!0)}}});c._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"===typeof c&&(16===c.length||24===c.length||32===c.length))c=a.util.createBuffer(c);else if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=
263
+c;for(var c=a.util.createBuffer(),g=0;g<d.length;++g)c.putByte(d[g])}if(!a.util.isArray(c)){d=c;var c=[],n=d.length();if(16===n||24===n||32===n)for(n>>>=2,g=0;g<n;++g)c.push(d.getInt32())}if(!a.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");d=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=e(c,b.decrypt&&!d);this._init=!0}};a.aes._expandKey=function(a,b){m||d();return e(a,b)};a.aes._updateBlock=x;c("AES-ECB",a.cipher.modes.ecb);c("AES-CBC",
264
+a.cipher.modes.cbc);c("AES-CFB",a.cipher.modes.cfb);c("AES-OFB",a.cipher.modes.ofb);c("AES-CTR",a.cipher.modes.ctr);c("AES-GCM",a.cipher.modes.gcm);var m=!1,h=4,g,v,p,D,y}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aes)return c.aes;c.defined.aes=
265
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.aes}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aes",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.pki=a.pki||{};a=a.pki.oids=a.oids=a.oids||{};a["1.2.840.113549.1.1.1"]="rsaEncryption";
266
a.rsaEncryption="1.2.840.113549.1.1.1";a["1.2.840.113549.1.1.4"]="md5WithRSAEncryption";a.md5WithRSAEncryption="1.2.840.113549.1.1.4";a["1.2.840.113549.1.1.5"]="sha1WithRSAEncryption";a.sha1WithRSAEncryption="1.2.840.113549.1.1.5";a["1.2.840.113549.1.1.7"]="RSAES-OAEP";a["RSAES-OAEP"]="1.2.840.113549.1.1.7";a["1.2.840.113549.1.1.8"]="mgf1";a.mgf1="1.2.840.113549.1.1.8";a["1.2.840.113549.1.1.9"]="pSpecified";a.pSpecified="1.2.840.113549.1.1.9";a["1.2.840.113549.1.1.10"]="RSASSA-PSS";a["RSASSA-PSS"]=
267
"1.2.840.113549.1.1.10";a["1.2.840.113549.1.1.11"]="sha256WithRSAEncryption";a.sha256WithRSAEncryption="1.2.840.113549.1.1.11";a["1.2.840.113549.1.1.12"]="sha384WithRSAEncryption";a.sha384WithRSAEncryption="1.2.840.113549.1.1.12";a["1.2.840.113549.1.1.13"]="sha512WithRSAEncryption";a.sha512WithRSAEncryption="1.2.840.113549.1.1.13";a["1.3.14.3.2.7"]="desCBC";a.desCBC="1.3.14.3.2.7";a["1.3.14.3.2.26"]="sha1";a.sha1="1.3.14.3.2.26";a["2.16.840.1.101.3.4.2.1"]="sha256";a.sha256="2.16.840.1.101.3.4.2.1";
268
a["2.16.840.1.101.3.4.2.2"]="sha384";a.sha384="2.16.840.1.101.3.4.2.2";a["2.16.840.1.101.3.4.2.3"]="sha512";a.sha512="2.16.840.1.101.3.4.2.3";a["1.2.840.113549.2.5"]="md5";a.md5="1.2.840.113549.2.5";a["1.2.840.113549.1.7.1"]="data";a.data="1.2.840.113549.1.7.1";a["1.2.840.113549.1.7.2"]="signedData";a.signedData="1.2.840.113549.1.7.2";a["1.2.840.113549.1.7.3"]="envelopedData";a.envelopedData="1.2.840.113549.1.7.3";a["1.2.840.113549.1.7.4"]="signedAndEnvelopedData";a.signedAndEnvelopedData="1.2.840.113549.1.7.4";
@@ -276,215 +276,215 @@ a["2.5.4.8"]="stateOrProvinceName";a.stateOrProvinceName="2.5.4.8";a["2.5.4.10"]
276
"subjectAltName";a["2.5.29.8"]="issuerAltName";a["2.5.29.9"]="subjectDirectoryAttributes";a["2.5.29.10"]="basicConstraints";a["2.5.29.11"]="nameConstraints";a["2.5.29.12"]="policyConstraints";a["2.5.29.13"]="basicConstraints";a["2.5.29.14"]="subjectKeyIdentifier";a.subjectKeyIdentifier="2.5.29.14";a["2.5.29.15"]="keyUsage";a.keyUsage="2.5.29.15";a["2.5.29.16"]="privateKeyUsagePeriod";a["2.5.29.17"]="subjectAltName";a.subjectAltName="2.5.29.17";a["2.5.29.18"]="issuerAltName";a.issuerAltName="2.5.29.18";
277
a["2.5.29.19"]="basicConstraints";a.basicConstraints="2.5.29.19";a["2.5.29.20"]="cRLNumber";a["2.5.29.21"]="cRLReason";a["2.5.29.22"]="expirationDate";a["2.5.29.23"]="instructionCode";a["2.5.29.24"]="invalidityDate";a["2.5.29.25"]="cRLDistributionPoints";a["2.5.29.26"]="issuingDistributionPoint";a["2.5.29.27"]="deltaCRLIndicator";a["2.5.29.28"]="issuingDistributionPoint";a["2.5.29.29"]="certificateIssuer";a["2.5.29.30"]="nameConstraints";a["2.5.29.31"]="cRLDistributionPoints";a["2.5.29.32"]="certificatePolicies";
278
a["2.5.29.33"]="policyMappings";a["2.5.29.34"]="policyConstraints";a["2.5.29.35"]="authorityKeyIdentifier";a["2.5.29.36"]="policyConstraints";a["2.5.29.37"]="extKeyUsage";a.extKeyUsage="2.5.29.37";a["2.5.29.46"]="freshestCRL";a["2.5.29.54"]="inhibitAnyPolicy";a["1.3.6.1.5.5.7.3.1"]="serverAuth";a.serverAuth="1.3.6.1.5.5.7.3.1";a["1.3.6.1.5.5.7.3.2"]="clientAuth";a.clientAuth="1.3.6.1.5.5.7.3.2";a["1.3.6.1.5.5.7.3.3"]="codeSigning";a.codeSigning="1.3.6.1.5.5.7.3.3";a["1.3.6.1.5.5.7.3.4"]="emailProtection";
279
-a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var m=0;m<e.length;++m)e[m](c);return c.oids}},
280
-k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
281
-ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var h=[],l=0;l<e.length;++l)void 0!==e[l]&&h.push(e[l]);e=h}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
282
-"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var g=b.getByte(),l=g&192,h=g&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(g&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&h===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(g=b.getByte(),g&=192,g===c.Class.UNIVERSAL||g===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
283
-y))++y,--v}catch(C){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(h===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,h,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
284
-e=b.tagClass|b.type,g=a.util.createBuffer();if(b.composed){b.constructed?e|=32:g.putByte(0);for(var h=0;h<b.value.length;++h)void 0!==b.value[h]&&g.putBuffer(c.toDer(b.value[h]))}else if(b.type===c.Type.BMPSTRING)for(h=0;h<b.value.length;++h)g.putInt16(b.value.charCodeAt(h));else g.putBytes(b.value);d.putByte(e);if(127>=g.length())d.putByte(g.length()&127);else{h=g.length();b="";do b+=String.fromCharCode(h&255),h>>>=8;while(0<h);d.putByte(b.length|128);for(h=b.length-1;0<=h;--h)d.putByte(b.charCodeAt(h))}d.putBuffer(g);
285
-return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,h,l,m=2;m<b.length;++m){d=!0;e=[];h=parseInt(b[m],10);do l=h&127,h>>>=7,d||(l|=128),e.push(l),d=!1;while(0<h);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
286
-return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,q=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),m=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(m=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,q);b.setUTCHours(e,l,m,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
287
-a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,q=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),m=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
288
-10));z?(b.setUTCFullYear(c,d,q),b.setUTCHours(e,l,m,y),b.setTime(+b+k)):(b.setFullYear(c,d,q),b.setHours(e,l,m,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
279
+a.emailProtection="1.3.6.1.5.5.7.3.4";a["1.3.6.1.5.5.7.3.8"]="timeStamping";a.timeStamping="1.3.6.1.5.5.7.3.8"}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.oids)return c.oids;c.defined.oids=!0;for(var n=0;n<e.length;++n)e[n](c);return c.oids}},
280
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/oids",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1=a.asn1||{};c.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};c.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,
281
+ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};c.create=function(b,c,d,e){if(a.util.isArray(e)){for(var g=[],l=0;l<e.length;++l)void 0!==e[l]&&g.push(e[l]);e=g}return{tagClass:b,type:c,constructed:d,composed:d||a.util.isArray(e),value:e}};var d=c.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return b&128?a.getInt((b&127)<<3):b};c.fromDer=function(b,e){void 0===e&&(e=!0);
282
+"string"===typeof b&&(b=a.util.createBuffer(b));if(2>b.length()){var l=Error("Too few bytes to parse DER.");l.bytes=b.length();throw l;}var h=b.getByte(),l=h&192,g=h&31,v=d(b);if(b.length()<v){if(e)throw l=Error("Too few bytes to read ASN.1 value."),l.detail=b.length()+" < "+v,l;v=b.length()}var k,D=32===(h&32);k=D;if(!k&&l===c.Class.UNIVERSAL&&g===c.Type.BITSTRING&&1<v){var y=b.read;if(0===b.getByte()&&(h=b.getByte(),h&=192,h===c.Class.UNIVERSAL||h===c.Class.CONTEXT_SPECIFIC))try{if(k=d(b)===v-(b.read-
283
+y))++y,--v}catch(B){}b.read=y}if(k)if(k=[],void 0===v)for(;;){if(b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2);break}k.push(c.fromDer(b,e))}else for(y=b.length();0<v;)k.push(c.fromDer(b,e)),v-=y-b.length(),y=b.length();else{if(void 0===v){if(e)throw Error("Non-constructed ASN.1 object of indefinite length.");v=b.length()}if(g===c.Type.BMPSTRING)for(k="",y=0;y<v;y+=2)k+=String.fromCharCode(b.getInt16());else k=b.getBytes(v)}return c.create(l,g,D,k)};c.toDer=function(b){var d=a.util.createBuffer(),
284
+e=b.tagClass|b.type,h=a.util.createBuffer();if(b.composed){b.constructed?e|=32:h.putByte(0);for(var g=0;g<b.value.length;++g)void 0!==b.value[g]&&h.putBuffer(c.toDer(b.value[g]))}else if(b.type===c.Type.BMPSTRING)for(g=0;g<b.value.length;++g)h.putInt16(b.value.charCodeAt(g));else h.putBytes(b.value);d.putByte(e);if(127>=h.length())d.putByte(h.length()&127);else{g=h.length();b="";do b+=String.fromCharCode(g&255),g>>>=8;while(0<g);d.putByte(b.length|128);for(g=b.length-1;0<=g;--g)d.putByte(b.charCodeAt(g))}d.putBuffer(h);
285
+return d};c.oidToDer=function(b){b=b.split(".");var c=a.util.createBuffer();c.putByte(40*parseInt(b[0],10)+parseInt(b[1],10));for(var d,e,g,l,n=2;n<b.length;++n){d=!0;e=[];g=parseInt(b[n],10);do l=g&127,g>>>=7,d||(l|=128),e.push(l),d=!1;while(0<g);for(d=e.length-1;0<=d;--d)c.putByte(e[d])}return c};c.derToOid=function(b){var c;"string"===typeof b&&(b=a.util.createBuffer(b));var d=b.getByte();c=Math.floor(d/40)+"."+d%40;for(var e=0;0<b.length();)d=b.getByte(),e<<=7,d&128?e+=d&127:(c+="."+(e+d),e=0);
286
+return c};c.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10),c=50<=c?1900+c:2E3+c,d=parseInt(a.substr(2,2),10)-1,r=parseInt(a.substr(4,2),10),e=parseInt(a.substr(6,2),10),l=parseInt(a.substr(8,2),10),n=0;if(11<a.length){var y=a.charAt(10),k=10;"+"!==y&&"-"!==y&&(n=parseInt(a.substr(10,2),10),k+=2)}b.setUTCFullYear(c,d,r);b.setUTCHours(e,l,n,0);k&&(y=a.charAt(k),"+"===y||"-"===y)&&(c=parseInt(a.substr(k+1,2),10),a=parseInt(a.substr(k+4,2),10),a=6E4*(60*c+a),"+"===y?b.setTime(+b-
287
+a):b.setTime(+b+a));return b};c.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,r=parseInt(a.substr(6,2),10),e=parseInt(a.substr(8,2),10),l=parseInt(a.substr(10,2),10),n=parseInt(a.substr(12,2),10),y=0,k=0,z=!1;"Z"===a.charAt(a.length-1)&&(z=!0);var w=a.length-5,A=a.charAt(w);if("+"===A||"-"===A)k=parseInt(a.substr(w+1,2),10),w=parseInt(a.substr(w+4,2),10),k=6E4*(60*k+w),"+"===A&&(k*=-1),z=!0;"."===a.charAt(14)&&(y=1E3*parseFloat(a.substr(14),
288
+10));z?(b.setUTCFullYear(c,d,r),b.setUTCHours(e,l,n,y),b.setTime(+b+k)):(b.setFullYear(c,d,r),b.setHours(e,l,n,y));return b};c.dateToUtcTime=function(a){if("string"===typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2));c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.dateToGeneralizedTime=function(a){if("string"===
289
typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear());c.push(""+(a.getUTCMonth()+1));c.push(""+a.getUTCDate());c.push(""+a.getUTCHours());c.push(""+a.getUTCMinutes());c.push(""+a.getUTCSeconds());for(a=0;a<c.length;++a)2>c[a].length&&(b+="0"),b+=c[a];return b+"Z"};c.integerToDer=function(b){var c=a.util.createBuffer();if(-128<=b&&128>b)return c.putSignedInt(b,8);if(-32768<=b&&32768>b)return c.putSignedInt(b,16);if(-8388608<=b&&8388608>b)return c.putSignedInt(b,24);if(-2147483648<=b&&2147483648>
290
-b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,g){var h=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)g&&(b.tagClass!==d.tagClass&&g.push("["+d.name+'] Expected tag class "'+d.tagClass+
291
-'", got "'+b.tagClass+'"'),b.type!==d.type&&g.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){h=!0;if(d.value&&a.util.isArray(d.value))for(var l=0,k=0;h&&k<d.value.length;++k)h=d.value[k].optional||!1,b.value[l]&&((h=c.validate(b.value[l],d.value[k],e,g))?++l:d.value[k].optional&&(h=!0)),!h&&g&&g.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
292
-b.value.length+'"');h&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else g&&g.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return h};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,n){var g="";d=d||0;n=n||2;0<d&&(g+="\n");for(var h="",k=0;k<d*n;++k)h+=" ";g+=h+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:g+="Universal:";break;case c.Class.APPLICATION:g+="Application:";break;case c.Class.CONTEXT_SPECIFIC:g+="Context-Specific:";
293
-break;case c.Class.PRIVATE:g+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(g+=b.type,b.type){case c.Type.NONE:g+=" (None)";break;case c.Type.BOOLEAN:g+=" (Boolean)";break;case c.Type.BITSTRING:g+=" (Bit string)";break;case c.Type.INTEGER:g+=" (Integer)";break;case c.Type.OCTETSTRING:g+=" (Octet string)";break;case c.Type.NULL:g+=" (Null)";break;case c.Type.OID:g+=" (Object Identifier)";break;case c.Type.ODESC:g+=" (Object Descriptor)";break;case c.Type.EXTERNAL:g+=" (External or Instance of)";
294
-break;case c.Type.REAL:g+=" (Real)";break;case c.Type.ENUMERATED:g+=" (Enumerated)";break;case c.Type.EMBEDDED:g+=" (Embedded PDV)";break;case c.Type.UTF8:g+=" (UTF8)";break;case c.Type.ROID:g+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:g+=" (Sequence)";break;case c.Type.SET:g+=" (Set)";break;case c.Type.PRINTABLESTRING:g+=" (Printable String)";break;case c.Type.IA5String:g+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:g+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:g+=" (Generalized time)";
295
-break;case c.Type.BMPSTRING:g+=" (BMP String)"}else g+=b.type;g=g+"\n"+(h+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,n),k+1<b.value.length&&(D+=","));g+=h+"Sub values: "+w+D}else if(g+=h+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),g+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(g+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{g+=c.derToInteger(b.value)}catch(y){g+="0x"+a.util.bytesToHex(b.value)}else b.type===
296
-c.Type.OCTETSTRING?(e.test(b.value)||(g+="("+b.value+") "),g+="0x"+a.util.bytesToHex(b.value)):g=b.type===c.Type.UTF8?g+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?g+b.value:e.test(b.value)?g+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?g+"[null]":g+b.value;return g}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,
297
-c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var m=0;m<e.length;++m)e[m](c);return c.asn1}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
298
-0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];n=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];g=Array(64);for(var b=0;64>b;++b)g[b]=Math.floor(4294967296*
299
-Math.abs(Math.sin(b+1)));h=!0}function d(a,b,c){for(var q,e,h,l,A,m,k,w=c.length();64<=w;){e=a.h0;h=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),q=A^h&(l^A),q=e+q+g[k]+b[k],m=n[k],e=A,A=l,l=h,h+=q<<m|q>>>32-m;for(;32>k;++k)q=l^A&(h^l),q=e+q+g[k]+b[p[k]],m=n[k],e=A,A=l,l=h,h+=q<<m|q>>>32-m;for(;48>k;++k)q=h^l^A,q=e+q+g[k]+b[p[k]],m=n[k],e=A,A=l,l=h,h+=q<<m|q>>>32-m;for(;64>k;++k)q=l^(h|~A),q=e+q+g[k]+b[p[k]],m=n[k],e=A,A=l,l=h,h+=q<<m|q>>>32-m;a.h0=a.h0+e|0;a.h1=a.h1+h|0;a.h2=a.h2+l|0;a.h3=
300
-a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){h||c();var b=null,e=a.util.createBuffer(),l=Array(16),g={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,d=0;d<c;++d)g.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
301
-h2:2562383102,h3:271733878};return g}};g.start();g.update=function(c,h){"utf8"===h&&(c=a.util.encodeUtf8(c));var m=c.length;g.messageLength+=m;for(var m=[m/4294967296>>>0,m>>>0],A=g.fullMessageLength.length-1;0<=A;--A)g.fullMessageLength[A]+=m[1],m[1]=m[0]+(g.fullMessageLength[A]/4294967296>>>0),g.fullMessageLength[A]>>>=0,m[0]=m[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return g};g.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
302
-g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));for(var h,m=0,A=g.fullMessageLength.length-1;0<=A;--A)h=8*g.fullMessageLength[A]+m,m=h/4294967296>>>0,c.putInt32Le(h>>>0);h={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(h,l,c);c=a.util.createBuffer();c.putInt32Le(h.h0);c.putInt32Le(h.h1);c.putInt32Le(h.h2);c.putInt32Le(h.h3);return c};return g};var k=null,p=null,n=null,g=null,h=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
303
-!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var m=0;m<e.length;++m)e[m](c);return c.md5}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
304
-0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var q,e,l,m,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;m=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)q=d.getInt32(),b[x]=q,z=k^l&(m^k),q=(e<<5|e>>>27)+z+w+1518500249+q,w=k,k=m,m=l<<30|l>>>2,l=e,e=q;for(;20>x;++x)q=b[x-3]^b[x-8]^b[x-14]^b[x-16],q=q<<1|q>>>31,b[x]=q,z=k^l&(m^k),q=(e<<5|e>>>27)+z+w+1518500249+q,w=k,k=m,m=l<<30|l>>>2,l=e,e=q;for(;32>
305
-x;++x)q=b[x-3]^b[x-8]^b[x-14]^b[x-16],q=q<<1|q>>>31,b[x]=q,z=l^m^k,q=(e<<5|e>>>27)+z+w+1859775393+q,w=k,k=m,m=l<<30|l>>>2,l=e,e=q;for(;40>x;++x)q=b[x-6]^b[x-16]^b[x-28]^b[x-32],q=q<<2|q>>>30,b[x]=q,z=l^m^k,q=(e<<5|e>>>27)+z+w+1859775393+q,w=k,k=m,m=l<<30|l>>>2,l=e,e=q;for(;60>x;++x)q=b[x-6]^b[x-16]^b[x-28]^b[x-32],q=q<<2|q>>>30,b[x]=q,z=l&m|k&(l^m),q=(e<<5|e>>>27)+z+w+2400959708+q,w=k,k=m,m=l<<30|l>>>2,l=e,e=q;for(;80>x;++x)q=b[x-6]^b[x-16]^b[x-28]^b[x-32],q=q<<2|q>>>30,b[x]=q,z=l^m^k,q=(e<<5|e>>>
306
-27)+z+w+3395469782+q,w=k,k=m,m=l<<30|l>>>2,l=e,e=q;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+m|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),g=Array(80),h={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=
307
-0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,e=0;e<c;++e)h.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return h}};h.start();h.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;h.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=h.fullMessageLength.length-1;0<=y;--y)h.fullMessageLength[y]+=k[1],k[1]=k[0]+(h.fullMessageLength[y]/4294967296>>>0),h.fullMessageLength[y]>>>=
308
-0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return h};h.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*h.fullMessageLength[0],C=0;C<h.fullMessageLength.length;++C)w=8*h.fullMessageLength[C+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
309
-h4:b.h4};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return h};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
310
-!0;for(var m=0;m<e.length;++m)e[m](c);return c.sha1}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var q,e,l,m,k,z,w,A,F,H,x,G,u,r=d.length();64<=r;){for(k=0;16>k;++k)b[k]=d.getInt32();
311
-for(;64>k;++k)q=b[k-2],q=(q>>>17|q<<15)^(q>>>19|q<<13)^q>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=q+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;F=a.h3;H=a.h4;x=a.h5;G=a.h6;u=a.h7;for(k=0;64>k;++k)q=(H>>>6|H<<26)^(H>>>11|H<<21)^(H>>>25|H<<7),l=G^H&(x^G),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),m=z&w|A&(z^w),q=u+q+l+p[k]+b[k],e+=m,u=G,G=x,x=H,H=F+q|0,F=A,A=w,w=z,z=q+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+F|0;a.h4=a.h4+H|0;a.h5=a.h5+x|0;a.h6=a.h6+G|0;a.h7=a.h7+u|0;r-=
290
+b)return c.putSignedInt(b,32);c=Error("Integer too large; max is 32-bits.");c.integer=b;throw c;};c.derToInteger=function(b){"string"===typeof b&&(b=a.util.createBuffer(b));var c=8*b.length();if(32<c)throw Error("Integer too large; max is 32-bits.");return b.getSignedInt(c)};c.validate=function(b,d,e,l){var g=!1;if(b.tagClass!==d.tagClass&&"undefined"!==typeof d.tagClass||b.type!==d.type&&"undefined"!==typeof d.type)l&&(b.tagClass!==d.tagClass&&l.push("["+d.name+'] Expected tag class "'+d.tagClass+
291
+'", got "'+b.tagClass+'"'),b.type!==d.type&&l.push("["+d.name+'] Expected type "'+d.type+'", got "'+b.type+'"'));else if(b.constructed===d.constructed||"undefined"===typeof d.constructed){g=!0;if(d.value&&a.util.isArray(d.value))for(var v=0,k=0;g&&k<d.value.length;++k)g=d.value[k].optional||!1,b.value[v]&&((g=c.validate(b.value[v],d.value[k],e,l))?++v:d.value[k].optional&&(g=!0)),!g&&l&&l.push("["+d.name+'] Tag class "'+d.tagClass+'", type "'+d.type+'" expected value length "'+d.value.length+'", got "'+
292
+b.value.length+'"');g&&e&&(d.capture&&(e[d.capture]=b.value),d.captureAsn1&&(e[d.captureAsn1]=b))}else l&&l.push("["+d.name+'] Expected constructed "'+d.constructed+'", got "'+b.constructed+'"');return g};var e=/[^\\u0000-\\u00ff]/;c.prettyPrint=function(b,d,m){var h="";d=d||0;m=m||2;0<d&&(h+="\n");for(var g="",k=0;k<d*m;++k)g+=" ";h+=g+"Tag: ";switch(b.tagClass){case c.Class.UNIVERSAL:h+="Universal:";break;case c.Class.APPLICATION:h+="Application:";break;case c.Class.CONTEXT_SPECIFIC:h+="Context-Specific:";
293
+break;case c.Class.PRIVATE:h+="Private:"}if(b.tagClass===c.Class.UNIVERSAL)switch(h+=b.type,b.type){case c.Type.NONE:h+=" (None)";break;case c.Type.BOOLEAN:h+=" (Boolean)";break;case c.Type.BITSTRING:h+=" (Bit string)";break;case c.Type.INTEGER:h+=" (Integer)";break;case c.Type.OCTETSTRING:h+=" (Octet string)";break;case c.Type.NULL:h+=" (Null)";break;case c.Type.OID:h+=" (Object Identifier)";break;case c.Type.ODESC:h+=" (Object Descriptor)";break;case c.Type.EXTERNAL:h+=" (External or Instance of)";
294
+break;case c.Type.REAL:h+=" (Real)";break;case c.Type.ENUMERATED:h+=" (Enumerated)";break;case c.Type.EMBEDDED:h+=" (Embedded PDV)";break;case c.Type.UTF8:h+=" (UTF8)";break;case c.Type.ROID:h+=" (Relative Object Identifier)";break;case c.Type.SEQUENCE:h+=" (Sequence)";break;case c.Type.SET:h+=" (Set)";break;case c.Type.PRINTABLESTRING:h+=" (Printable String)";break;case c.Type.IA5String:h+=" (IA5String (ASCII))";break;case c.Type.UTCTIME:h+=" (UTC time)";break;case c.Type.GENERALIZEDTIME:h+=" (Generalized time)";
295
+break;case c.Type.BMPSTRING:h+=" (BMP String)"}else h+=b.type;h=h+"\n"+(g+"Constructed: "+b.constructed+"\n");if(b.composed){for(var w=0,D="",k=0;k<b.value.length;++k)void 0!==b.value[k]&&(w+=1,D+=c.prettyPrint(b.value[k],d+1,m),k+1<b.value.length&&(D+=","));h+=g+"Sub values: "+w+D}else if(h+=g+"Value: ",b.type===c.Type.OID&&(d=c.derToOid(b.value),h+=d,a.pki&&a.pki.oids&&d in a.pki.oids&&(h+=" ("+a.pki.oids[d]+") ")),b.type===c.Type.INTEGER)try{h+=c.derToInteger(b.value)}catch(y){h+="0x"+a.util.bytesToHex(b.value)}else b.type===
296
+c.Type.OCTETSTRING?(e.test(b.value)||(h+="("+b.value+") "),h+="0x"+a.util.bytesToHex(b.value)):h=b.type===c.Type.UTF8?h+a.util.decodeUtf8(b.value):b.type===c.Type.PRINTABLESTRING||b.type===c.Type.IA5String?h+b.value:e.test(b.value)?h+("0x"+a.util.bytesToHex(b.value)):0===b.value.length?h+"[null]":h+b.value;return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,
297
+c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.asn1)return c.asn1;c.defined.asn1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/asn1",["require","module","./util","./oids"],function(){p.apply(null,Array.prototype.slice.call(arguments,
298
+0))})})();(function(){function b(a){function c(){k=String.fromCharCode(128);k+=a.util.fillString(String.fromCharCode(0),64);p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];m=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];h=Array(64);for(var b=0;64>b;++b)h[b]=Math.floor(4294967296*
299
+Math.abs(Math.sin(b+1)));g=!0}function d(a,b,c){for(var r,e,g,l,A,n,k,w=c.length();64<=w;){e=a.h0;g=a.h1;l=a.h2;A=a.h3;for(k=0;16>k;++k)b[k]=c.getInt32Le(),r=A^g&(l^A),r=e+r+h[k]+b[k],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;32>k;++k)r=l^A&(g^l),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;48>k;++k)r=g^l^A,r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;for(;64>k;++k)r=l^(g|~A),r=e+r+h[k]+b[p[k]],n=m[k],e=A,A=l,l=g,g+=r<<n|r>>>32-n;a.h0=a.h0+e|0;a.h1=a.h1+g|0;a.h2=a.h2+l|0;a.h3=
300
+a.h3+A|0;w-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){g||c();var b=null,e=a.util.createBuffer(),l=Array(16),h={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){h.messageLength=0;h.fullMessageLength=h.messageLength64=[];for(var c=h.messageLengthSize/4,d=0;d<c;++d)h.fullMessageLength.push(0);e=a.util.createBuffer();b={h0:1732584193,h1:4023233417,
301
+h2:2562383102,h3:271733878};return h}};h.start();h.update=function(c,g){"utf8"===g&&(c=a.util.encodeUtf8(c));var n=c.length;h.messageLength+=n;for(var n=[n/4294967296>>>0,n>>>0],A=h.fullMessageLength.length-1;0<=A;--A)h.fullMessageLength[A]+=n[1],n[1]=n[0]+(h.fullMessageLength[A]/4294967296>>>0),h.fullMessageLength[A]>>>=0,n[0]=n[1]/4294967296>>>0;e.putBytes(c);d(b,l,e);(2048<e.read||0===e.length())&&e.compact();return h};h.digest=function(){var c=a.util.createBuffer();c.putBytes(e.bytes());c.putBytes(k.substr(0,
302
+h.blockLength-(h.fullMessageLength[h.fullMessageLength.length-1]+h.messageLengthSize&h.blockLength-1)));for(var g,n=0,A=h.fullMessageLength.length-1;0<=A;--A)g=8*h.fullMessageLength[A]+n,n=g/4294967296>>>0,c.putInt32Le(g>>>0);g={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3};d(g,l,c);c=a.util.createBuffer();c.putInt32Le(g.h0);c.putInt32Le(g.h1);c.putInt32Le(g.h2);c.putInt32Le(g.h3);return c};return h};var k=null,p=null,m=null,h=null,g=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=
303
+!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md5}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,
304
+0))};a("js/md5",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,w,z,x,A=d.length();64<=A;){e=a.h0;l=a.h1;n=a.h2;k=a.h3;w=a.h4;for(x=0;16>x;++x)r=d.getInt32(),b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;20>x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=k^l&(n^k),r=(e<<5|e>>>27)+z+w+1518500249+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;32>
305
+x;++x)r=b[x-3]^b[x-8]^b[x-14]^b[x-16],r=r<<1|r>>>31,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;40>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>27)+z+w+1859775393+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;60>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l&n|k&(l^n),r=(e<<5|e>>>27)+z+w+2400959708+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;for(;80>x;++x)r=b[x-6]^b[x-16]^b[x-28]^b[x-32],r=r<<2|r>>>30,b[x]=r,z=l^n^k,r=(e<<5|e>>>
306
+27)+z+w+3395469782+r,w=k,k=n,n=l<<30|l>>>2,l=e,e=r;a.h0=a.h0+e|0;a.h1=a.h1+l|0;a.h2=a.h2+n|0;a.h3=a.h3+k|0;a.h4=a.h4+w|0;A-=64}}var d=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),k=!0);var b=null,d=a.util.createBuffer(),h=Array(80),g={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){g.messageLength=
307
+0;g.fullMessageLength=g.messageLength64=[];for(var c=g.messageLengthSize/4,e=0;e<c;++e)g.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520};return g}};g.start();g.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;g.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],y=g.fullMessageLength.length-1;0<=y;--y)g.fullMessageLength[y]+=k[1],k[1]=k[0]+(g.fullMessageLength[y]/4294967296>>>0),g.fullMessageLength[y]>>>=
308
+0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return g};g.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,g.blockLength-(g.fullMessageLength[g.fullMessageLength.length-1]+g.messageLengthSize&g.blockLength-1)));a.util.createBuffer();for(var w,x,y=8*g.fullMessageLength[0],B=0;B<g.fullMessageLength.length;++B)w=8*g.fullMessageLength[B+1],x=w/4294967296>>>0,y+=x,k.putInt32(y>>>0),y=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,
309
+h4:b.h4};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);return k};return g};var e=null,k=!1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha1)return c.sha1;c.defined.sha1=
310
+!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,k,z,w,A,G,I,x,q,u,R=d.length();64<=R;){for(k=0;16>k;++k)b[k]=d.getInt32();
311
+for(;64>k;++k)r=b[k-2],r=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10,e=b[k-15],e=(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=r+b[k-7]+e+b[k-16]|0;z=a.h0;w=a.h1;A=a.h2;G=a.h3;I=a.h4;x=a.h5;q=a.h6;u=a.h7;for(k=0;64>k;++k)r=(I>>>6|I<<26)^(I>>>11|I<<21)^(I>>>25|I<<7),l=q^I&(x^q),e=(z>>>2|z<<30)^(z>>>13|z<<19)^(z>>>22|z<<10),n=z&w|A&(z^w),r=u+r+l+p[k]+b[k],e+=n,u=q,q=x,x=I,I=G+r|0,G=A,A=w,w=z,z=r+e|0;a.h0=a.h0+z|0;a.h1=a.h1+w|0;a.h2=a.h2+A|0;a.h3=a.h3+G|0;a.h4=a.h4+I|0;a.h5=a.h5+x|0;a.h6=a.h6+q|0;a.h7=a.h7+u|0;R-=
312
64}}var d=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=d;d.create=function(){k||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),64),p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,
313
-2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),h=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
313
+2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],k=!0);var b=null,d=a.util.createBuffer(),g=Array(64),v={algorithm:"sha256",blockLength:64,digestLength:32,
314
messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){v.messageLength=0;v.fullMessageLength=v.messageLength64=[];for(var c=v.messageLengthSize/4,e=0;e<c;++e)v.fullMessageLength.push(0);d=a.util.createBuffer();b={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225};return v}};v.start();v.update=function(e,l){"utf8"===l&&(e=a.util.encodeUtf8(e));var k=e.length;v.messageLength+=k;for(var k=[k/4294967296>>>0,k>>>0],w=v.fullMessageLength.length-
315
-1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,h,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
316
-8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,h,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
317
-{}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var m=0;m<e.length;++m)e[m](c);return c.sha256}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
318
-Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var q,e,l,m,g,A,k,w,x,p,u,r,B,P,Z,L,W,V,K,ba,ca,X,I,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)g=b[T-2],x=g[0],g=g[1],q=((x>>>19|g<<13)^(g>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|g>>>19)^(g<<3|x>>>29)^(x<<26|g>>>6))>>>0,g=b[T-15],x=g[0],g=g[1],l=((x>>>1|g<<31)^(x>>>8|g<<24)^x>>>7)>>>0,m=((x<<31|g>>>1)^(x<<24|g>>>8)^(x<<25|g>>>7))>>>0,x=b[T-7],p=b[T-
319
-16],g=e+x[1]+m+p[1],b[T][0]=q+x[0]+l+p[0]+(g/4294967296>>>0)>>>0,b[T][1]=g>>>0;x=a[0][0];p=a[0][1];u=a[1][0];r=a[1][1];B=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];I=a[7][0];E=a[7][1];for(T=0;80>T;++T)q=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,g=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,m=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
320
-k=(x&u|B&(x^u))>>>0,w=(p&r|P&(p^r))>>>0,g=E+g+A+n[T][1]+b[T][1],q=I+q+e+n[T][0]+b[T][0]+(g/4294967296>>>0)>>>0,e=g>>>0,g=m+w,l=l+k+(g/4294967296>>>0)>>>0,m=g>>>0,I=ca,E=X,ca=K,X=ba,K=W,ba=V,g=L+e,W=Z+q+(g/4294967296>>>0)>>>0,V=g>>>0,Z=B,L=P,B=u,P=r,u=x,r=p,g=e+m,x=q+l+(g/4294967296>>>0)>>>0,p=g>>>0;g=a[0][1]+p;a[0][0]=a[0][0]+x+(g/4294967296>>>0)>>>0;a[0][1]=g>>>0;g=a[1][1]+r;a[1][0]=a[1][0]+u+(g/4294967296>>>0)>>>0;a[1][1]=g>>>0;g=a[2][1]+P;a[2][0]=a[2][0]+B+(g/4294967296>>>0)>>>0;a[2][1]=g>>>0;
321
-g=a[3][1]+L;a[3][0]=a[3][0]+Z+(g/4294967296>>>0)>>>0;a[3][1]=g>>>0;g=a[4][1]+V;a[4][0]=a[4][0]+W+(g/4294967296>>>0)>>>0;a[4][1]=g>>>0;g=a[5][1]+ba;a[5][0]=a[5][0]+K+(g/4294967296>>>0)>>>0;a[5][1]=g>>>0;g=a[6][1]+X;a[6][0]=a[6][0]+ca+(g/4294967296>>>0)>>>0;a[6][1]=g>>>0;g=a[7][1]+E;a[7][0]=a[7][0]+I+(g/4294967296>>>0)>>>0;a[7][1]=g>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
322
-{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),n=[[1116352408,
315
+1;0<=w;--w)v.fullMessageLength[w]+=k[1],k[1]=k[0]+(v.fullMessageLength[w]/4294967296>>>0),v.fullMessageLength[w]>>>=0,k[0]=k[1]/4294967296>>>0;d.putBytes(e);c(b,g,d);(2048<d.read||0===d.length())&&d.compact();return v};v.digest=function(){var k=a.util.createBuffer();k.putBytes(d.bytes());k.putBytes(e.substr(0,v.blockLength-(v.fullMessageLength[v.fullMessageLength.length-1]+v.messageLengthSize&v.blockLength-1)));a.util.createBuffer();for(var w,y,x=8*v.fullMessageLength[0],z=0;z<v.fullMessageLength.length;++z)w=
316
+8*v.fullMessageLength[z+1],y=w/4294967296>>>0,x+=y,k.putInt32(x>>>0),x=w;w={h0:b.h0,h1:b.h1,h2:b.h2,h3:b.h3,h4:b.h4,h5:b.h5,h6:b.h6,h7:b.h7};c(w,g,k);k=a.util.createBuffer();k.putInt32(w.h0);k.putInt32(w.h1);k.putInt32(w.h2);k.putInt32(w.h3);k.putInt32(w.h4);k.putInt32(w.h5);k.putInt32(w.h6);k.putInt32(w.h7);return k};return v};var e=null,k=!1,p=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge=
317
+{}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.sha256)return c.sha256;c.defined.sha256=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha256}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha256",["require","module","./util"],function(){p.apply(null,
318
+Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){for(var r,e,l,n,h,A,k,w,x,p,u,q,C,P,Z,L,W,V,K,ba,ca,X,J,E,T,aa=d.length();128<=aa;){for(T=0;16>T;++T)b[T][0]=d.getInt32()>>>0,b[T][1]=d.getInt32()>>>0;for(;80>T;++T)h=b[T-2],x=h[0],h=h[1],r=((x>>>19|h<<13)^(h>>>29|x<<3)^x>>>6)>>>0,e=((x<<13|h>>>19)^(h<<3|x>>>29)^(x<<26|h>>>6))>>>0,h=b[T-15],x=h[0],h=h[1],l=((x>>>1|h<<31)^(x>>>8|h<<24)^x>>>7)>>>0,n=((x<<31|h>>>1)^(x<<24|h>>>8)^(x<<25|h>>>7))>>>0,x=b[T-7],p=b[T-
319
+16],h=e+x[1]+n+p[1],b[T][0]=r+x[0]+l+p[0]+(h/4294967296>>>0)>>>0,b[T][1]=h>>>0;x=a[0][0];p=a[0][1];u=a[1][0];q=a[1][1];C=a[2][0];P=a[2][1];Z=a[3][0];L=a[3][1];W=a[4][0];V=a[4][1];K=a[5][0];ba=a[5][1];ca=a[6][0];X=a[6][1];J=a[7][0];E=a[7][1];for(T=0;80>T;++T)r=((W>>>14|V<<18)^(W>>>18|V<<14)^(V>>>9|W<<23))>>>0,h=((W<<18|V>>>14)^(W<<14|V>>>18)^(V<<23|W>>>9))>>>0,e=(ca^W&(K^ca))>>>0,A=(X^V&(ba^X))>>>0,l=((x>>>28|p<<4)^(p>>>2|x<<30)^(p>>>7|x<<25))>>>0,n=((x<<4|p>>>28)^(p<<30|x>>>2)^(p<<25|x>>>7))>>>0,
320
+k=(x&u|C&(x^u))>>>0,w=(p&q|P&(p^q))>>>0,h=E+h+A+m[T][1]+b[T][1],r=J+r+e+m[T][0]+b[T][0]+(h/4294967296>>>0)>>>0,e=h>>>0,h=n+w,l=l+k+(h/4294967296>>>0)>>>0,n=h>>>0,J=ca,E=X,ca=K,X=ba,K=W,ba=V,h=L+e,W=Z+r+(h/4294967296>>>0)>>>0,V=h>>>0,Z=C,L=P,C=u,P=q,u=x,q=p,h=e+n,x=r+l+(h/4294967296>>>0)>>>0,p=h>>>0;h=a[0][1]+p;a[0][0]=a[0][0]+x+(h/4294967296>>>0)>>>0;a[0][1]=h>>>0;h=a[1][1]+q;a[1][0]=a[1][0]+u+(h/4294967296>>>0)>>>0;a[1][1]=h>>>0;h=a[2][1]+P;a[2][0]=a[2][0]+C+(h/4294967296>>>0)>>>0;a[2][1]=h>>>0;
321
+h=a[3][1]+L;a[3][0]=a[3][0]+Z+(h/4294967296>>>0)>>>0;a[3][1]=h>>>0;h=a[4][1]+V;a[4][0]=a[4][0]+W+(h/4294967296>>>0)>>>0;a[4][1]=h>>>0;h=a[5][1]+ba;a[5][0]=a[5][0]+K+(h/4294967296>>>0)>>>0;a[5][1]=h>>>0;h=a[6][1]+X;a[6][0]=a[6][0]+ca+(h/4294967296>>>0)>>>0;a[6][1]=h>>>0;h=a[7][1]+E;a[7][0]=a[7][0]+J+(h/4294967296>>>0)>>>0;a[7][1]=h>>>0;aa-=128}}var d=a.sha512=a.sha512||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=d;var e=a.sha384=a.sha512.sha384=a.sha512.sha384||
322
+{};e.create=function(){return d.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=e;a.sha512.sha256=a.sha512.sha256||{create:function(){return d.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return d.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224;d.create=function(b){p||(k=String.fromCharCode(128),k+=a.util.fillString(String.fromCharCode(0),128),m=[[1116352408,
323
3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],
324
[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,
325
106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],
326
-[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],g={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
326
+[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],h={"SHA-512":[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],
327
[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,
328
-2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in g))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=g[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
329
-0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var h=b.length;z.messageLength+=h;for(var h=[h/4294967296>>>0,h>>>0],g=z.fullMessageLength.length-1;0<=g;--g)z.fullMessageLength[g]+=h[1],h[1]=h[0]+(z.fullMessageLength[g]/4294967296>>>0),z.fullMessageLength[g]>>>=0,h[0]=
330
-h[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,g,n=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],g=A/4294967296>>>0,n+=g,d.putInt32(n>>>0),n=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
331
-e[w].slice(0);c(A,y,d);d=a.util.createBuffer();g="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<g;++w)d.putInt32(A[w][0]),w===g-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,n=null,g=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);
332
-c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var m=0;m<e.length;++m)e[m](c);return c.sha512}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
333
-a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var m=0;m<e.length;++m)e[m](c);return c.md}},k=a;a=function(b,
334
-c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,n){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
335
-a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==n){if("string"===typeof n)n=a.util.createBuffer(n);else if(a.util.isArray(n)){var g=n;n=a.util.createBuffer();for(var h=0;h<g.length;++h)n.putByte(g[h])}var k=n.length();k>b.blockLength&&(b.start(),b.update(n.bytes()),n=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=n.length();for(h=0;h<k;++h)g=n.at(h),c.putByte(54^g),d.putByte(92^g);if(k<b.blockLength)for(g=b.blockLength-k,h=0;h<g;++h)c.putByte(54),
336
-d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
337
-{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var m=0;m<e.length;++m)e[m](c);return c.hmac}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],q=function(a,
338
-b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,q));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
328
+2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},p=!0);"undefined"===typeof b&&(b="SHA-512");if(!(b in h))throw Error("Invalid SHA-512 algorithm: "+b);for(var d=h[b],e=null,l=a.util.createBuffer(),y=Array(80),w=0;80>w;++w)y[w]=Array(2);var z={algorithm:b.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){z.messageLength=
329
+0;z.fullMessageLength=z.messageLength128=[];for(var b=z.messageLengthSize/4,c=0;c<b;++c)z.fullMessageLength.push(0);l=a.util.createBuffer();e=Array(d.length);for(c=0;c<d.length;++c)e[c]=d[c].slice(0);return z}};z.start();z.update=function(b,d){"utf8"===d&&(b=a.util.encodeUtf8(b));var g=b.length;z.messageLength+=g;for(var g=[g/4294967296>>>0,g>>>0],h=z.fullMessageLength.length-1;0<=h;--h)z.fullMessageLength[h]+=g[1],g[1]=g[0]+(z.fullMessageLength[h]/4294967296>>>0),z.fullMessageLength[h]>>>=0,g[0]=
330
+g[1]/4294967296>>>0;l.putBytes(b);c(e,y,l);(2048<l.read||0===l.length())&&l.compact();return z};z.digest=function(){var d=a.util.createBuffer();d.putBytes(l.bytes());d.putBytes(k.substr(0,z.blockLength-(z.fullMessageLength[z.fullMessageLength.length-1]+z.messageLengthSize&z.blockLength-1)));a.util.createBuffer();for(var A,h,m=8*z.fullMessageLength[0],w=0;w<z.fullMessageLength.length;++w)A=8*z.fullMessageLength[w+1],h=A/4294967296>>>0,m+=h,d.putInt32(m>>>0),m=A;A=Array(e.length);for(w=0;w<e.length;++w)A[w]=
331
+e[w].slice(0);c(A,y,d);d=a.util.createBuffer();h="SHA-512"===b?A.length:"SHA-384"===b?A.length-2:A.length-4;for(w=0;w<h;++w)d.putInt32(A[w][0]),w===h-1&&"SHA-512/224"===b||d.putInt32(A[w][1]);return d};return z};var k=null,p=!1,m=null,h=null}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
332
+c=c||{};c.defined=c.defined||{};if(c.defined.sha512)return c.sha512;c.defined.sha512=!0;for(var n=0;n<e.length;++n)e[n](c);return c.sha512}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/sha512",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.md=a.md||{};
333
+a.md.algorithms={md5:a.md5,sha1:a.sha1,sha256:a.sha256};a.md.md5=a.md5;a.md.sha1=a.sha1;a.md.sha256=a.sha256}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.md)return c.md;c.defined.md=!0;for(var n=0;n<e.length;++n)e[n](c);return c.md}},k=a;a=function(b,
334
+c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/md","require module ./md5 ./sha1 ./sha256 ./sha512".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.hmac=a.hmac||{}).create=function(){var b=null,c=null,d=null,e={start:function(e,m){if(null!==e)if("string"===typeof e)if(e=e.toLowerCase(),e in a.md.algorithms)b=
335
+a.md.algorithms[e].create();else throw Error('Unknown hash algorithm "'+e+'"');else b=e;if(null!==m){if("string"===typeof m)m=a.util.createBuffer(m);else if(a.util.isArray(m)){var h=m;m=a.util.createBuffer();for(var g=0;g<h.length;++g)m.putByte(h[g])}var k=m.length();k>b.blockLength&&(b.start(),b.update(m.bytes()),m=b.digest());c=a.util.createBuffer();d=a.util.createBuffer();k=m.length();for(g=0;g<k;++g)h=m.at(g),c.putByte(54^h),d.putByte(92^h);if(k<b.blockLength)for(h=b.blockLength-k,g=0;g<h;++g)c.putByte(54),
336
+d.putByte(92);c=c.bytes();d=d.bytes()}b.start();b.update(c)},update:function(a){b.update(a)},getMac:function(){var a=b.digest().bytes();b.start();b.update(d);b.update(a);return b.digest()}};e.digest=e.getMac;return e}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
337
+{};if(c.defined.hmac)return c.hmac;c.defined.hmac=!0;for(var n=0;n<e.length;++n)e[n](c);return c.hmac}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/hmac",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a){for(var b=a.name+": ",d=[],r=function(a,
338
+b){return" "+b},e=0;e<a.values.length;++e)d.push(a.values[e].replace(/^(\S+\r\n)/,r));b+=d.join(",")+"\r\n";d=0;a=-1;for(e=0;e<b.length;++e,++d)if(65<d&&-1!==a)d=b[a],","===d?(++a,b=b.substr(0,a)+"\r\n "+b.substr(a)):b=b.substr(0,a)+"\r\n"+d+b.substr(a+1),d=e-a-1,a=-1,++e;else if(" "===b[e]||"\t"===b[e]||","===b[e])a=e;return b}var d=a.pem=a.pem||{};d.encode=function(b,d){d=d||{};var e="-----BEGIN "+b.type+"-----\r\n",k;b.procType&&(k={name:"Proc-Type",values:[String(b.procType.version),b.procType.type]},
339
e+=c(k));b.contentDomain&&(k={name:"Content-Domain",values:[b.contentDomain]},e+=c(k));b.dekInfo&&(k={name:"DEK-Info",values:[b.dekInfo.algorithm]},b.dekInfo.parameters&&k.values.push(b.dekInfo.parameters),e+=c(k));if(b.headers)for(k=0;k<b.headers.length;++k)e+=c(b.headers[k]);b.procType&&(e+="\r\n");e+=a.util.encode64(b.body,d.maxline||64)+"\r\n";return e+="-----END "+b.type+"-----\r\n"};d.decode=function(b){for(var c=[],d=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,
340
-e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,g=/\r?\n/,h;;){h=d.exec(b);if(!h)break;var m={type:h[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(h[3])};c.push(m);if(h[2]){for(var k=h[2].split(g),w=0;h&&w<k.length;){h=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var C=k[y];if(!/\s/.test(C[0]))break;h+=C;w=y}if(h=h.match(e)){for(var y={name:h[1],values:[]},C=h[2].split(","),z=0;z<C.length;++z)y.values.push(C[z].replace(/^\s+/,""));if(m.procType)if(m.contentDomain||
341
-"Content-Domain"!==y.name)if(m.dekInfo||"DEK-Info"!==y.name)m.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');m.dekInfo={algorithm:C[0],parameters:C[1]||null}}else m.contentDomain=C[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
342
-m.procType={version:C[0],type:C[1]}}}++w}if("ENCRYPTED"===m.procType&&!m.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);
343
-c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var m=0;m<e.length;++m)e[m](c);return c.pem}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
344
-function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var q=32===a.length?3:9;e=3===q?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var m=b[0],l=b[1];b=(m>>>4^l)&252645135;l^=b;m^=b<<4;b=(m>>>16^l)&65535;l^=b;m^=b<<16;b=(l>>>2^m)&858993459;m^=b;l^=b<<2;b=(l>>>8^m)&16711935;m^=b;l^=b<<8;b=(m>>>1^l)&1431655765;for(var l=l^b,m=m^b<<1,m=m<<1|m>>>31,l=l<<1|l>>>31,w=0;w<q;w+=3){for(var G=e[w+1],u=e[w+2],R=e[w];R!=G;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=m;
345
-m=l;l=b^(p[S>>>24&63]|g[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|n[P>>>16&63]|h[P>>>8&63]|r[P&63])}b=m;m=l;l=b}m=m>>>1|m<<31;l=l>>>1|l<<31;b=(m>>>1^l)&1431655765;l^=b;m^=b<<1;b=(l>>>8^m)&16711935;m^=b;l^=b<<8;b=(l>>>2^m)&858993459;m^=b;l^=b<<2;b=(m>>>16^l)&65535;l^=b;m^=b<<16;b=(m>>>4^l)&252645135;c[0]=m^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var h=d.start;d.start=function(b,c){var e=
346
-null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;h.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
340
+e=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,h=/\r?\n/,g;;){g=d.exec(b);if(!g)break;var n={type:g[1],procType:null,contentDomain:null,dekInfo:null,headers:[],body:a.util.decode64(g[3])};c.push(n);if(g[2]){for(var k=g[2].split(h),w=0;g&&w<k.length;){g=k[w].replace(/\s+$/,"");for(var y=w+1;y<k.length;++y){var B=k[y];if(!/\s/.test(B[0]))break;g+=B;w=y}if(g=g.match(e)){for(var y={name:g[1],values:[]},B=g[2].split(","),z=0;z<B.length;++z)y.values.push(B[z].replace(/^\s+/,""));if(n.procType)if(n.contentDomain||
341
+"Content-Domain"!==y.name)if(n.dekInfo||"DEK-Info"!==y.name)n.headers.push(y);else{if(0===y.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');n.dekInfo={algorithm:B[0],parameters:B[1]||null}}else n.contentDomain=B[0]||"";else{if("Proc-Type"!==y.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==y.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');
342
+n.procType={version:B[0],type:B[1]}}}++w}if("ENCRYPTED"===n.procType&&!n.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".');}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);
343
+c=c||{};c.defined=c.defined||{};if(c.defined.pem)return c.pem;c.defined.pem=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pem",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){a.cipher.registerAlgorithm(b,
344
+function(){return new a.des.Algorithm(b,d)})}function d(a,b,c,e){var r=32===a.length?3:9;e=3===r?e?[30,-2,-2]:[0,32,2]:e?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var n=b[0],l=b[1];b=(n>>>4^l)&252645135;l^=b;n^=b<<4;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(n>>>1^l)&1431655765;for(var l=l^b,n=n^b<<1,n=n<<1|n>>>31,l=l<<1|l>>>31,w=0;w<r;w+=3){for(var H=e[w+1],u=e[w+2],R=e[w];R!=H;R+=u){var S=l^a[R],P=(l>>>4|l<<28)^a[R+1];b=n;
345
+n=l;l=b^(p[S>>>24&63]|h[S>>>16&63]|v[S>>>8&63]|D[S&63]|k[P>>>24&63]|m[P>>>16&63]|g[P>>>8&63]|q[P&63])}b=n;n=l;l=b}n=n>>>1|n<<31;l=l>>>1|l<<31;b=(n>>>1^l)&1431655765;l^=b;n^=b<<1;b=(l>>>8^n)&16711935;n^=b;l^=b<<8;b=(l>>>2^n)&858993459;n^=b;l^=b<<2;b=(n>>>16^l)&65535;l^=b;n^=b<<16;b=(n>>>4^l)&252645135;c[0]=n^b<<4;c[1]=l^b}function e(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;d=b.decrypt?a.cipher.createDecipher(c,b.key):a.cipher.createCipher(c,b.key);var g=d.start;d.start=function(b,c){var e=
346
+null;c instanceof a.util.ByteBuffer&&(e=c,c={});c=c||{};c.output=e;c.iv=b;g.call(d,c)};return d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});a.start(b);return a};a.des.createDecryptionCipher=function(a,b){return e({key:a,
347
output:null,decrypt:!0,mode:b})};a.des.Algorithm=function(a,b){var c=this;c.name=a;c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return d(c._keys,a,b,!1)},decrypt:function(a,b){return d(c._keys,a,b,!0)}}});c._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,
348
-516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],h=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
349
-g=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],m=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],l=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],n=[0,268435456,8,268435464,0,268435456,
348
+516,536871424,536871428,66048,66052,536936960,536936964],d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],e=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],A=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],
349
+h=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],l=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],k=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],m=[0,268435456,8,268435464,0,268435456,
350
8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],w=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],v=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],x=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],L=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=8<b.length()?3:
351
-1,D=[],r=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],J=0,B,X=0;X<p;X++){var I=b.getInt32(),E=b.getInt32();B=(I>>>4^E)&252645135;E^=B;I^=B<<4;B=(E>>>-16^I)&65535;I^=B;E^=B<<-16;B=(I>>>2^E)&858993459;E^=B;I^=B<<2;B=(E>>>-16^I)&65535;I^=B;E^=B<<-16;B=(I>>>1^E)&1431655765;E^=B;I^=B<<1;B=(E>>>8^I)&16711935;I^=B;E^=B<<8;B=(I>>>1^E)&1431655765;E^=B;I^=B<<1;B=I<<8|E>>>20&240;for(var I=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=B,T=0;T<r.length;++T){r[T]?(I=I<<2|I>>>26,E=E<<2|E>>>26):(I=I<<1|I>>>27,E=E<<1|E>>>27);
352
-var I=I&-15,E=E&-15,aa=c[I>>>28]|d[I>>>24&15]|e[I>>>20&15]|A[I>>>16&15]|h[I>>>12&15]|g[I>>>8&15]|m[I>>>4&15],da=l[E>>>28]|k[E>>>24&15]|n[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];B=(da>>>16^aa)&65535;D[J++]=aa^B;D[J++]=da^B<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
351
+1,D=[],q=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],C=0,F,X=0;X<p;X++){var J=b.getInt32(),E=b.getInt32();F=(J>>>4^E)&252645135;E^=F;J^=F<<4;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>2^E)&858993459;E^=F;J^=F<<2;F=(E>>>-16^J)&65535;J^=F;E^=F<<-16;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=(E>>>8^J)&16711935;J^=F;E^=F<<8;F=(J>>>1^E)&1431655765;E^=F;J^=F<<1;F=J<<8|E>>>20&240;for(var J=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=F,T=0;T<q.length;++T){q[T]?(J=J<<2|J>>>26,E=E<<2|E>>>26):(J=J<<1|J>>>27,E=E<<1|E>>>27);
352
+var J=J&-15,E=E&-15,aa=c[J>>>28]|d[J>>>24&15]|e[J>>>20&15]|A[J>>>16&15]|g[J>>>12&15]|h[J>>>8&15]|l[J>>>4&15],da=n[E>>>28]|k[E>>>24&15]|m[E>>>20&15]|w[E>>>16&15]|v[E>>>12&15]|x[E>>>8&15]|L[E>>>4&15];F=(da>>>16^aa)&65535;D[C++]=aa^F;D[C++]=da^F<<16}}this._keys=D;this._init=!0}};c("DES-ECB",a.cipher.modes.ecb);c("DES-CBC",a.cipher.modes.cbc);c("DES-CFB",a.cipher.modes.cfb);c("DES-OFB",a.cipher.modes.ofb);c("DES-CTR",a.cipher.modes.ctr);c("3DES-ECB",a.cipher.modes.ecb);c("3DES-CBC",a.cipher.modes.cbc);
353
c("3DES-CFB",a.cipher.modes.cfb);c("3DES-OFB",a.cipher.modes.ofb);c("3DES-CTR",a.cipher.modes.ctr);var k=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,
354
16778240,16778240,0,65540,66560,0,16842756],p=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,
355
--2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],n=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
356
-134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],g=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],h=[256,
355
+-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],m=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,
356
+134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],h=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],g=[256,
357
34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,
358
524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],v=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,
359
-541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],r=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
359
+541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],q=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,
360
0,2099202,69206016,2048,67108866,67110912,2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,
361
-266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var m=0;m<e.length;++m)e[m](c);return c.des}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
362
-k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,g,h,m){function k(){if(G>r)return m(null,A);
363
-O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(G));F=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),H=O.digest().getBytes(),F=a.util.xorBytes(F,H,y),M=H,++u,a.util.setImmediate(p);A+=G<r?F:F.substr(0,z);++G;k()}"function"===typeof h&&(m=h,h=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===h||"object"!==typeof h)&&(4<l.pbkdf2Sync.length||!h||"sha1"===h))return"string"!==typeof h&&(h="sha1"),c=new Buffer(c,"binary"),m?4===l.pbkdf2Sync.length?
364
-l.pbkdf2(b,c,d,g,function(a,b){if(a)return m(a);m(null,b.toString("binary"))}):l.pbkdf2(b,c,d,g,h,function(a,b){if(a)return m(a);m(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,g).toString("binary"):l.pbkdf2Sync(b,c,d,g,h).toString("binary");if("undefined"===typeof h||null===h)h=a.md.sha1.create();if("string"===typeof h){if(!(h in a.md.algorithms))throw Error("Unknown hash algorithm: "+h);h=a.md[h].create()}var y=h.digestLength;if(g>4294967295*y){b=Error("Derived key is too long.");
365
-if(m)return m(b);throw b;}var r=Math.ceil(g/y),z=g-(r-1)*y,O=a.hmac.create();O.start(h,b);var A="",F,H,M;if(!m){for(var G=1;G<=r;++G){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(G));F=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),H=O.digest().getBytes(),F=a.util.xorBytes(F,H,y),M=H;A+=G<r?F:F.substr(0,z)}return A}G=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
366
-typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var m=0;m<e.length;++m)e[m](c);return c.pbkdf2}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
367
-"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=g.pools[0].messageLength)return d(),a();g.seedFile(32-g.pools[0].messageLength<<5,function(b,c){if(b)return a(b);g.collect(c);d();a()})}function d(){var a=g.plugin.md.create();
368
-a.update(g.pools[0].digest().getBytes());g.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%g.reseeds&&(a.update(g.pools[c].digest().getBytes()),g.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();g.key=g.plugin.formatKey(b);g.seed=g.plugin.formatSeed(a);g.reseeds=4294967295===g.reseeds?0:g.reseeds+1;g.generated=0}function m(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
369
-a.util.createBuffer();if(c)for(;e.length()<b;){var h=Math.max(1,Math.min(b-e.length(),65536)/4),g=new Uint32Array(Math.floor(h));try{for(c(g),h=0;h<g.length;++h)e.putInt32(g[h])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(h=16807*(c&65535),c=16807*(c>>16),h+=(c&32767)<<16,h+=c>>15,h=(h&2147483647)+(h>>31),c=h&4294967295,h=0;3>h;++h)g=c>>>(h<<3),g^=Math.floor(256*Math.random()),
370
-e.putByte(String.fromCharCode(g&255));return e.getBytes(b)}var g={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var h=Array(32),k=0;32>k;++k)h[k]=b.create();g.pools=h;g.pool=0;g.generate=function(b,d){function e(n){if(n)return d(n);if(k.length()>=b)return d(null,k.getBytes(b));1048575<g.generated&&(g.key=null);if(null===g.key)return a.util.nextTick(function(){c(e)});n=h(g.key,g.seed);g.generated+=n.length;k.putBytes(n);g.key=l(h(g.key,m(g.seed)));g.seed=A(h(g.key,g.seed));
371
-a.util.setImmediate(e)}if(!d)return g.generateSync(b);var h=g.plugin.cipher,m=g.plugin.increment,l=g.plugin.formatKey,A=g.plugin.formatSeed,k=a.util.createBuffer();g.key=null;e()};g.generateSync=function(b){var c=g.plugin.cipher,e=g.plugin.increment,h=g.plugin.formatKey,m=g.plugin.formatSeed;g.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<g.generated&&(g.key=null);null===g.key&&(32<=g.pools[0].messageLength||g.collect(g.seedFileSync(32-g.pools[0].messageLength<<5)),d());var A=c(g.key,
372
-g.seed);g.generated+=A.length;l.putBytes(A);g.key=h(c(g.key,e(g.seed)));g.seed=m(c(g.key,g.seed))}return l.getBytes(b)};e?(g.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},g.seedFileSync=function(a){return e.randomBytes(a).toString()}):(g.seedFile=function(a,b){try{b(null,m(a))}catch(c){b(c)}},g.seedFileSync=m);g.collect=function(a){for(var b=a.length,c=0;c<b;++c)g.pools[g.pool].update(a.substr(c,1)),g.pool=31===g.pool?0:g.pool+1};g.collectInt=function(a,
373
-b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);g.collect(c)};g.registerWorker=function(a){a===self?g.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&g.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
374
-return g}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var m=0;m<e.length;++m)e[m](c);return c.prng}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
361
+266240,4160,4160,262208,268435456,268701696]}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.des)return c.des;c.defined.des=!0;for(var n=0;n<e.length;++n)e[n](c);return c.des}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,
362
+k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/des",["require","module","./cipher","./cipherModes","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d=a.pkcs5=a.pkcs5||{},e="undefined"!==typeof process&&process.versions&&process.versions.node,l;e&&!a.disableNativeCode&&(l=c("crypto"));a.pbkdf2=d.pbkdf2=function(b,c,d,h,g,n){function k(){if(H>q)return n(null,A);
363
+O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();u=2;p()}function p(){if(u<=d)return O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I,++u,a.util.setImmediate(p);A+=H<q?G:G.substr(0,z);++H;k()}"function"===typeof g&&(n=g,g=null);if(e&&!a.disableNativeCode&&l.pbkdf2&&(null===g||"object"!==typeof g)&&(4<l.pbkdf2Sync.length||!g||"sha1"===g))return"string"!==typeof g&&(g="sha1"),c=new Buffer(c,"binary"),n?4===l.pbkdf2Sync.length?
364
+l.pbkdf2(b,c,d,h,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):l.pbkdf2(b,c,d,h,g,function(a,b){if(a)return n(a);n(null,b.toString("binary"))}):4===l.pbkdf2Sync.length?l.pbkdf2Sync(b,c,d,h).toString("binary"):l.pbkdf2Sync(b,c,d,h,g).toString("binary");if("undefined"===typeof g||null===g)g=a.md.sha1.create();if("string"===typeof g){if(!(g in a.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=a.md[g].create()}var y=g.digestLength;if(h>4294967295*y){b=Error("Derived key is too long.");
365
+if(n)return n(b);throw b;}var q=Math.ceil(h/y),z=h-(q-1)*y,O=a.hmac.create();O.start(g,b);var A="",G,I,M;if(!n){for(var H=1;H<=q;++H){O.start(null,null);O.update(c);O.update(a.util.int32ToBytes(H));G=M=O.digest().getBytes();for(var u=2;u<=d;++u)O.start(null,null),O.update(M),I=O.digest().getBytes(),G=a.util.xorBytes(G,I,y),M=I;A+=H<q?G:G.substr(0,z)}return A}H=1;k()}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
366
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbkdf2)return c.pbkdf2;c.defined.pbkdf2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pbkdf2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbkdf2",["require","module",
367
+"./hmac","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var d="undefined"!==typeof process&&process.versions&&process.versions.node,e=null;a.disableNativeCode||!d||process.versions["node-webkit"]||(e=c("crypto"));(a.prng=a.prng||{}).create=function(b){function c(a){if(32<=h.pools[0].messageLength)return d(),a();h.seedFile(32-h.pools[0].messageLength<<5,function(b,c){if(b)return a(b);h.collect(c);d();a()})}function d(){var a=h.plugin.md.create();
368
+a.update(h.pools[0].digest().getBytes());h.pools[0].start();for(var b=1,c=1;32>c;++c)b=31===b?2147483648:b<<2,0===b%h.reseeds&&(a.update(h.pools[c].digest().getBytes()),h.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();h.key=h.plugin.formatKey(b);h.seed=h.plugin.formatSeed(a);h.reseeds=4294967295===h.reseeds?0:h.reseeds+1;h.generated=0}function n(b){var c=null;if("undefined"!==typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var e=
369
+a.util.createBuffer();if(c)for(;e.length()<b;){var g=Math.max(1,Math.min(b-e.length(),65536)/4),h=new Uint32Array(Math.floor(g));try{for(c(h),g=0;g<h.length;++g)e.putInt32(h[g])}catch(A){if(!("undefined"!==typeof QuotaExceededError&&A instanceof QuotaExceededError))throw A;}}if(e.length()<b)for(c=Math.floor(65536*Math.random());e.length()<b;)for(g=16807*(c&65535),c=16807*(c>>16),g+=(c&32767)<<16,g+=c>>15,g=(g&2147483647)+(g>>31),c=g&4294967295,g=0;3>g;++g)h=c>>>(g<<3),h^=Math.floor(256*Math.random()),
370
+e.putByte(String.fromCharCode(h&255));return e.getBytes(b)}var h={plugin:b,key:null,seed:null,time:null,reseeds:0,generated:0};b=b.md;for(var g=Array(32),k=0;32>k;++k)g[k]=b.create();h.pools=g;h.pool=0;h.generate=function(b,d){function e(m){if(m)return d(m);if(k.length()>=b)return d(null,k.getBytes(b));1048575<h.generated&&(h.key=null);if(null===h.key)return a.util.nextTick(function(){c(e)});m=g(h.key,h.seed);h.generated+=m.length;k.putBytes(m);h.key=l(g(h.key,n(h.seed)));h.seed=A(g(h.key,h.seed));
371
+a.util.setImmediate(e)}if(!d)return h.generateSync(b);var g=h.plugin.cipher,n=h.plugin.increment,l=h.plugin.formatKey,A=h.plugin.formatSeed,k=a.util.createBuffer();h.key=null;e()};h.generateSync=function(b){var c=h.plugin.cipher,e=h.plugin.increment,g=h.plugin.formatKey,n=h.plugin.formatSeed;h.key=null;for(var l=a.util.createBuffer();l.length()<b;){1048575<h.generated&&(h.key=null);null===h.key&&(32<=h.pools[0].messageLength||h.collect(h.seedFileSync(32-h.pools[0].messageLength<<5)),d());var A=c(h.key,
372
+h.seed);h.generated+=A.length;l.putBytes(A);h.key=g(c(h.key,e(h.seed)));h.seed=n(c(h.key,h.seed))}return l.getBytes(b)};e?(h.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},h.seedFileSync=function(a){return e.randomBytes(a).toString()}):(h.seedFile=function(a,b){try{b(null,n(a))}catch(c){b(c)}},h.seedFileSync=n);h.collect=function(a){for(var b=a.length,c=0;c<b;++c)h.pools[h.pool].update(a.substr(c,1)),h.pool=31===h.pool?0:h.pool+1};h.collectInt=function(a,
373
+b){for(var c="",d=0;d<b;d+=8)c+=String.fromCharCode(a>>d&255);h.collect(c)};h.registerWorker=function(a){a===self?h.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&h.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})};
374
+return h}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prng)return c.prng;c.defined.prng=!0;for(var n=0;n<e.length;++n)e[n](c);return c.prng}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,
375
0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prng",["require","module","./md","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.random&&a.random.getBytes||function(b){function c(){var b=a.prng.create(d);b.getBytes=function(a,c){return b.generate(a,c)};b.getBytesSync=function(a){return b.generate(a)};return b}var d={},e=Array(4),k=a.util.createBuffer();d.formatKey=function(b){var c=a.util.createBuffer(b);b=Array(4);
376
-b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var n=c(),g="undefined"!==typeof process&&process.versions&&
377
-process.versions.node,h=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(h=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!g&&!h){n.collectInt(+new Date,32);if("undefined"!==typeof navigator){var g="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(g+=navigator[p])}catch(r){}n.collect(g);g=null}b&&(b().mousemove(function(a){n.collectInt(a.clientX,16);n.collectInt(a.clientY,16)}),b().keypress(function(a){n.collectInt(a.charCode,
378
-8)}))}if(a.random)for(p in n)a.random[p]=n[p];else a.random=n;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var m=0;m<e.length;++m)e[m](c);
379
-return c.random}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
376
+b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return a.aes._expandKey(b,!1)};d.formatSeed=function(b){var c=a.util.createBuffer(b);b=Array(4);b[0]=c.getInt32();b[1]=c.getInt32();b[2]=c.getInt32();b[3]=c.getInt32();return b};d.cipher=function(b,c){a.aes._updateBlock(b,c,e,!1);k.putInt32(e[0]);k.putInt32(e[1]);k.putInt32(e[2]);k.putInt32(e[3]);return k.getBytes()};d.increment=function(a){++a[3];return a};d.md=a.md.sha256;var m=c(),h="undefined"!==typeof process&&process.versions&&
377
+process.versions.node,g=null;if("undefined"!==typeof window){var v=window.crypto||window.msCrypto;v&&v.getRandomValues&&(g=function(a){return v.getRandomValues(a)})}if(a.disableNativeCode||!h&&!g){m.collectInt(+new Date,32);if("undefined"!==typeof navigator){var h="",p;for(p in navigator)try{"string"==typeof navigator[p]&&(h+=navigator[p])}catch(q){}m.collect(h);h=null}b&&(b().mousemove(function(a){m.collectInt(a.clientX,16);m.collectInt(a.clientY,16)}),b().keypress(function(a){m.collectInt(a.charCode,
378
+8)}))}if(a.random)for(p in m)a.random[p]=m[p];else a.random=m;a.random.createInstance=c}("undefined"!==typeof jQuery?jQuery:null)}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.random)return c.random;c.defined.random=!0;for(var n=0;n<e.length;++n)e[n](c);
379
+return c.random}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/random","require module ./aes ./md ./prng ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,
380
139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,
381
-175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,g=b.length(),h=d,l=Math.ceil(h/8),h=255>>(h&7),k;for(k=g;128>k;k++)e.putByte(c[e.at(k-
382
-1)+e.at(k-g)&255]);e.setAt(128-l,c[e.at(128-l)&h]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var g=!1,h=null,m=null,l=null,k,y,p,z,r=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)r.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=r[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=r[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
383
-(b&65535)>>c|b<<16-c&65535;a[p]-=r[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=r[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));g=!1;h=a.util.createBuffer();m=c||new a.util.createBuffer;l=b;A.output=m},update:function(a){for(g||h.putBuffer(a);8<=h.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=h.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
384
-b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),m.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,h,!e);else{var c=8===h.length()?8:8-h.length();h.fillWithByte(c,c)}b&&(g=!0,A.update());!e&&(b=0===h.length())&&(a?b=a(8,m,!e):(a=m.length(),c=m.at(a-1),c>a?b=!1:m.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
385
-a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
386
-{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var m=0;m<e.length;++m)e[m](c);return c.rc2}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
387
-this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,q,h){for(;0<=--h;){var A=b*this.data[a++]+c.data[d]+q;q=Math.floor(A/67108864);c.data[d++]=A&67108863}return q}function k(a,b,c,d,e,q){var h=b&32767;for(b>>=15;0<=--q;){var A=this.data[a]&32767,g=this.data[a++]>>15,l=b*A+g*h,A=h*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*g+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
388
-c,d,e,q){var h=b&16383;for(b>>=14;0<=--q;){var A=this.data[a]&16383,g=this.data[a++]>>14,l=b*A+g*h,A=h*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*g;c.data[d++]=A&268435455}return e}function n(a,b){var c=G[a.charCodeAt(b)];return null==c?-1:c}function g(a){var b=d();b.fromInt(a);return b}function h(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function r(a){this.m=a;this.mp=a.invDigit();
389
-this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function C(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function F(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function H(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
390
-navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var G=[],u;M=48;for(u=0;9>=u;++u)G[M++]=u;M=97;for(u=10;36>u;++u)G[M++]=u;M=65;for(u=10;36>u;++u)G[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
391
-function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};r.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};r.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};r.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
392
-a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};r.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};r.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
393
-c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,q=!1,h=0;0<=--e;){var A=8==d?a[e]&255:n(a,e);0>A?"-"==a.charAt(e)&&(q=!0):(q=!1,0==h?this.data[this.t++]=A:h+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-h)-1)<<h,this.data[this.t++]=
394
-A>>this.DB-h):this.data[this.t-1]|=A<<h,h+=d,h>=this.DB&&(h-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<h&&(this.data[this.t-1]|=(1<<this.DB-h)-1<<h));this.clamp();q&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
395
-a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,q=Math.floor(a/this.DB),h=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+q+1]=this.data[A]>>d|h,h=(this.data[A]&e)<<c;for(A=q-1;0<=A;--A)b.data[A]=0;b.data[q]=h;b.t=this.t+q+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,q=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var h=
396
-c+1;h<this.t;++h)b.data[h-c-1]|=(this.data[h]&q)<<e,b.data[h-c]=this.data[h]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&q)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
397
-(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),q=d.t;for(b.t=q+e.t;0<=--q;)b.data[q]=0;for(q=0;q<e.t;++q)b.data[q+d.t]=d.am(0,e.data[q],b,q,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
398
-1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var q=a.abs();if(!(0>=q.t)){var A=this.abs();if(A.t<q.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var g=d(),l=this.s;a=a.s;var k=this.DB-h(q.data[q.t-1]);0<k?(q.lShiftTo(k,g),A.lShiftTo(k,e)):(q.copyTo(g),A.copyTo(e));q=g.t;A=g.data[q-1];if(0!=A){var n=A*(1<<this.F1)+(1<q?g.data[q-2]>>this.F2:0),F=this.FV/n,n=(1<<this.F1)/n,u=1<<this.F2,z=e.t,v=z-q,y=null==b?d():b;g.dlShiftTo(v,y);0<=e.compareTo(y)&&
399
-(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(q,y);for(y.subTo(g,g);g.t<q;)g.data[g.t++]=0;for(;0<=--v;){var H=e.data[--z]==A?this.DM:Math.floor(e.data[z]*F+(e.data[z-1]+u)*n);if((e.data[z]+=g.am(0,H,e,v,0,q))<H)for(g.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--H;)e.subTo(y,e)}null!=b&&(e.drShiftTo(q,b),l!=a&&c.ZERO.subTo(b,b));e.t=q;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
400
-(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),q=d(),A=b.convert(this),g=h(a)-1;for(A.copyTo(e);0<=--g;)if(b.sqrTo(e,q),0<(a&1<<g))b.mulTo(q,A,e);else var l=e,e=q,q=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
401
-4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",q=this.t,h=this.DB-q*this.DB%a;if(0<q--)for(h<this.DB&&0<(c=this.data[q]>>h)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=q;)h<a?(c=(this.data[q]&(1<<h)-1)<<a-h,c|=this.data[--q]>>(h+=this.DB-a)):(c=this.data[q]>>(h-=a)&b,0>=h&&(h+=this.DB,--q)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
402
-d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+h(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
403
-b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new r(b);return this.exp(a,c)};c.ZERO=g(0);c.ONE=g(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};F.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 b=d();a.copyTo(b);this.reduce(b);return b};F.prototype.revert=function(a){return a};F.prototype.reduce=function(a){a.drShiftTo(this.m.t-
404
-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)};F.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};F.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
381
+175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],d=[1,2,3,5];a.rc2=a.rc2||{};a.rc2.expandKey=function(b,d){"string"===typeof b&&(b=a.util.createBuffer(b));d=d||128;var e=b,h=b.length(),g=d,l=Math.ceil(g/8),g=255>>(g&7),k;for(k=h;128>k;k++)e.putByte(c[e.at(k-
382
+1)+e.at(k-h)&255]);e.setAt(128-l,c[e.at(128-l)&g]);for(k=127-l;0<=k;k--)e.setAt(k,c[e.at(k+1)^e.at(k+l)]);return e};var e=function(b,c,e){var h=!1,g=null,n=null,l=null,k,y,p,z,q=[];b=a.rc2.expandKey(b,c);for(p=0;64>p;p++)q.push(b.getInt16Le());e?(k=function(a){for(p=0;4>p;p++){a[p]+=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);var b=a[p],c=d[p];a[p]=b<<c&65535|(b&65535)>>16-c;z++}},y=function(a){for(p=0;4>p;p++)a[p]+=q[a[(p+3)%4]&63]}):(k=function(a){for(p=3;0<=p;p--){var b=a[p],c=d[p];a[p]=
383
+(b&65535)>>c|b<<16-c&65535;a[p]-=q[z]+(a[(p+3)%4]&a[(p+2)%4])+(~a[(p+3)%4]&a[(p+1)%4]);z--}},y=function(a){for(p=3;0<=p;p--)a[p]-=q[a[(p+3)%4]&63]});var A=null;return A={start:function(b,c){b&&"string"===typeof b&&(b=a.util.createBuffer(b));h=!1;g=a.util.createBuffer();n=c||new a.util.createBuffer;l=b;A.output=n},update:function(a){for(h||g.putBuffer(a);8<=g.length();){a=[[5,k],[1,y],[6,k],[1,y],[5,k]];var b=[];for(p=0;4>p;p++){var c=g.getInt16Le();null!==l&&(e?c^=l.getInt16Le():l.putInt16Le(c));
384
+b.push(c&65535)}z=e?0:63;for(c=0;c<a.length;c++)for(var d=0;d<a[c][0];d++)a[c][1](b);for(p=0;4>p;p++)null!==l&&(e?l.putInt16Le(b[p]):b[p]^=l.getInt16Le()),n.putInt16Le(b[p])}},finish:function(a){var b=!0;if(e)if(a)b=a(8,g,!e);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(h=!0,A.update());!e&&(b=0===g.length())&&(a?b=a(8,n,!e):(a=n.length(),c=n.at(a-1),c>a?b=!1:n.truncate(c)));return b}}};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);b.start(c,d);return b};
385
+a.rc2.createEncryptionCipher=function(a,b){return e(a,b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);b.start(c,d);return b};a.rc2.createDecryptionCipher=function(a,b){return e(a,b,!1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
386
+{};if(c.defined.rc2)return c.rc2;c.defined.rc2=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rc2}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rc2",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d){this.data=[];null!=a&&("number"==typeof a?
387
+this.fromNumber(a,b,d):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function d(){return new c(null)}function e(a,b,c,d,r,g){for(;0<=--g;){var A=b*this.data[a++]+c.data[d]+r;r=Math.floor(A/67108864);c.data[d++]=A&67108863}return r}function k(a,b,c,d,e,r){var g=b&32767;for(b>>=15;0<=--r;){var A=this.data[a]&32767,h=this.data[a++]>>15,l=b*A+h*g,A=g*A+((l&32767)<<15)+c.data[d]+(e&1073741823);e=(A>>>30)+(l>>>15)+b*h+(e>>>30);c.data[d++]=A&1073741823}return e}function p(a,b,
388
+c,d,e,r){var g=b&16383;for(b>>=14;0<=--r;){var A=this.data[a]&16383,h=this.data[a++]>>14,l=b*A+h*g,A=g*A+((l&16383)<<14)+c.data[d]+e;e=(A>>28)+(l>>14)+b*h;c.data[d++]=A&268435455}return e}function m(a,b){var c=H[a.charCodeAt(b)];return null==c?-1:c}function h(a){var b=d();b.fromInt(a);return b}function g(a){var b=1,c;0!=(c=a>>>16)&&(a=c,b+=16);0!=(c=a>>8)&&(a=c,b+=8);0!=(c=a>>4)&&(a=c,b+=4);0!=(c=a>>2)&&(a=c,b+=2);0!=a>>1&&(b+=1);return b}function v(a){this.m=a}function q(a){this.m=a;this.mp=a.invDigit();
389
+this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<a.DB-15)-1;this.mt2=2*a.t}function D(a,b){return a&b}function y(a,b){return a|b}function B(a,b){return a^b}function z(a,b){return a&~b}function O(){}function A(a){return a}function G(a){this.r2=d();this.q3=d();c.ONE.dlShiftTo(2*a.t,this.r2);this.mu=this.r2.divide(a);this.m=a}function I(){return{nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}}}var M;"undefined"===typeof navigator?(c.prototype.am=p,M=28):"Microsoft Internet Explorer"==
390
+navigator.appName?(c.prototype.am=k,M=30):"Netscape"!=navigator.appName?(c.prototype.am=e,M=26):(c.prototype.am=p,M=28);c.prototype.DB=M;c.prototype.DM=(1<<M)-1;c.prototype.DV=1<<M;c.prototype.FV=Math.pow(2,52);c.prototype.F1=52-M;c.prototype.F2=2*M-52;var H=[],u;M=48;for(u=0;9>=u;++u)H[M++]=u;M=97;for(u=10;36>u;++u)H[M++]=u;M=65;for(u=10;36>u;++u)H[M++]=u;v.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};v.prototype.revert=function(a){return a};v.prototype.reduce=
391
+function(a){a.divRemTo(this.m,null,a)};v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};v.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};q.prototype.convert=function(a){var b=d();a.abs().dlShiftTo(this.m.t,b);b.divRemTo(this.m,null,b);0>a.s&&0<b.compareTo(c.ZERO)&&this.m.subTo(b,b);return b};q.prototype.revert=function(a){var b=d();a.copyTo(b);this.reduce(b);return b};q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=
392
+a.data[b]&32767,d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};c.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};
393
+c.prototype.fromInt=function(a){this.t=1;this.s=0>a?-1:0;0<a?this.data[0]=a:-1>a?this.data[0]=a+this.DV:this.t=0};c.prototype.fromString=function(a,b){var d;if(16==b)d=4;else if(8==b)d=3;else if(256==b)d=8;else if(2==b)d=1;else if(32==b)d=5;else if(4==b)d=2;else{this.fromRadix(a,b);return}this.s=this.t=0;for(var e=a.length,r=!1,g=0;0<=--e;){var A=8==d?a[e]&255:m(a,e);0>A?"-"==a.charAt(e)&&(r=!0):(r=!1,0==g?this.data[this.t++]=A:g+d>this.DB?(this.data[this.t-1]|=(A&(1<<this.DB-g)-1)<<g,this.data[this.t++]=
394
+A>>this.DB-g):this.data[this.t-1]|=A<<g,g+=d,g>=this.DB&&(g-=this.DB))}8==d&&0!=(a[0]&128)&&(this.s=-1,0<g&&(this.data[this.t-1]|=(1<<this.DB-g)-1<<g));this.clamp();r&&c.ZERO.subTo(this,this)};c.prototype.clamp=function(){for(var a=this.s&this.DM;0<this.t&&this.data[this.t-1]==a;)--this.t};c.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;0<=c;--c)b.data[c+a]=this.data[c];for(c=a-1;0<=c;--c)b.data[c]=0;b.t=this.t+a;b.s=this.s};c.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-
395
+a]=this.data[c];b.t=Math.max(this.t-a,0);b.s=this.s};c.prototype.lShiftTo=function(a,b){var c=a%this.DB,d=this.DB-c,e=(1<<d)-1,r=Math.floor(a/this.DB),g=this.s<<c&this.DM,A;for(A=this.t-1;0<=A;--A)b.data[A+r+1]=this.data[A]>>d|g,g=(this.data[A]&e)<<c;for(A=r-1;0<=A;--A)b.data[A]=0;b.data[r]=g;b.t=this.t+r+1;b.s=this.s;b.clamp()};c.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t)b.t=0;else{var d=a%this.DB,e=this.DB-d,r=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=
396
+c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&r)<<e,b.data[g-c]=this.data[g]>>d;0<d&&(b.data[this.t-c-1]|=(this.s&r)<<e);b.t=this.t-c;b.clamp()}};c.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0<d&&
397
+(b.data[c++]=d);b.t=c;b.clamp()};c.prototype.multiplyTo=function(a,b){var d=this.abs(),e=a.abs(),r=d.t;for(b.t=r+e.t;0<=--r;)b.data[r]=0;for(r=0;r<e.t;++r)b.data[r+d.t]=d.am(0,e.data[r],b,r,0,d.t);b.s=0;b.clamp();this.s!=a.s&&c.ZERO.subTo(b,b)};c.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;0<=--c;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0<a.t&&(a.data[a.t-
398
+1]+=b.am(c,b.data[c],a,2*c,0,1));a.s=0;a.clamp()};c.prototype.divRemTo=function(a,b,e){var r=a.abs();if(!(0>=r.t)){var A=this.abs();if(A.t<r.t)null!=b&&b.fromInt(0),null!=e&&this.copyTo(e);else{null==e&&(e=d());var h=d(),l=this.s;a=a.s;var k=this.DB-g(r.data[r.t-1]);0<k?(r.lShiftTo(k,h),A.lShiftTo(k,e)):(r.copyTo(h),A.copyTo(e));r=h.t;A=h.data[r-1];if(0!=A){var m=A*(1<<this.F1)+(1<r?h.data[r-2]>>this.F2:0),G=this.FV/m,m=(1<<this.F1)/m,u=1<<this.F2,z=e.t,v=z-r,y=null==b?d():b;h.dlShiftTo(v,y);0<=e.compareTo(y)&&
399
+(e.data[e.t++]=1,e.subTo(y,e));c.ONE.dlShiftTo(r,y);for(y.subTo(h,h);h.t<r;)h.data[h.t++]=0;for(;0<=--v;){var I=e.data[--z]==A?this.DM:Math.floor(e.data[z]*G+(e.data[z-1]+u)*m);if((e.data[z]+=h.am(0,I,e,v,0,r))<I)for(h.dlShiftTo(v,y),e.subTo(y,e);e.data[z]<--I;)e.subTo(y,e)}null!=b&&(e.drShiftTo(r,b),l!=a&&c.ZERO.subTo(b,b));e.t=r;e.clamp();0<k&&e.rShiftTo(k,e);0>l&&c.ZERO.subTo(e,e)}}}};c.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3,b=b*(2-
400
+(a&15)*b)&15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV;return 0<b?this.DV-b:-b};c.prototype.isEven=function(){return 0==(0<this.t?this.data[0]&1:this.s)};c.prototype.exp=function(a,b){if(4294967295<a||1>a)return c.ONE;var e=d(),r=d(),A=b.convert(this),h=g(a)-1;for(A.copyTo(e);0<=--h;)if(b.sqrTo(e,r),0<(a&1<<h))b.mulTo(r,A,e);else var l=e,e=r,r=l;return b.revert(e)};c.prototype.toString=function(a){if(0>this.s)return"-"+this.negate().toString(a);if(16==a)a=
401
+4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.toRadix(a);var b=(1<<a)-1,c,d=!1,e="",r=this.t,g=this.DB-r*this.DB%a;if(0<r--)for(g<this.DB&&0<(c=this.data[r]>>g)&&(d=!0,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=r;)g<a?(c=(this.data[r]&(1<<g)-1)<<a-g,c|=this.data[--r]>>(g+=this.DB-a)):(c=this.data[r]>>(g-=a)&b,0>=g&&(g+=this.DB,--r)),0<c&&(d=!0),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));return d?e:"0"};c.prototype.negate=function(){var a=
402
+d();c.ZERO.subTo(this,a);return a};c.prototype.abs=function(){return 0>this.s?this.negate():this};c.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};c.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+g(this.data[this.t-1]^this.s&this.DM)};c.prototype.mod=function(a){var b=d();this.abs().divRemTo(a,null,b);0>this.s&&0<b.compareTo(c.ZERO)&&a.subTo(b,
403
+b);return b};c.prototype.modPowInt=function(a,b){var c;c=256>a||b.isEven()?new v(b):new q(b);return this.exp(a,c)};c.ZERO=h(0);c.ONE=h(1);O.prototype.convert=A;O.prototype.revert=A;O.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};O.prototype.sqrTo=function(a,b){a.squareTo(b)};G.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 b=d();a.copyTo(b);this.reduce(b);return b};G.prototype.revert=function(a){return a};G.prototype.reduce=function(a){a.drShiftTo(this.m.t-
404
+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)};G.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};G.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var R=[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,
405
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],S=67108864/R[R.length-1];c.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};c.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36<a)return"0";var b=this.chunkSize(a),b=Math.pow(a,
406
-b),c=g(b),e=d(),q=d(),h="";for(this.divRemTo(c,e,q);0<e.signum();)h=(b+q.intValue()).toString(a).substr(1)+h,e.divRemTo(c,e,q);return q.intValue().toString(a)+h};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),q=!1,h=0,A=0,g=0;g<a.length;++g){var l=n(a,g);0>l?"-"==a.charAt(g)&&0==this.signum()&&(q=!0):(A=b*A+l,++h>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=h=0))}0<h&&(this.dMultiply(Math.pow(b,h)),this.dAddOffset(A,0));q&&c.ZERO.subTo(this,
407
-this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,q=Math.min(a.t,this.t);for(d=
408
-0;d<q;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=q;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=q;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
406
+b),c=h(b),e=d(),r=d(),g="";for(this.divRemTo(c,e,r);0<e.signum();)g=(b+r.intValue()).toString(a).substr(1)+g,e.divRemTo(c,e,r);return r.intValue().toString(a)+g};c.prototype.fromRadix=function(a,b){this.fromInt(0);null==b&&(b=10);for(var d=this.chunkSize(b),e=Math.pow(b,d),r=!1,g=0,A=0,h=0;h<a.length;++h){var l=m(a,h);0>l?"-"==a.charAt(h)&&0==this.signum()&&(r=!0):(A=b*A+l,++g>=d&&(this.dMultiply(e),this.dAddOffset(A,0),A=g=0))}0<g&&(this.dMultiply(Math.pow(b,g)),this.dAddOffset(A,0));r&&c.ZERO.subTo(this,
407
+this)};c.prototype.fromNumber=function(a,b,d){if("number"==typeof b)if(2>a)this.fromInt(1);else for(this.fromNumber(a,d),this.testBit(a-1)||this.bitwiseTo(c.ONE.shiftLeft(a-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(c.ONE.shiftLeft(a-1),this);else{d=[];var e=a&7;d.length=(a>>3)+1;b.nextBytes(d);d[0]=0<e?d[0]&(1<<e)-1:0;this.fromString(d,256)}};c.prototype.bitwiseTo=function(a,b,c){var d,e,r=Math.min(a.t,this.t);for(d=
408
+0;d<r;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){e=a.s&this.DM;for(d=r;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{e=this.s&this.DM;for(d=r;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s);c.clamp()};c.prototype.changeBit=function(a,b){var d=c.ONE.shiftLeft(a);this.bitwiseTo(d,b,d);return d};c.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=
409
this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=0>d?-1:0;0<d?b.data[c++]=d:-1>d&&(b.data[c++]=this.DV+d);b.t=c;b.clamp()};c.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t);++this.t;this.clamp()};c.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=
410
0),++this.data[b]}};c.prototype.multiplyLowerTo=function(a,b,c){var d=Math.min(this.t+a.t,b);c.s=0;for(c.t=d;0<d;)c.data[--d]=0;var e;for(e=c.t-this.t;d<e;++d)c.data[d+this.t]=this.am(0,a.data[d],c,d,0,this.t);for(e=Math.min(a.t,b);d<e;++d)this.am(0,a.data[d],c,d,0,b-d);c.clamp()};c.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;0<=--d;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp();c.drShiftTo(1,
411
-c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),q=H(),h,A=0;A<a;++A){do h=new c(this.bitLength(),q);while(0>=h.compareTo(c.ONE)||0<=h.compareTo(b));h=h.modPow(e,this);if(0!=h.compareTo(c.ONE)&&0!=h.compareTo(b)){for(var g=1;g++<d&&0!=
412
-h.compareTo(b);)if(h=h.modPowInt(2,this),0==h.compareTo(c.ONE))return!1;if(0!=h.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
411
+c)};c.prototype.modInt=function(a){if(0>=a)return 0;var b=this.DV%a,c=0>this.s?a-1:0;if(0<this.t)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;0<=d;--d)c=(b*c+this.data[d])%a;return c};c.prototype.millerRabin=function(a){var b=this.subtract(c.ONE),d=b.getLowestSetBit();if(0>=d)return!1;for(var e=b.shiftRight(d),r=I(),g,A=0;A<a;++A){do g=new c(this.bitLength(),r);while(0>=g.compareTo(c.ONE)||0<=g.compareTo(b));g=g.modPow(e,this);if(0!=g.compareTo(c.ONE)&&0!=g.compareTo(b)){for(var h=1;h++<d&&0!=
412
+g.compareTo(b);)if(g=g.modPowInt(2,this),0==g.compareTo(c.ONE))return!1;if(0!=g.compareTo(b))return!1}}return!0};c.prototype.clone=function(){var a=d();this.copyTo(a);return a};c.prototype.intValue=function(){if(0>this.s){if(1==this.t)return this.data[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this.data[0];if(0==this.t)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]};c.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24};c.prototype.shortValue=
413
function(){return 0==this.t?this.s:this.data[0]<<16>>16};c.prototype.signum=function(){return 0>this.s?-1:0>=this.t||1==this.t&&0>=this.data[0]?0:1};c.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c=this.DB-a*this.DB%8,d,e=0;if(0<a--)for(c<this.DB&&(d=this.data[a]>>c)!=(this.s&this.DM)>>c&&(b[e++]=d|this.s<<this.DB-c);0<=a;)if(8>c?(d=(this.data[a]&(1<<c)-1)<<8-c,d|=this.data[--a]>>(c+=this.DB-8)):(d=this.data[a]>>(c-=8)&255,0>=c&&(c+=this.DB,--a)),0!=(d&128)&&(d|=-256),0==e&&
414
-(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,C,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
414
+(this.s&128)!=(d&128)&&++e,0<e||d!=this.s)b[e++]=d;return b};c.prototype.equals=function(a){return 0==this.compareTo(a)};c.prototype.min=function(a){return 0>this.compareTo(a)?this:a};c.prototype.max=function(a){return 0<this.compareTo(a)?this:a};c.prototype.and=function(a){var b=d();this.bitwiseTo(a,D,b);return b};c.prototype.or=function(a){var b=d();this.bitwiseTo(a,y,b);return b};c.prototype.xor=function(a){var b=d();this.bitwiseTo(a,B,b);return b};c.prototype.andNot=function(a){var b=d();this.bitwiseTo(a,
415
z,b);return b};c.prototype.not=function(){for(var a=d(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];a.t=this.t;a.s=~this.s;return a};c.prototype.shiftLeft=function(a){var b=d();0>a?this.rShiftTo(-a,b):this.lShiftTo(a,b);return b};c.prototype.shiftRight=function(a){var b=d();0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b);return b};c.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a]){var b=a*this.DB;a=this.data[a];if(0==a)a=-1;else{var c=0;0==(a&65535)&&(a>>=16,c+=16);
416
0==(a&255)&&(a>>=8,c+=8);0==(a&15)&&(a>>=4,c+=4);0==(a&3)&&(a>>=2,c+=2);0==(a&1)&&++c;a=c}return b+a}return 0>this.s?this.t*this.DB:-1};c.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c){for(var d=this.data[c]^b,e=0;0!=d;)d&=d-1,++e;a+=e}return a};c.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:0!=(this.data[b]&1<<a%this.DB)};c.prototype.setBit=function(a){return this.changeBit(a,y)};c.prototype.clearBit=function(a){return this.changeBit(a,
417
-z)};c.prototype.flipBit=function(a){return this.changeBit(a,C)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
418
-c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,q=g(1),A;if(0>=c)return q;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new F(b):new r(b);var l=[],m=3,k=e-1,n=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);m<=n;)l[m]=d(),A.mulTo(c,l[m-2],l[m]),m+=2;for(var u=a.t-1,z,y=!0,H=d(),c=h(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&n:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(m=e;0==(z&1);)z>>=1,--m;0>(c-=m)&&(c+=this.DB,--u);
419
-if(y)l[z].copyTo(q),y=!1;else{for(;1<m;)A.sqrTo(q,H),A.sqrTo(H,q),m-=2;0<m?A.sqrTo(q,H):(m=q,q=H,H=m);A.mulTo(H,l[z],q)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(q,H),m=q,q=H,H=m,0>--c&&(c=this.DB-1,--u)}return A.revert(q)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),q=g(1),h=g(0),A=g(0),l=g(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(q.isEven()&&h.isEven()||(q.addTo(this,q),h.subTo(a,h)),q.rShiftTo(1,
420
-q)):h.isEven()||h.subTo(a,h),h.rShiftTo(1,h);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&q.subTo(A,q),h.subTo(l,h)):(e.subTo(d,e),b&&A.subTo(q,A),l.subTo(h,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
417
+z)};c.prototype.flipBit=function(a){return this.changeBit(a,B)};c.prototype.add=function(a){var b=d();this.addTo(a,b);return b};c.prototype.subtract=function(a){var b=d();this.subTo(a,b);return b};c.prototype.multiply=function(a){var b=d();this.multiplyTo(a,b);return b};c.prototype.divide=function(a){var b=d();this.divRemTo(a,b,null);return b};c.prototype.remainder=function(a){var b=d();this.divRemTo(a,null,b);return b};c.prototype.divideAndRemainder=function(a){var b=d(),c=d();this.divRemTo(a,b,
418
+c);return[b,c]};c.prototype.modPow=function(a,b){var c=a.bitLength(),e,r=h(1),A;if(0>=c)return r;e=18>c?1:48>c?3:144>c?4:768>c?5:6;A=8>c?new v(b):b.isEven()?new G(b):new q(b);var l=[],n=3,k=e-1,m=(1<<e)-1;l[1]=A.convert(this);if(1<e)for(c=d(),A.sqrTo(l[1],c);n<=m;)l[n]=d(),A.mulTo(c,l[n-2],l[n]),n+=2;for(var u=a.t-1,z,y=!0,I=d(),c=g(a.data[u])-1;0<=u;){c>=k?z=a.data[u]>>c-k&m:(z=(a.data[u]&(1<<c+1)-1)<<k-c,0<u&&(z|=a.data[u-1]>>this.DB+c-k));for(n=e;0==(z&1);)z>>=1,--n;0>(c-=n)&&(c+=this.DB,--u);
419
+if(y)l[z].copyTo(r),y=!1;else{for(;1<n;)A.sqrTo(r,I),A.sqrTo(I,r),n-=2;0<n?A.sqrTo(r,I):(n=r,r=I,I=n);A.mulTo(I,l[z],r)}for(;0<=u&&0==(a.data[u]&1<<c);)A.sqrTo(r,I),n=r,r=I,I=n,0>--c&&(c=this.DB-1,--u)}return A.revert(r)};c.prototype.modInverse=function(a){var b=a.isEven();if(this.isEven()&&b||0==a.signum())return c.ZERO;for(var d=a.clone(),e=this.clone(),r=h(1),g=h(0),A=h(0),l=h(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),b?(r.isEven()&&g.isEven()||(r.addTo(this,r),g.subTo(a,g)),r.rShiftTo(1,
420
+r)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;e.isEven();)e.rShiftTo(1,e),b?(A.isEven()&&l.isEven()||(A.addTo(this,A),l.subTo(a,l)),A.rShiftTo(1,A)):l.isEven()||l.subTo(a,l),l.rShiftTo(1,l);0<=d.compareTo(e)?(d.subTo(e,d),b&&r.subTo(A,r),g.subTo(l,g)):(e.subTo(d,e),b&&A.subTo(r,A),l.subTo(g,l))}if(0!=e.compareTo(c.ONE))return c.ZERO;if(0<=l.compareTo(a))return l.subtract(a);if(0>l.signum())l.addTo(a,l);else return l;return 0>l.signum()?l.add(a):l};c.prototype.pow=function(a){return this.exp(a,
421
new O)};c.prototype.gcd=function(a){var b=0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();if(0>b.compareTo(a)){var c=b,b=a;a=c}var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c<d&&(d=c);0<d&&(b.rShiftTo(d,b),a.rShiftTo(d,a));for(;0<b.signum();)0<(c=b.getLowestSetBit())&&b.rShiftTo(c,b),0<(c=a.getLowestSetBit())&&a.rShiftTo(c,a),0<=b.compareTo(a)?(b.subTo(a,b),b.rShiftTo(1,b)):(a.subTo(b,a),a.rShiftTo(1,a));0<d&&a.lShiftTo(d,a);return a};c.prototype.isProbablePrime=
422
-function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,
423
-p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var m=0;m<e.length;++m)e[m](c);return c.jsbn}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
424
-0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var m="",g=Math.ceil(d/e.digestLength),h=0;h<g;++h){var k=String.fromCharCode(h>>24&255,h>>16&255,h>>8&255,h&255);e.start();e.update(b+k);m+=e.digest().getBytes()}return m.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,g){var h,v,p,w;"string"===typeof e?(h=e,v=k||void 0,p=g||void 0):e&&(h=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
425
-w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;h||(h="");p.update(h,"raw");h=p.digest();k="";e-=d.length;for(g=0;g<e;g++)k+="\x00";d=h.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
426
-w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var g,h,v;"string"===typeof e?(g=e,h=k||void 0):e&&(g=e.label||void 0,h=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===h?h=a.md.sha1.create():h.start();v||(v=h);if(e<2*h.digestLength+
427
-2)throw Error("RSAES-OAEP key is too short for the hash function.");g||(g="");h.update(g,"raw");g=h.digest().getBytes();b=d.charAt(0);k=d.substring(1,h.digestLength+1);d=d.substring(1+h.digestLength);var p=c(d,h.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-h.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,h.digestLength);v="\x00"!==b;for(b=0;b<h.digestLength;++b)v|=g.charAt(b)!==e.charAt(b);g=1;for(h=b=h.digestLength;h<d.length;h++)e=d.charCodeAt(h),k=e&1^1,v|=e&(g?65534:
428
-0),g&=k,b+=g;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var m=0;m<e.length;++m)e[m](c);return c.pkcs1}},
429
-k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,q,h){return"workers"in q?e(a,b,q,h):d(a,b,q,h)}function d(b,c,e,g){var l=k(b,c),A=0,m=p(l.bitLength());"millerRabinTests"in
430
-e&&(m=e.millerRabinTests);var n=10;"maxBlockTime"in e&&(n=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(m))return g(null,l);l.dAddOffset(h[A++%8],0)}while(0>n||+new Date-v<n);a.util.setImmediate(function(){d(b,c,e,g)})}function e(b,c,h,l){function m(){function a(e){if(!h){--q;var m=e.data;if(m.found){for(e=0;e<d.length;++e)d[e].terminate();h=!0;return l(null,new g(m.prime,16))}A.bitLength()>b&&(A=k(b,c));m=A.toString(16);e.target.postMessage({hex:m,workLoad:v});
431
-A.dAddOffset(p,0)}}n=Math.max(1,n);for(var d=[],e=0;e<n;++e)d[e]=new Worker(r);for(var q=n,e=0;e<n;++e)d[e].addEventListener("message",a);var h=!1}if("undefined"===typeof Worker)return d(b,c,h,l);var A=k(b,c),n=h.workers,v=h.workLoad||100,p=30*v/8,r=h.workerScript||"forge/prime.worker.js";if(-1===n)return a.util.estimateCores(function(a,b){a&&(b=2);n=b-1;m()});m()}function k(a,b){var c=new g(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(g.ONE.shiftLeft(d),r,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
432
-function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var n=a.prime=a.prime||{},g=a.jsbn.BigInteger,h=[6,4,2,4,2,4,6,2],v=new g(null);v.fromInt(30);var r=function(a,b){return a|b};n.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var h=d.algorithm||"PRIMEINC";"string"===typeof h&&(h={name:h});h.options=h.options||{};var g=d.prng||a.random;d={nextBytes:function(a){for(var b=g.getBytesSync(a.length),
433
-c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===h.name)return c(b,d,h.options,e);throw Error("Invalid prime generation algorithm: "+h.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var m=
434
-0;m<e.length;++m)e[m](c);return c.prime}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var h=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw h=
435
-Error("Message is too long for PKCS#1 v1.5 padding."),h.length=b.length,h.max=d-11,h;h.putByte(0);h.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var g=0;g<d;++g)h.putByte(e)}else for(;0<d;){for(var l=0,m=a.random.getBytes(d),g=0;g<d;++g)e=m.charCodeAt(g),0===e?++l:h.putByte(e);d=l}h.putByte(0);h.putBytes(b);return h}function d(b,c,e,h){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var g=b.getByte(),l=b.getByte();if(0!==g||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
436
-typeof h)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-h,h=0;h<e;++h){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function g(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return m(a,
437
-b.q);l(b.qBits,m)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function m(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(n.ONE).gcd(b.e).compareTo(n.ONE)?(b.p=null,g()):0!==b.q.subtract(n.ONE).gcd(b.e).compareTo(n.ONE)?(b.q=null,l(b.qBits,m)):(b.p1=b.p.subtract(n.ONE),b.q1=b.q.subtract(n.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(n.ONE)?(b.p=b.q=null,g()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,m)):
438
-(e=b.e.modInverse(b.phi),b.keys={privateKey:h.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:h.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);g()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
439
-150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof n)var n=a.jsbn.BigInteger;var g=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var h=a.pki,v=[6,4,2,4,2,4,6,2],r={name:"PrivateKeyInfo",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:g.Class.UNIVERSAL,
440
-type:g.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:g.Class.UNIVERSAL,type:g.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
441
-tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
442
-tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:g.Class.UNIVERSAL,
443
-type:g.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},C=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:g.Class.UNIVERSAL,
444
-type:g.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:g.Class.UNIVERSAL,type:g.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in h.oids)b=h.oids[a.algorithm];
445
-else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=g.oidToDer(b).getBytes();b=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]);var d=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]);d.value.push(g.create(g.Class.UNIVERSAL,g.Type.OID,!1,c));d.value.push(g.create(g.Class.UNIVERSAL,g.Type.NULL,!1,""));a=g.create(g.Class.UNIVERSAL,g.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return g.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
446
-c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(n.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(n.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new n(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(n.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
447
-b.multiply(d.modInverse(c.n)).mod(c.n)};h.rsa.encrypt=function(b,d,e){var h=e,g=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(h=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new n(e.toHex(),16);d=O(b,d,h).toString(16);h=a.util.createBuffer();for(g-=Math.ceil(d.length/2);0<g;)h.putByte(0),--g;h.putBytes(a.util.hexToBytes(d));return h.getBytes()};h.rsa.decrypt=function(b,c,e,h){var g=Math.ceil(c.n.bitLength()/8);if(b.length!==g)throw c=Error("Encrypted message length is invalid."),c.length=
448
-b.length,c.expected=g,c;b=new n(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),g=g-Math.ceil(b.length/2);0<g;)l.putByte(0),--g;l.putBytes(a.util.hexToBytes(b));return!1!==h?d(l.getBytes(),c,e):l.getBytes()};h.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,h={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
449
-c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:h,eInt:c||65537,e:new n(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};h.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new n(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},q=+new Date,g,l=0;null===a.keys&&
450
-(0>=b||l<b);){if(0===a.state){g=null===a.p?a.pBits:a.qBits;var m=g-1;0===a.pqState?(a.num=new n(g,a.rng),a.num.testBit(m)||a.num.bitwiseTo(n.ONE.shiftLeft(m),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>g?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(n.ONE).gcd(a.e).compareTo(n.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
451
-null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(n.ONE),a.q1=a.q.subtract(n.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(n.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(g=a.e.modInverse(a.phi),a.keys={privateKey:h.rsa.setPrivateKey(a.n,a.e,g,a.p,a.q,
452
-g.mod(a.p1),g.mod(a.q1),a.q.modInverse(a.p)),publicKey:h.rsa.setPublicKey(a.n,a.e)});g=+new Date;l+=g-q;q=g}return null!==a.keys};h.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
453
-c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var q=h.rsa.createKeyPairGenerationState(a,b,c);if(!d)return h.rsa.stepKeyPairGenerationState(q,0),q.keys;e(q,c,d)};h.setRsaPublicKey=h.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
454
-b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return h.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=g.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
455
-l,!0);return a===b}};b=h.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};h.setRsaPrivateKey=h.rsa.setPrivateKey=function(b,c,e,g,l,m,k,n){var v={n:b,e:c,d:e,p:g,q:l,dP:m,dQ:k,qInv:n,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=h.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
456
-"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return h.rsa.encrypt(d,v,c)}};return v};h.wrapRsaPrivateKey=function(a){return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,
457
-[g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,g.integerToDer(0).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(h.oids.rsaEncryption).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.NULL,!1,"")]),g.create(g.Class.UNIVERSAL,g.Type.OCTETSTRING,!1,g.toDer(a).getBytes())])};h.privateKeyFromAsn1=function(b){var c={},d=[];g.validate(b,r,c,d)&&(b=g.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!g.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
458
-c.errors=d,c;var e,l,m,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();m=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return h.setRsaPrivateKey(new n(d,16),new n(b,
459
-16),new n(e,16),new n(l,16),new n(m,16),new n(k,16),new n(z,16),new n(c,16))};h.privateKeyToAsn1=h.privateKeyToRSAPrivateKey=function(a){return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,g.integerToDer(0).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,k(a.n)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,k(a.e)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,k(a.d)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,k(a.p)),g.create(g.Class.UNIVERSAL,
460
-g.Type.INTEGER,!1,k(a.q)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,k(a.dP)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,k(a.dQ)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,k(a.qInv))])};h.publicKeyFromAsn1=function(b){var c={},d=[];if(g.validate(b,C,c,d)){d=g.derToOid(c.publicKeyOid);if(d!==h.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!g.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
461
-c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return h.setRsaPublicKey(new n(d,16),new n(c,16))};h.publicKeyToAsn1=h.publicKeyToSubjectPublicKeyInfo=function(a){return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(h.oids.rsaEncryption).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.NULL,!1,"")]),g.create(g.Class.UNIVERSAL,g.Type.BITSTRING,
462
-!1,[h.publicKeyToRSAPublicKey(a)])])};h.publicKeyToRSAPublicKey=function(a){return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,k(a.n)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||
463
-{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var m=0;m<e.length;++m)e[m](c);return c.rsa}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
464
-b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,n={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
465
-{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},g={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
422
+function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=R[R.length-1]){for(b=0;b<R.length;++b)if(c.data[0]==R[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<R.length;){for(var d=R[b],e=b+1;e<R.length&&d<S;)d*=R[e++];for(d=c.modInt(d);b<e;)if(0==d%R[b++])return!1}return c.millerRabin(a)};a.jsbn=a.jsbn||{};a.jsbn.BigInteger=c}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
423
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.jsbn)return c.jsbn;c.defined.jsbn=!0;for(var n=0;n<e.length;++n)e[n](c);return c.jsbn}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/jsbn",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,
424
+0))})})();(function(){function b(a){function c(b,d,e){e||(e=a.md.sha1.create());for(var n="",h=Math.ceil(d/e.digestLength),g=0;g<h;++g){var k=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,g&255);e.start();e.update(b+k);n+=e.digest().getBytes()}return n.substring(0,d)}var d=a.pkcs1=a.pkcs1||{};d.encode_rsa_oaep=function(b,d,e,k,h){var g,v,p,w;"string"===typeof e?(g=e,v=k||void 0,p=h||void 0):e&&(g=e.label||void 0,v=e.seed||void 0,p=e.md||void 0,e.mgf1&&e.mgf1.md&&(w=e.mgf1.md));p?p.start():p=a.md.sha1.create();
425
+w||(w=p);b=Math.ceil(b.n.bitLength()/8);e=b-2*p.digestLength-2;if(d.length>e)throw w=Error("RSAES-OAEP input message length is too long."),w.length=d.length,w.maxLength=e,w;g||(g="");p.update(g,"raw");g=p.digest();k="";e-=d.length;for(h=0;h<e;h++)k+="\x00";d=g.getBytes()+k+"\u0001"+d;if(!v)v=a.random.getBytes(p.digestLength);else if(v.length!==p.digestLength)throw w=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length."),w.seedLength=v.length,w.digestLength=p.digestLength,
426
+w;b=c(v,b-p.digestLength-1,w);d=a.util.xorBytes(d,b,d.length);p=c(d,p.digestLength,w);return"\x00"+a.util.xorBytes(v,p,v.length)+d};d.decode_rsa_oaep=function(b,d,e,k){var h,g,v;"string"===typeof e?(h=e,g=k||void 0):e&&(h=e.label||void 0,g=e.md||void 0,e.mgf1&&e.mgf1.md&&(v=e.mgf1.md));e=Math.ceil(b.n.bitLength()/8);if(d.length!==e)throw v=Error("RSAES-OAEP encoded message length is invalid."),v.length=d.length,v.expectedLength=e,v;void 0===g?g=a.md.sha1.create():g.start();v||(v=g);if(e<2*g.digestLength+
427
+2)throw Error("RSAES-OAEP key is too short for the hash function.");h||(h="");g.update(h,"raw");h=g.digest().getBytes();b=d.charAt(0);k=d.substring(1,g.digestLength+1);d=d.substring(1+g.digestLength);var p=c(d,g.digestLength,v);k=a.util.xorBytes(k,p,k.length);v=c(k,e-g.digestLength-1,v);d=a.util.xorBytes(d,v,d.length);e=d.substring(0,g.digestLength);v="\x00"!==b;for(b=0;b<g.digestLength;++b)v|=h.charAt(b)!==e.charAt(b);h=1;for(g=b=g.digestLength;g<d.length;g++)e=d.charCodeAt(g),k=e&1^1,v|=e&(h?65534:
428
+0),h&=k,b+=h;if(v||1!==d.charCodeAt(b))throw Error("Invalid RSAES-OAEP padding.");return d.substring(b+1)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs1)return c.pkcs1;c.defined.pkcs1=!0;for(var n=0;n<e.length;++n)e[n](c);return c.pkcs1}},
429
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs1",["require","module","./util","./random","./sha1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,r,g){return"workers"in r?e(a,b,r,g):d(a,b,r,g)}function d(b,c,e,h){var l=k(b,c),A=0,n=p(l.bitLength());"millerRabinTests"in
430
+e&&(n=e.millerRabinTests);var m=10;"maxBlockTime"in e&&(m=e.maxBlockTime);var v=+new Date;do{l.bitLength()>b&&(l=k(b,c));if(l.isProbablePrime(n))return h(null,l);l.dAddOffset(g[A++%8],0)}while(0>m||+new Date-v<m);a.util.setImmediate(function(){d(b,c,e,h)})}function e(b,c,g,l){function n(){function a(e){if(!g){--r;var n=e.data;if(n.found){for(e=0;e<d.length;++e)d[e].terminate();g=!0;return l(null,new h(n.prime,16))}A.bitLength()>b&&(A=k(b,c));n=A.toString(16);e.target.postMessage({hex:n,workLoad:v});
431
+A.dAddOffset(p,0)}}m=Math.max(1,m);for(var d=[],e=0;e<m;++e)d[e]=new Worker(q);for(var r=m,e=0;e<m;++e)d[e].addEventListener("message",a);var g=!1}if("undefined"===typeof Worker)return d(b,c,g,l);var A=k(b,c),m=g.workers,v=g.workLoad||100,p=30*v/8,q=g.workerScript||"forge/prime.worker.js";if(-1===m)return a.util.estimateCores(function(a,b){a&&(b=2);m=b-1;n()});n()}function k(a,b){var c=new h(a,b),d=a-1;c.testBit(d)||c.bitwiseTo(h.ONE.shiftLeft(d),q,c);c.dAddOffset(31-c.mod(v).byteValue(),0);return c}
432
+function p(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m=a.prime=a.prime||{},h=a.jsbn.BigInteger,g=[6,4,2,4,2,4,6,2],v=new h(null);v.fromInt(30);var q=function(a,b){return a|b};m.generateProbablePrime=function(b,d,e){"function"===typeof d&&(e=d,d={});d=d||{};var g=d.algorithm||"PRIMEINC";"string"===typeof g&&(g={name:g});g.options=g.options||{};var h=d.prng||a.random;d={nextBytes:function(a){for(var b=h.getBytesSync(a.length),
433
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};if("PRIMEINC"===g.name)return c(b,d,g.options,e);throw Error("Invalid prime generation algorithm: "+g.name);}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.prime)return c.prime;c.defined.prime=!0;for(var n=
434
+0;n<e.length;++n)e[n](c);return c.prime}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/prime",["require","module","./util","./jsbn","./random"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d,e){var g=a.util.createBuffer();d=Math.ceil(d.n.bitLength()/8);if(b.length>d-11)throw g=
435
+Error("Message is too long for PKCS#1 v1.5 padding."),g.length=b.length,g.max=d-11,g;g.putByte(0);g.putByte(e);d=d-3-b.length;if(0===e||1===e){e=0===e?0:255;for(var h=0;h<d;++h)g.putByte(e)}else for(;0<d;){for(var l=0,n=a.random.getBytes(d),h=0;h<d;++h)e=n.charCodeAt(h),0===e?++l:g.putByte(e);d=l}g.putByte(0);g.putBytes(b);return g}function d(b,c,e,g){c=Math.ceil(c.n.bitLength()/8);b=a.util.createBuffer(b);var h=b.getByte(),l=b.getByte();if(0!==h||e&&0!==l&&1!==l||!e&&2!=l||e&&0===l&&"undefined"===
436
+typeof g)throw Error("Encryption block is invalid.");e=0;if(0===l)for(e=c-3-g,g=0;g<e;++g){if(0!==b.getByte())throw Error("Encryption block is invalid.");}else if(1===l)for(e=0;1<b.length();){if(255!==b.getByte()){--b.read;break}++e}else if(2===l)for(e=0;1<b.length();){if(0===b.getByte()){--b.read;break}++e}if(0!==b.getByte()||e!==c-3-b.length())throw Error("Encryption block is invalid.");return b.getBytes()}function e(b,c,d){function h(){l(b.pBits,function(a,c){if(a)return d(a);b.p=c;if(null!==b.q)return n(a,
437
+b.q);l(b.qBits,n)})}function l(b,c){a.prime.generateProbablePrime(b,k,c)}function n(a,c){if(a)return d(a);b.q=c;if(0>b.p.compareTo(b.q)){var e=b.p;b.p=b.q;b.q=e}0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.p=null,h()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,l(b.qBits,n)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,h()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,l(b.qBits,n)):
438
+(e=b.e.modInverse(b.phi),b.keys={privateKey:g.rsa.setPrivateKey(b.n,b.e,e,b.p,b.q,e.mod(b.p1),e.mod(b.q1),b.q.modInverse(b.p)),publicKey:g.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);h()}function k(b){b=b.toString(16);"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function p(a){return 100>=a?27:
439
+150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof m)var m=a.jsbn.BigInteger;var h=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var g=a.pki,v=[6,4,2,4,2,4,6,2],q={name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:h.Class.UNIVERSAL,
440
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",
441
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",
442
+tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},y={name:"RSAPublicKey",tagClass:h.Class.UNIVERSAL,
443
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,
444
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},z=function(a){var b;if(a.algorithm in g.oids)b=g.oids[a.algorithm];
445
+else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=h.oidToDer(b).getBytes();b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);var d=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);d.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,c));d.value.push(h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,""));a=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return h.toDer(b).getBytes()},O=function(b,c,d){if(d)return b.modPow(c.e,
446
+c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16);while(0<=d.compareTo(c.n)||!d.gcd(c.n).equals(m.ONE));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=
447
+b.multiply(d.modInverse(c.n)).mod(c.n)};g.rsa.encrypt=function(b,d,e){var g=e,h=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(g=2===e,e=c(b,d,e)):(e=a.util.createBuffer(),e.putBytes(b));b=new m(e.toHex(),16);d=O(b,d,g).toString(16);g=a.util.createBuffer();for(h-=Math.ceil(d.length/2);0<h;)g.putByte(0),--h;g.putBytes(a.util.hexToBytes(d));return g.getBytes()};g.rsa.decrypt=function(b,c,e,g){var h=Math.ceil(c.n.bitLength()/8);if(b.length!==h)throw c=Error("Encrypted message length is invalid."),c.length=
448
+b.length,c.expected=h,c;b=new m(a.util.createBuffer(b).toHex(),16);if(0<=b.compareTo(c.n))throw Error("Encrypted message is invalid.");b=O(b,c,e).toString(16);for(var l=a.util.createBuffer(),h=h-Math.ceil(b.length/2);0<h;)l.putByte(0),--h;l.putBytes(a.util.hexToBytes(b));return!1!==g?d(l.getBytes(),c,e):l.getBytes()};g.rsa.createKeyPairGenerationState=function(b,c,d){"string"===typeof b&&(b=parseInt(b,10));b=b||2048;d=d||{};var e=d.prng||a.random,g={nextBytes:function(a){for(var b=e.getBytesSync(a.length),
449
+c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}};d=d.algorithm||"PRIMEINC";if("PRIMEINC"===d)b={algorithm:d,state:0,bits:b,rng:g,eInt:c||65537,e:new m(null),p:null,q:null,qBits:b>>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};g.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,e=function(a,b){return a|b},r=+new Date,h,l=0;null===a.keys&&
450
+(0>=b||l<b);){if(0===a.state){h=null===a.p?a.pBits:a.qBits;var n=h-1;0===a.pqState?(a.num=new m(h,a.rng),a.num.testBit(n)||a.num.bitwiseTo(m.ONE.shiftLeft(n),e,a.num),a.num.dAddOffset(31-a.num.mod(c).byteValue(),0),d=0,++a.pqState):1===a.pqState?a.num.bitLength()>h?a.pqState=0:a.num.isProbablePrime(p(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(v[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,
451
+null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)?++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(h=a.e.modInverse(a.phi),a.keys={privateKey:g.rsa.setPrivateKey(a.n,a.e,h,a.p,a.q,
452
+h.mod(a.p1),h.mod(a.q1),a.q.modInverse(a.p)),publicKey:g.rsa.setPublicKey(a.n,a.e)});h=+new Date;l+=h-r;r=h}return null!==a.keys};g.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d=b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=
453
+c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var r=g.rsa.createKeyPairGenerationState(a,b,c);if(!d)return g.rsa.stepKeyPairGenerationState(r,0),r.keys;e(r,c,d)};g.setRsaPublicKey=g.rsa.setPublicKey=function(b,e){var l={n:b,e:e,encrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,b,d){return c(a,b,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,
454
+b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');b=d.encode(b,l,!0);return g.rsa.encrypt(b,l,!0)},verify:function(a,b,c){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===c)c={verify:function(a,b){b=d(b,l,!0);var c=h.fromDer(b);return a===c.value[1].value}};else if("NONE"===c||"NULL"===c||null===c)c={verify:function(a,b){b=d(b,
455
+l,!0);return a===b}};b=g.rsa.decrypt(b,l,!0,!1);return c.verify(a,b,l.n.bitLength())}};return l};g.setRsaPrivateKey=g.rsa.setPrivateKey=function(b,c,e,h,l,n,k,m){var v={n:b,e:c,d:e,p:h,q:l,dP:n,dQ:k,qInv:m,decrypt:function(b,c,e){"string"===typeof c?c=c.toUpperCase():void 0===c&&(c="RSAES-PKCS1-V1_5");b=g.rsa.decrypt(b,v,!1,!1);if("RSAES-PKCS1-V1_5"===c)c={decode:d};else if("RSA-OAEP"===c||"RSAES-OAEP"===c)c={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE",
456
+"NULL",null].indexOf(c))c={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+c+'".');return c.decode(b,v,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:z},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;var d=b.encode(a,v.n.bitLength());return g.rsa.encrypt(d,v,c)}};return v};g.wrapRsaPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,
457
+[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,h.toDer(a).getBytes())])};g.privateKeyFromAsn1=function(b){var c={},d=[];h.validate(b,q,c,d)&&(b=h.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!h.validate(b,D,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),
458
+c.errors=d,c;var e,l,n,k,z,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();l=a.util.createBuffer(c.privateKeyPrime1).toHex();n=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex();z=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return g.setRsaPrivateKey(new m(d,16),new m(b,
459
+16),new m(e,16),new m(l,16),new m(n,16),new m(k,16),new m(z,16),new m(c,16))};g.privateKeyToAsn1=g.privateKeyToRSAPrivateKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(0).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.d)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.p)),h.create(h.Class.UNIVERSAL,
460
+h.Type.INTEGER,!1,k(a.q)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dP)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.dQ)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.qInv))])};g.publicKeyFromAsn1=function(b){var c={},d=[];if(h.validate(b,B,c,d)){d=h.derToOid(c.publicKeyOid);if(d!==g.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!h.validate(b,y,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),
461
+c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return g.setRsaPublicKey(new m(d,16),new m(c,16))};g.publicKeyToAsn1=g.publicKeyToSubjectPublicKeyInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(g.oids.rsaEncryption).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
462
+!1,[g.publicKeyToRSAPublicKey(a)])])};g.publicKeyToRSAPublicKey=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.n)),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,k(a.e))])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||
463
+{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var n=0;n<e.length;++n)e[n](c);return c.rsa}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/rsa","require module ./asn1 ./jsbn ./oids ./pkcs1 ./prime ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,
464
+b){return a.start().update(b).digest().getBytes()}if("undefined"===typeof d)var d=a.jsbn.BigInteger;var e=a.asn1,k=a.pki=a.pki||{};k.pbe=a.pbe=a.pbe||{};var p=k.oids,m={name:"EncryptedPrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encryptionOid"},
465
+{name:"AlgorithmIdentifier.parameters",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},h={name:"PBES2Algorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",
466
tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:e.Class.UNIVERSAL,
467
-type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},h={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
468
-{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var h=a.random.getBytesSync(d.saltSize),g=d.count,m=e.integerToDer(g),n;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,F;switch(d.algorithm){case "aes128":A=n=16;d=p["aes128-CBC"];F=a.aes.createEncryptionCipher;break;case "aes192":n=24;
469
-A=16;d=p["aes192-CBC"];F=a.aes.createEncryptionCipher;break;case "aes256":n=32;A=16;d=p["aes256-CBC"];F=a.aes.createEncryptionCipher;break;case "des":A=n=8;d=p.desCBC;F=a.des.createEncryptionCipher;break;default:throw h=Error("Cannot encrypt private key. Unknown encryption algorithm."),h.algorithm=d.algorithm,h;}var w=a.pkcs5.pbkdf2(c,h,g,n);c=a.random.getBytesSync(A);g=F(w);g.start(c);g.update(e.toDer(b));g.finish();b=g.output.getBytes();h=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
470
-e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,h),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,m.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
471
-e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)n=24,d=new a.util.ByteBuffer(h),w=k.pbe.generatePkcs12Key(c,d,1,g,n),c=k.pbe.generatePkcs12Key(c,d,2,g,n),g=a.des.createEncryptionCipher(w),g.start(c),g.update(e.toDer(b)),g.finish(),b=g.output.getBytes(),h=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
472
-!1,h),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,m.getBytes())])]);else throw h=Error("Cannot encrypt private key. Unknown encryption algorithm."),h.algorithm=d.algorithm,h;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[h,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,h={},g=[];if(!e.validate(b,n,h,g))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=g,d;g=e.derToOid(h.encryptionOid);
473
-g=k.pbe.getCipher(g,h.encryptionParams,c);h=a.util.createBuffer(h.encryptedData);g.update(h);g.finish()&&(d=e.fromDer(g.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
474
-b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var h,g,m;switch(d.algorithm){case "aes128":d="AES-128-CBC";g=16;h=a.random.getBytesSync(16);m=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
475
-g=24;h=a.random.getBytesSync(16);m=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";g=32;h=a.random.getBytesSync(16);m=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";g=24;h=a.random.getBytesSync(8);m=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";g=8;h=a.random.getBytesSync(8);m=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
476
-h.substr(0,8),g);c=m(c);c.start(h);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(h).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,h=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==h.type&&"PRIVATE KEY"!==h.type&&"RSA PRIVATE KEY"!==h.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
477
-d.headerType=d,d;if(h.procType&&"ENCRYPTED"===h.procType.type){var g,m;switch(h.dekInfo.algorithm){case "DES-CBC":g=8;m=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":g=24;m=a.des.createDecryptionCipher;break;case "AES-128-CBC":g=16;m=a.aes.createDecryptionCipher;break;case "AES-192-CBC":g=24;m=a.aes.createDecryptionCipher;break;case "AES-256-CBC":g=32;m=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":g=5;m=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":g=
478
-8;m=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":g=16;m=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+h.dekInfo.algorithm+'".'),d.algorithm=h.dekInfo.algorithm,d;}var n=a.util.hexToBytes(h.dekInfo.parameters);g=a.pbe.opensslDeriveBytes(c,n.substr(0,8),g);m=m(g);m.start(n);m.update(a.util.createBuffer(h.body));if(m.finish())d=m.output.getBytes();else return d}else d=
479
-h.body;d="ENCRYPTED PRIVATE KEY"===h.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,h,g){var k,m;if("undefined"===typeof g||null===g)g=a.md.sha1.create();var l=g.digestLength,n=g.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(m=0;m<b.length;m++)w.putInt16(b.charCodeAt(m));w.putInt16(0)}b=w.length();var u=c.length(),r=new a.util.ByteBuffer;r.fillWithByte(d,n);
480
-var x=n*Math.ceil(u/n);d=new a.util.ByteBuffer;for(m=0;m<x;m++)d.putByte(c.at(m%u));x=n*Math.ceil(b/n);c=new a.util.ByteBuffer;for(m=0;m<x;m++)c.putByte(w.at(m%b));w=d;w.putBuffer(c);c=Math.ceil(h/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(r.bytes());x.putBytes(w.bytes());for(m=0;m<e;m++)g.start(),g.update(x.getBytes()),x=g.digest();var B=new a.util.ByteBuffer;for(m=0;m<n;m++)B.putByte(x.at(m%l));var Z=Math.ceil(u/n)+Math.ceil(b/n),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(n)),
481
-V=511;for(m=B.length()-1;0<=m;m--)V>>=8,V+=B.at(m)+W.at(m),W.setAt(m,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-h);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
482
-"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var h={};b=[];if(!e.validate(c,g,h,b)){var m=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");m.errors=b;throw m;}b=e.derToOid(h.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw m=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),m.oid=b,m.supportedOids=["pkcs5PBKDF2"],m;b=e.derToOid(h.encOid);if(b!==k.oids["aes128-CBC"]&&
483
-b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw m=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),m.oid=b,m.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],m;c=h.kdfSalt;var n=a.util.createBuffer(h.kdfIterationCount),n=n.getInt(n.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;m=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;m=a.aes.createDecryptionCipher;break;
484
-case "aes256-CBC":p=32;m=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;m=a.des.createDecryptionCipher;break;case "desCBC":p=8,m=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,n,p);h=h.encIv;m=m(b);m.start(h);return m};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var g={},m=[];if(!e.validate(c,h,g,m))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=m,d;var m=a.util.createBuffer(g.salt),g=a.util.createBuffer(g.iterations),
485
-g=g.getInt(g.length()<<3),n;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:n=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:n=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}n=k.pbe.generatePkcs12Key(d,m,1,g,n);d=k.pbe.generatePkcs12Key(d,m,2,g,c);return b(n,d)};k.pbe.opensslDeriveBytes=function(b,d,e,h){if("undefined"===
486
-typeof h||null===h)h=a.md.md5.create();null===d&&(d="");for(var g=[c(h,b+d)],k=16,l=1;k<e;++l,k+=16)g.push(c(h,g[l-1]+b+d));return g.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var m=
487
-0;m<e.length;++m)e[m](c);return c.pbe}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
467
+type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},g={name:"pkcs-12PbeParams",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"salt"},
468
+{name:"pkcs-12PbeParams.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"iterations"}]};k.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var g=a.random.getBytesSync(d.saltSize),h=d.count,n=e.integerToDer(h),m;if(0===d.algorithm.indexOf("aes")||"des"===d.algorithm){var A,G;switch(d.algorithm){case "aes128":A=m=16;d=p["aes128-CBC"];G=a.aes.createEncryptionCipher;break;case "aes192":m=24;
469
+A=16;d=p["aes192-CBC"];G=a.aes.createEncryptionCipher;break;case "aes256":m=32;A=16;d=p["aes256-CBC"];G=a.aes.createEncryptionCipher;break;case "des":A=m=8;d=p.desCBC;G=a.des.createEncryptionCipher;break;default:throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;}var w=a.pkcs5.pbkdf2(c,g,h,m);c=a.random.getBytesSync(A);h=G(w);h.start(c);h.update(e.toDer(b));h.finish();b=h.output.getBytes();g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,
470
+e.Type.OID,!1,e.oidToDer(p.pkcs5PBES2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p.pkcs5PBKDF2).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d).getBytes()),e.create(e.Class.UNIVERSAL,
471
+e.Type.OCTETSTRING,!1,c)])])])}else if("3des"===d.algorithm)m=24,d=new a.util.ByteBuffer(g),w=k.pbe.generatePkcs12Key(c,d,1,h,m),c=k.pbe.generatePkcs12Key(c,d,2,h,m),h=a.des.createEncryptionCipher(w),h.start(c),h.update(e.toDer(b)),h.finish(),b=h.output.getBytes(),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(p["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,
472
+!1,g),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,n.getBytes())])]);else throw g=Error("Cannot encrypt private key. Unknown encryption algorithm."),g.algorithm=d.algorithm,g;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[g,e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b)])};k.decryptPrivateKeyInfo=function(b,c){var d=null,g={},h=[];if(!e.validate(b,m,g,h))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=h,d;h=e.derToOid(g.encryptionOid);
473
+h=k.pbe.getCipher(h,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);h.update(g);h.finish()&&(d=e.fromDer(h.output));return d};k.encryptedPrivateKeyToPem=function(b,c){var d={type:"ENCRYPTED PRIVATE KEY",body:e.toDer(b).getBytes()};return a.pem.encode(d,{maxline:c})};k.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');c.headerType=
474
+b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return e.fromDer(b.body)};k.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=k.wrapRsaPrivateKey(k.privateKeyToAsn1(b)),b=k.encryptPrivateKeyInfo(b,c,d),k.encryptedPrivateKeyToPem(b);var g,h,n;switch(d.algorithm){case "aes128":d="AES-128-CBC";h=16;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes192":d="AES-192-CBC";
475
+h=24;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "aes256":d="AES-256-CBC";h=32;g=a.random.getBytesSync(16);n=a.aes.createEncryptionCipher;break;case "3des":d="DES-EDE3-CBC";h=24;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;case "des":d="DES-CBC";h=8;g=a.random.getBytesSync(8);n=a.des.createEncryptionCipher;break;default:throw b=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+d.algorithm+'".'),b.algorithm=d.algorithm,b;}c=a.pbe.opensslDeriveBytes(c,
476
+g.substr(0,8),h);c=n(c);c.start(g);c.update(e.toDer(k.privateKeyToAsn1(b)));c.finish();b={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:d,parameters:a.util.bytesToHex(g).toUpperCase()},body:c.output.getBytes()};return a.pem.encode(b)};k.decryptRsaPrivateKey=function(b,c){var d=null,g=a.pem.decode(b)[0];if("ENCRYPTED PRIVATE KEY"!==g.type&&"PRIVATE KEY"!==g.type&&"RSA PRIVATE KEY"!==g.type)throw d=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),
477
+d.headerType=d,d;if(g.procType&&"ENCRYPTED"===g.procType.type){var h,n;switch(g.dekInfo.algorithm){case "DES-CBC":h=8;n=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":h=24;n=a.des.createDecryptionCipher;break;case "AES-128-CBC":h=16;n=a.aes.createDecryptionCipher;break;case "AES-192-CBC":h=24;n=a.aes.createDecryptionCipher;break;case "AES-256-CBC":h=32;n=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":h=5;n=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":h=
478
+8;n=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":h=16;n=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw d=Error('Could not decrypt private key; unsupported encryption algorithm "'+g.dekInfo.algorithm+'".'),d.algorithm=g.dekInfo.algorithm,d;}var m=a.util.hexToBytes(g.dekInfo.parameters);h=a.pbe.opensslDeriveBytes(c,m.substr(0,8),h);n=n(h);n.start(m);n.update(a.util.createBuffer(g.body));if(n.finish())d=n.output.getBytes();else return d}else d=
479
+g.body;d="ENCRYPTED PRIVATE KEY"===g.type?k.decryptPrivateKeyInfo(e.fromDer(d),c):e.fromDer(d);null!==d&&(d=k.privateKeyFromAsn1(d));return d};k.pbe.generatePkcs12Key=function(b,c,d,e,g,h){var k,n;if("undefined"===typeof h||null===h)h=a.md.sha1.create();var l=h.digestLength,m=h.blockLength,p=new a.util.ByteBuffer,w=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(n=0;n<b.length;n++)w.putInt16(b.charCodeAt(n));w.putInt16(0)}b=w.length();var u=c.length(),q=new a.util.ByteBuffer;q.fillWithByte(d,m);
480
+var x=m*Math.ceil(u/m);d=new a.util.ByteBuffer;for(n=0;n<x;n++)d.putByte(c.at(n%u));x=m*Math.ceil(b/m);c=new a.util.ByteBuffer;for(n=0;n<x;n++)c.putByte(w.at(n%b));w=d;w.putBuffer(c);c=Math.ceil(g/l);for(d=1;d<=c;d++){x=new a.util.ByteBuffer;x.putBytes(q.bytes());x.putBytes(w.bytes());for(n=0;n<e;n++)h.start(),h.update(x.getBytes()),x=h.digest();var C=new a.util.ByteBuffer;for(n=0;n<m;n++)C.putByte(x.at(n%l));var Z=Math.ceil(u/m)+Math.ceil(b/m),L=new a.util.ByteBuffer;for(k=0;k<Z;k++){var W=new a.util.ByteBuffer(w.getBytes(m)),
481
+V=511;for(n=C.length()-1;0<=n;n--)V>>=8,V+=C.at(n)+W.at(n),W.setAt(n,V&255);L.putBuffer(W)}w=L;p.putBuffer(x)}p.truncate(p.length()-g);return p};k.pbe.getCipher=function(a,b,c){switch(a){case k.oids.pkcs5PBES2:return k.pbe.getCipherForPBES2(a,b,c);case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case k.oids["pbewithSHAAnd40BitRC2-CBC"]:return k.pbe.getCipherForPKCS12PBE(a,b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC",
482
+"pbewithSHAAnd40BitRC2-CBC"],b;}};k.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!e.validate(c,h,g,b)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");n.errors=b;throw n;}b=e.derToOid(g.kdfOid);if(b!==k.oids.pkcs5PBKDF2)throw n=Error("Cannot read encrypted private key. Unsupported key derivation function OID."),n.oid=b,n.supportedOids=["pkcs5PBKDF2"],n;b=e.derToOid(g.encOid);if(b!==k.oids["aes128-CBC"]&&
483
+b!==k.oids["aes192-CBC"]&&b!==k.oids["aes256-CBC"]&&b!==k.oids["des-EDE3-CBC"]&&b!==k.oids.desCBC)throw n=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),n.oid=b,n.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],n;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(k.oids[b]){case "aes128-CBC":p=16;n=a.aes.createDecryptionCipher;break;case "aes192-CBC":p=24;n=a.aes.createDecryptionCipher;break;
484
+case "aes256-CBC":p=32;n=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;n=a.des.createDecryptionCipher;break;case "desCBC":p=8,n=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;n=n(b);n.start(g);return n};k.pbe.getCipherForPKCS12PBE=function(b,c,d){var h={},n=[];if(!e.validate(c,g,h,n))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=n,d;var n=a.util.createBuffer(h.salt),h=a.util.createBuffer(h.iterations),
485
+h=h.getInt(h.length()<<3),m;switch(b){case k.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case k.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){var d=a.rc2.createDecryptionCipher(b,40);d.start(c,null);return d};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=k.pbe.generatePkcs12Key(d,n,1,h,m);d=k.pbe.generatePkcs12Key(d,n,2,h,c);return b(m,d)};k.pbe.opensslDeriveBytes=function(b,d,e,g){if("undefined"===
486
+typeof g||null===g)g=a.md.md5.create();null===d&&(d="");for(var h=[c(g,b+d)],k=16,l=1;k<e;++l,k+=16)h.push(c(g,h[l-1]+b+d));return h.join("").substr(0,e)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pbe)return c.pbe;c.defined.pbe=!0;for(var n=
487
+0;n<e.length;++n)e[n](c);return c.pbe}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pbe","require module ./aes ./asn1 ./des ./md ./oids ./pem ./pbkdf2 ./random ./rc2 ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pkcs7asn1=a.pkcs7asn1||{};a.pkcs7=
488
a.pkcs7||{};a.pkcs7.asn1=d;a={name:"ContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:c.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};d.contentInfoValidator=a;var e={name:"EncryptedContentInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",
489
tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",
490
tagClass:c.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};d.envelopedDataValidator={name:"EnvelopedData",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:c.Class.UNIVERSAL,type:c.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(e)};d.encryptedDataValidator={name:"EncryptedData",
@@ -495,256 +495,256 @@ value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,t
495
constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:c.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]}]}]};d.recipientInfoValidator={name:"RecipientInfo",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,
496
constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:c.Class.UNIVERSAL,type:c.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.SEQUENCE,constructed:!0,
497
value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:c.Class.UNIVERSAL,type:c.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:c.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:c.Class.UNIVERSAL,type:c.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
498
-typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
499
-["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),n=0;n<k;n++){var g=new a.util.ByteBuffer;g.putInt32(n);b.start();b.update(c+g.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
500
-module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
501
-Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
502
-{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
503
-(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var n;if("saltLength"in b)n=b.saltLength;else if(null!==k)n=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==n)throw Error("Given salt length does not match length of given salt.");var g=b.prng||a.random;return{encode:function(b,m){var p,r=m-1,y=Math.ceil(r/8),C=b.digest().getBytes();
504
-if(y<e+n+2)throw Error("Message is too long to encrypt.");var z;z=null===k?g.getBytesSync(n):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(C);p.putBytes(z);c.start();c.update(p.getBytes());C=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-n-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,F=d.generate(C,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^F.charCodeAt(p));r=65280>>8*y-r&255;z=String.fromCharCode(z.charCodeAt(0)&~r)+z.substr(1);
505
-return z+C+String.fromCharCode(188)},verify:function(b,g,k){var m;m=k-1;k=Math.ceil(m/8);g=g.substr(-k);if(k<e+n+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==g.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,r=g.substr(0,p);g=g.substr(p,e);var z=65280>>8*k-m&255;if(0!==(r.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(g,p),A="";for(m=0;m<p;m++)A+=String.fromCharCode(r.charCodeAt(m)^O.charCodeAt(m));
506
-A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-n-2;for(m=0;m<k;m++)if(0!==A.charCodeAt(m))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-n);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return g===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
507
-module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
508
-["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,h=0;null===d&&h<a.attributes.length;++h)e=a.attributes[h],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var h=0;h<b.length;++h){e=b[h];
509
-var k=e.value,m=g.Type.PRINTABLESTRING;"valueTagClass"in e&&(m=e.valueTagClass,m===g.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=g.create(g.Class.UNIVERSAL,g.Type.SET,!0,[g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(e.type).getBytes()),g.create(g.Class.UNIVERSAL,m,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in h.oids?b.name=h.oids[b.type]:b.shortName&&b.shortName in
510
-r&&(b.name=h.oids[r[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in h.oids)b.type=h.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in r&&(b.shortName=r[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=g.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(h.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
511
-typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in h.oids&&(b.name=h.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in h.oids)b.id=h.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,m=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
512
-(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(m|=128,d=7);d=String.fromCharCode(d);0!==m?d+=String.fromCharCode(e)+String.fromCharCode(m):0!==e&&(d+=String.fromCharCode(e));b.value=g.create(g.Class.UNIVERSAL,g.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(g.create(g.Class.UNIVERSAL,g.Type.BOOLEAN,!1,String.fromCharCode(255))),
513
-"pathLenConstraint"in b&&b.value.value.push(g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,g.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
514
-d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=g.create(g.Class.UNIVERSAL,g.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]),m=0;m<b.altNames.length;++m){e=b.altNames[m];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
515
-null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?g.oidToDer(g.oidToDer(e.oid)):g.oidToDer(d));b.value.value.push(g.create(g.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=g.create(g.Class.UNIVERSAL,g.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
516
-d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(g.create(g.Class.CONTEXT_SPECIFIC,0,!0,[g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(b.hash.algorithmOid).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(g.create(g.Class.CONTEXT_SPECIFIC,1,!0,[g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,
517
-!1,g.oidToDer(b.mgf.algorithmOid).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(b.mgf.hash.algorithmOid).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(g.create(g.Class.CONTEXT_SPECIFIC,2,!0,[g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,g.integerToDer(b.saltLength).getBytes())]));return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,c);default:return g.create(g.Class.UNIVERSAL,g.Type.NULL,
518
-!1,"")}}function n(b){var c=g.create(g.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],h=e.value,k=g.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===g.Type.UTF8&&(h=a.util.encodeUtf8(h));var m=!1;"valueConstructed"in e&&(m=e.valueConstructed);e=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(e.type).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.SET,!0,[g.create(g.Class.UNIVERSAL,
519
-k,m,h)])]);c.value.push(e)}return c}var g=a.asn1,h=a.pki=a.pki||{},v=h.oids,r={};r.CN=v.commonName;r.commonName="CN";r.C=v.countryName;r.countryName="C";r.L=v.localityName;r.localityName="L";r.ST=v.stateOrProvinceName;r.stateOrProvinceName="ST";r.O=v.organizationName;r.organizationName="O";r.OU=v.organizationalUnitName;r.organizationalUnitName="OU";r.E=v.emailAddress;r.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,
520
-value:[{name:"Certificate.TBSCertificate",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:g.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,
521
-capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:g.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,
522
-constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:g.Class.UNIVERSAL,type:g.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:g.Class.UNIVERSAL,type:g.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
523
-{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:g.Class.UNIVERSAL,type:g.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:g.Class.UNIVERSAL,type:g.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
524
-tagClass:g.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:g.Class.UNIVERSAL,type:g.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:g.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:g.Class.UNIVERSAL,type:g.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
525
-{name:"Certificate.TBSCertificate.extensions",tagClass:g.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:g.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
526
-{name:"Certificate.signatureValue",tagClass:g.Class.UNIVERSAL,type:g.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},C={name:"rsapss",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:g.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:g.Class.UNIVERSAL,type:g.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:g.Class.UNIVERSAL,
527
-type:g.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:g.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:g.Class.UNIVERSAL,type:g.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:g.Class.UNIVERSAL,
528
-type:g.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:g.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:g.Class.UNIVERSAL,type:g.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:g.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
529
-tagClass:g.Class.UNIVERSAL,type:g.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
530
-tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:g.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
531
-tagClass:g.Class.UNIVERSAL,type:g.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:g.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:g.Class.UNIVERSAL,
532
-type:g.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};h.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,h,q=0;q<a.value.length;++q){d=a.value[q];for(var k=0;k<d.value.length;++k)h={},e=d.value[k],h.type=g.derToOid(e.value[0].value),h.value=e.value[1].value,h.valueTagClass=e.value[1].type,h.type in v&&(h.name=v[h.type],h.name in r&&(h.shortName=r[h.name])),b&&(b.update(h.type),b.update(h.value)),c.push(h)}return c};h.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
533
-a[c],e=g.derToOid(d.value[0].value),d=d.value[1].value,q=0;q<d.length;++q){var k={};k.type=e;k.value=d[q].value;k.valueTagClass=d[q].type;k.type in v&&(k.name=v[k.type],k.name in r&&(k.shortName=r[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var m=0;m<k.value.length;++m)k.extensions.push(h.certificateExtensionFromAsn1(k.value[m]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
534
-saltLength:20});c={};a=[];if(!g.validate(b,C,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=g.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=g.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=g.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};h.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
535
-b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=g.fromDer(b.body,d);return h.certificateFromAsn1(d,c)};h.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:g.toDer(h.certificateToAsn1(b)).getBytes()};
536
-return a.pem.encode(d,{maxline:c})};h.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=g.fromDer(b.body);return h.publicKeyFromAsn1(b)};h.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
537
-body:g.toDer(h.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};h.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:g.toDer(h.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};h.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=g.toDer(h.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=g.toDer(h.publicKeyToAsn1(b)).getBytes();
538
-break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};h.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
539
-c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=g.fromDer(b.body,d);return h.certificationRequestFromAsn1(d,c)};h.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:g.toDer(h.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};h.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
498
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7asn1)return c.pkcs7asn1;c.defined.pkcs7asn1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7asn1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs7asn1",
499
+["require","module","./asn1","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};(a.mgf.mgf1=a.mgf1=a.mgf1||{}).create=function(b){return{generate:function(c,d){for(var e=new a.util.ByteBuffer,k=Math.ceil(d/b.digestLength),m=0;m<k;m++){var h=new a.util.ByteBuffer;h.putInt32(m);b.start();b.update(c+h.getBytes());e.putBuffer(b.digest())}e.truncate(e.length()-d);return e.getBytes()}}}}if("function"!==typeof a)if("object"===typeof module&&
500
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.mgf1)return c.mgf1;c.defined.mgf1=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf1}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
501
+Array.prototype.slice.call(arguments,0))};a("js/mgf1",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.mgf=a.mgf||{};a.mgf.mgf1=a.mgf1}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||
502
+{};if(c.defined.mgf)return c.mgf;c.defined.mgf=!0;for(var k=0;k<e.length;++k)e[k](c);return c.mgf}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/mgf",["require","module","./mgf1"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){(a.pss=a.pss||{}).create=function(b){3===arguments.length&&
503
+(b={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var c=b.md,d=b.mgf,e=c.digestLength,k=b.salt||null;"string"===typeof k&&(k=a.util.createBuffer(k));var m;if("saltLength"in b)m=b.saltLength;else if(null!==k)m=k.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==k&&k.length()!==m)throw Error("Given salt length does not match length of given salt.");var h=b.prng||a.random;return{encode:function(b,n){var p,q=n-1,y=Math.ceil(q/8),B=b.digest().getBytes();
504
+if(y<e+m+2)throw Error("Message is too long to encrypt.");var z;z=null===k?h.getBytesSync(m):k.bytes();p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(B);p.putBytes(z);c.start();c.update(p.getBytes());B=c.digest().getBytes();p=new a.util.ByteBuffer;p.fillWithByte(0,y-m-e-2);p.putByte(1);p.putBytes(z);var O=p.getBytes(),A=y-e-1,G=d.generate(B,A);z="";for(p=0;p<A;p++)z+=String.fromCharCode(O.charCodeAt(p)^G.charCodeAt(p));q=65280>>8*y-q&255;z=String.fromCharCode(z.charCodeAt(0)&~q)+z.substr(1);
505
+return z+B+String.fromCharCode(188)},verify:function(b,h,k){var n;n=k-1;k=Math.ceil(n/8);h=h.substr(-k);if(k<e+m+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==h.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var p=k-e-1,q=h.substr(0,p);h=h.substr(p,e);var z=65280>>8*k-n&255;if(0!==(q.charCodeAt(0)&z))throw Error("Bits beyond keysize not zero as expected.");var O=d.generate(h,p),A="";for(n=0;n<p;n++)A+=String.fromCharCode(q.charCodeAt(n)^O.charCodeAt(n));
506
+A=String.fromCharCode(A.charCodeAt(0)&~z)+A.substr(1);k=k-e-m-2;for(n=0;n<k;n++)if(0!==A.charCodeAt(n))throw Error("Leftmost octets not zero as expected");if(1!==A.charCodeAt(k))throw Error("Inconsistent PSS signature, 0x01 marker not found");k=A.substr(-m);p=new a.util.ByteBuffer;p.fillWithByte(0,8);p.putBytes(b);p.putBytes(k);c.start();c.update(p.getBytes());b=c.digest().getBytes();return h===b}}}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,
507
+module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pss)return c.pss;c.defined.pss=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pss}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pss",
508
+["require","module","./random","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b){"string"===typeof b&&(b={shortName:b});for(var d=null,e,g=0;null===d&&g<a.attributes.length;++g)e=a.attributes[g],b.type&&b.type===e.type?d=e:b.name&&b.name===e.name?d=e:b.shortName&&b.shortName===e.shortName&&(d=e);return d}function d(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),e;b=b.attributes;for(var g=0;g<b.length;++g){e=b[g];
509
+var k=e.value,l=h.Type.PRINTABLESTRING;"valueTagClass"in e&&(l=e.valueTagClass,l===h.Type.UTF8&&(k=a.util.encodeUtf8(k)));e=h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,l,!1,k)])]);c.value.push(e)}return c}function e(a){for(var b,c=0;c<a.length;++c){b=a[c];"undefined"===typeof b.name&&(b.type&&b.type in g.oids?b.name=g.oids[b.type]:b.shortName&&b.shortName in
510
+q&&(b.name=g.oids[q[b.shortName]]));if("undefined"===typeof b.type)if(b.name&&b.name in g.oids)b.type=g.oids[b.name];else throw a=Error("Attribute type not specified."),a.attribute=b,a;"undefined"===typeof b.shortName&&b.name&&b.name in q&&(b.shortName=q[b.name]);if(b.type===v.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=h.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var d=0;d<b.extensions.length;++d)b.value.push(g.certificateExtensionToAsn1(k(b.extensions[d])))}if("undefined"===
511
+typeof b.value)throw a=Error("Attribute value not specified."),a.attribute=b,a;}}function k(b,c){c=c||{};"undefined"===typeof b.name&&b.id&&b.id in g.oids&&(b.name=g.oids[b.id]);if("undefined"===typeof b.id)if(b.name&&b.name in g.oids)b.id=g.oids[b.name];else{var d=Error("Extension ID not specified.");d.extension=b;throw d;}if("undefined"!==typeof b.value)return b;if("keyUsage"===b.name){var e=d=0,l=0;b.digitalSignature&&(e|=128,d=7);b.nonRepudiation&&(e|=64,d=6);b.keyEncipherment&&(e|=32,d=5);b.dataEncipherment&&
512
+(e|=16,d=4);b.keyAgreement&&(e|=8,d=3);b.keyCertSign&&(e|=4,d=2);b.cRLSign&&(e|=2,d=1);b.encipherOnly&&(e|=1,d=0);b.decipherOnly&&(l|=128,d=7);d=String.fromCharCode(d);0!==l?d+=String.fromCharCode(e)+String.fromCharCode(l):0!==e&&(d+=String.fromCharCode(e));b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d)}else if("basicConstraints"===b.name)b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),b.cA&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255))),
513
+"pathLenConstraint"in b&&b.value.value.push(h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.pathLenConstraint).getBytes()));else if("extKeyUsage"===b.name)for(e in b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),d=b.value.value,b)!0===b[e]&&(e in v?d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(v[e]).getBytes())):-1!==e.indexOf(".")&&d.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e).getBytes())));else if("nsCertType"===b.name)e=d=0,b.client&&(e|=128,
514
+d=7),b.server&&(e|=64,d=6),b.email&&(e|=32,d=5),b.objsign&&(e|=16,d=4),b.reserved&&(e|=8,d=3),b.sslCA&&(e|=4,d=2),b.emailCA&&(e|=2,d=1),b.objCA&&(e|=1,d=0),d=String.fromCharCode(d),0!==e&&(d+=String.fromCharCode(e)),b.value=h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,d);else if("subjectAltName"===b.name||"issuerAltName"===b.name)for(b.value=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]),l=0;l<b.altNames.length;++l){e=b.altNames[l];d=e.value;if(7===e.type&&e.ip){if(d=a.util.bytesFromIP(e.ip),
515
+null===d)throw d=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.'),d.extension=b,d;}else 8===e.type&&(d=e.oid?h.oidToDer(h.oidToDer(e.oid)):h.oidToDer(d));b.value.value.push(h.create(h.Class.CONTEXT_SPECIFIC,e.type,!1,d))}else"subjectKeyIdentifier"===b.name&&c.cert&&(d=c.cert.generateSubjectKeyIdentifier(),b.subjectKeyIdentifier=d.toHex(),b.value=h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,d.getBytes()));if("undefined"===typeof b.value)throw d=Error("Extension value not specified."),
516
+d.extension=b,d;return b}function p(a,b){switch(a){case v["RSASSA-PSS"]:var c=[];void 0!==b.hash.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])]));void 0!==b.mgf.algorithmOid&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,
517
+!1,h.oidToDer(b.mgf.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.mgf.hash.algorithmOid).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.NULL,!1,"")])])]));void 0!==b.saltLength&&c.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.saltLength).getBytes())]));return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,c);default:return h.create(h.Class.UNIVERSAL,h.Type.NULL,
518
+!1,"")}}function m(b){var c=h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===b.attributes.length)return c;b=b.attributes;for(var d=0;d<b.length;++d){var e=b[d],g=e.value,k=h.Type.UTF8;"valueTagClass"in e&&(k=e.valueTagClass);k===h.Type.UTF8&&(g=a.util.encodeUtf8(g));var l=!1;"valueConstructed"in e&&(l=e.valueConstructed);e=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(e.type).getBytes()),h.create(h.Class.UNIVERSAL,h.Type.SET,!0,[h.create(h.Class.UNIVERSAL,
519
+k,l,g)])]);c.value.push(e)}return c}var h=a.asn1,g=a.pki=a.pki||{},v=g.oids,q={};q.CN=v.commonName;q.commonName="CN";q.C=v.countryName;q.countryName="C";q.L=v.localityName;q.localityName="L";q.ST=v.stateOrProvinceName;q.stateOrProvinceName="ST";q.O=v.organizationName;q.organizationName="O";q.OU=v.organizationalUnitName;q.organizationalUnitName="OU";q.E=v.emailAddress;q.emailAddress="E";var D=a.pki.rsa.publicKeyValidator,y={name:"Certificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,
520
+value:[{name:"Certificate.TBSCertificate",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,
521
+capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,
522
+constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},
523
+{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:h.Class.UNIVERSAL,type:h.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:h.Class.UNIVERSAL,type:h.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},D,{name:"Certificate.TBSCertificate.issuerUniqueID",
524
+tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSubjectUniqueId"}]},
525
+{name:"Certificate.TBSCertificate.extensions",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},
526
+{name:"Certificate.signatureValue",tagClass:h.Class.UNIVERSAL,type:h.Type.BITSTRING,constructed:!1,capture:"certSignature"}]},B={name:"rsapss",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,
527
+type:h.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:h.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:h.Class.UNIVERSAL,type:h.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:h.Class.UNIVERSAL,
528
+type:h.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:h.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:h.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",
529
+tagClass:h.Class.UNIVERSAL,type:h.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},z={name:"CertificationRequest",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[{name:"CertificationRequestInfo",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:h.Class.UNIVERSAL,type:h.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",
530
+tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},D,{name:"CertificationRequestInfo.attributes",tagClass:h.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",
531
+tagClass:h.Class.UNIVERSAL,type:h.Type.SET,constructed:!0}]}]}]},{name:"CertificationRequest.signatureAlgorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:h.Class.UNIVERSAL,type:h.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:h.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:h.Class.UNIVERSAL,
532
+type:h.Type.BITSTRING,constructed:!1,capture:"csrSignature"}]};g.RDNAttributesAsArray=function(a,b){for(var c=[],d,e,g,r=0;r<a.value.length;++r){d=a.value[r];for(var k=0;k<d.value.length;++k)g={},e=d.value[k],g.type=h.derToOid(e.value[0].value),g.value=e.value[1].value,g.valueTagClass=e.value[1].type,g.type in v&&(g.name=v[g.type],g.name in q&&(g.shortName=q[g.name])),b&&(b.update(g.type),b.update(g.value)),c.push(g)}return c};g.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=
533
+a[c],e=h.derToOid(d.value[0].value),d=d.value[1].value,r=0;r<d.length;++r){var k={};k.type=e;k.value=d[r].value;k.valueTagClass=d[r].type;k.type in v&&(k.name=v[k.type],k.name in q&&(k.shortName=q[k.name]));if(k.type===v.extensionRequest){k.extensions=[];for(var l=0;l<k.value.length;++l)k.extensions.push(g.certificateExtensionFromAsn1(k.value[l]))}b.push(k)}return b};var O=function(a,b,c){var d={};if(a!==v["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:v.sha1},mgf:{algorithmOid:v.mgf1,hash:{algorithmOid:v.sha1}},
534
+saltLength:20});c={};a=[];if(!h.validate(b,B,c,a))throw b=Error("Cannot read RSASSA-PSS parameter block."),b.errors=a,b;void 0!==c.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=h.derToOid(c.hashOid));void 0!==c.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=h.derToOid(c.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=h.derToOid(c.maskGenHashOid));void 0!==c.saltLength&&(d.saltLength=c.saltLength.charCodeAt(0));return d};g.certificateFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE"!==
535
+b.type&&"X509 CERTIFICATE"!==b.type&&"TRUSTED CERTIFICATE"!==b.type)throw c=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'),c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificateFromAsn1(d,c)};g.certificateToPem=function(b,c){var d={type:"CERTIFICATE",body:h.toDer(g.certificateToAsn1(b)).getBytes()};
536
+return a.pem.encode(d,{maxline:c})};g.publicKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");b=h.fromDer(b.body);return g.publicKeyFromAsn1(b)};g.publicKeyToPem=function(b,c){var d={type:"PUBLIC KEY",
537
+body:h.toDer(g.publicKeyToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.publicKeyToRSAPublicKeyPem=function(b,c){var d={type:"RSA PUBLIC KEY",body:h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.getPublicKeyFingerprint=function(b,c){c=c||{};var d=c.md||a.md.sha1.create(),e;switch(c.type||"RSAPublicKey"){case "RSAPublicKey":e=h.toDer(g.publicKeyToRSAPublicKey(b)).getBytes();break;case "SubjectPublicKeyInfo":e=h.toDer(g.publicKeyToAsn1(b)).getBytes();
538
+break;default:throw Error('Unknown fingerprint type "'+c.type+'".');}d.start();d.update(e);d=d.digest();if("hex"===c.encoding)return d=d.toHex(),c.delimiter?d.match(/.{2}/g).join(c.delimiter):d;if("binary"===c.encoding)return d.getBytes();if(c.encoding)throw Error('Unknown encoding "'+c.encoding+'".');return d};g.certificationRequestFromPem=function(b,c,d){b=a.pem.decode(b)[0];if("CERTIFICATE REQUEST"!==b.type)throw c=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".'),
539
+c.headerType=b.type,c;if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");d=h.fromDer(b.body,d);return g.certificationRequestFromAsn1(d,c)};g.certificationRequestToPem=function(b,c){var d={type:"CERTIFICATE REQUEST",body:h.toDer(g.certificationRequestToAsn1(b)).getBytes()};return a.pem.encode(d,{maxline:c})};g.createCertificate=function(){var b={version:2,serialNumber:"00",signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=
540
null;b.validity={};b.validity.notBefore=new Date;b.validity.notAfter=new Date;b.issuer={};b.issuer.getField=function(a){return c(b.issuer,a)};b.issuer.addField=function(a){e([a]);b.issuer.attributes.push(a)};b.issuer.attributes=[];b.issuer.hash=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.extensions=[];b.publicKey=null;b.md=null;b.setSubject=function(a,c){e(a);
541
b.subject.attributes=a;delete b.subject.uniqueId;c&&(b.subject.uniqueId=c);b.subject.hash=null};b.setIssuer=function(a,c){e(a);b.issuer.attributes=a;delete b.issuer.uniqueId;c&&(b.issuer.uniqueId=c);b.issuer.hash=null};b.setExtensions=function(a){for(var c=0;c<a.length;++c)k(a[c],{cert:b});b.extensions=a};b.getExtension=function(a){"string"===typeof a&&(a={name:a});for(var c=null,d,e=0;null===c&&e<b.extensions.length;++e)d=b.extensions[e],a.id&&d.id===a.id?c=d:a.name&&d.name===a.name&&(c=d);return c};
542
-b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=h.getTBSCertificate(b);e=g.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
542
+b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certificate digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=e;b.tbsCertificate=g.getTBSCertificate(b);e=h.toDer(b.tbsCertificate);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(c){var d=!1;if(!b.issued(c)){var d=b.subject,e=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");
543
e.expectedIssuer=c.issuer.attributes;e.actualIssuer=d.attributes;throw e;}e=c.md;if(null===e){if(c.signatureOid in v)switch(v[c.signatureOid]){case "sha1WithRSAEncryption":e=a.md.sha1.create();break;case "md5WithRSAEncryption":e=a.md.md5.create();break;case "sha256WithRSAEncryption":e=a.md.sha256.create();break;case "sha512WithRSAEncryption":e=a.md.sha512.create();break;case "RSASSA-PSS":e=a.md.sha256.create()}if(null===e)throw e=Error("Could not compute certificate digest. Unknown signature OID."),
544
-e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||h.getTBSCertificate(c),k=g.toDer(k);e.update(k.getBytes())}if(null!==e){var m;switch(c.signatureOid){case v.sha1WithRSAEncryption:m=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;m=v[c.signatureParameters.mgf.algorithmOid];if(void 0===m||void 0===a.mgf[m])throw e=Error("Unsupported MGF function."),
545
-e.oid=c.signatureParameters.mgf.algorithmOid,e.name=m,e;m=a.mgf[m].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};m=a.pss.create(a.md[d].create(),m,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,m)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
546
-else if(d.attributes.length===a.attributes.length)for(var c=!0,e,h,g=0;c&&g<d.attributes.length;++g)if(e=d.attributes[g],h=a.attributes[g],e.type!==h.type||e.value!==h.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return h.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
547
-a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};h.certificateFromAsn1=function(b,d){var k={},n=[];if(!g.validate(b,y,k,n))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=n,k;if("string"!==typeof k.certSignature){for(var n="\x00",z=0;z<k.certSignature.length;++z)n+=g.toDer(k.certSignature[z]).getBytes();k.certSignature=n}var n=g.derToOid(k.publicKeyOid),u=h.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
548
-0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(g.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
549
-z.push(g.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(g.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(g.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
550
-u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(n=v[u.signatureOid],n){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
551
-k.signatureOid=u.signatureOid,k;z=g.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=h.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
552
-u.subject.attributes=h.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?h.certificateExtensionsFromAsn1(k.certExtensions):[];n===h.oids.rsaEncryption&&(u.publicKey=h.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};h.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(h.certificateExtensionFromAsn1(d.value[e]));
553
-return b};h.certificateExtensionFromAsn1=function(b){var c={};c.id=g.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===g.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=g.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
554
-32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=g.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===g.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===g.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=g.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
555
-g.fromDer(c.value),d=0;d<b.value.length;++d)e=g.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=g.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=g.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
556
-h={type:d.type,value:d.value};c.altNames.push(h);switch(d.type){case 7:h.ip=a.util.bytesToIP(d.value);break;case 8:h.oid=g.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=g.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};h.certificationRequestFromAsn1=function(b,d){var k={},n=[];if(!g.validate(b,z,k,n))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=n,k;if("string"!==typeof k.csrSignature){for(var n=
557
-"\x00",p=0;p<k.csrSignature.length;++p)n+=g.toDer(k.csrSignature[p]).getBytes();k.csrSignature=n}n=g.derToOid(k.publicKeyOid);if(n!==h.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=h.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
558
-k.csrSignatureParams,!1);n=a.util.createBuffer(k.csrSignature);++n.read;u.signature=n.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(n=v[u.signatureOid],n){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
559
-u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;n=g.toDer(u.certificationRequestInfo);u.md.update(n.getBytes())}n=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=h.RDNAttributesAsArray(k.certificationRequestInfoSubject,n);u.subject.hash=n.digest().toHex();u.publicKey=h.publicKeyFromAsn1(k.subjectPublicKeyInfo);
560
-u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=h.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};h.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
544
+e.signatureOid=c.signatureOid,e;var k=c.tbsCertificate||g.getTBSCertificate(c),k=h.toDer(k);e.update(k.getBytes())}if(null!==e){var l;switch(c.signatureOid){case v.sha1WithRSAEncryption:l=void 0;break;case v["RSASSA-PSS"]:d=v[c.signatureParameters.mgf.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw e=Error("Unsupported MGF hash function."),e.oid=c.signatureParameters.mgf.hash.algorithmOid,e.name=d,e;l=v[c.signatureParameters.mgf.algorithmOid];if(void 0===l||void 0===a.mgf[l])throw e=Error("Unsupported MGF function."),
545
+e.oid=c.signatureParameters.mgf.algorithmOid,e.name=l,e;l=a.mgf[l].create(a.md[d].create());d=v[c.signatureParameters.hash.algorithmOid];if(void 0===d||void 0===a.md[d])throw{message:"Unsupported RSASSA-PSS hash function.",oid:c.signatureParameters.hash.algorithmOid,name:d};l=a.pss.create(a.md[d].create(),l,c.signatureParameters.saltLength)}d=b.publicKey.verify(e.digest().getBytes(),c.signature,l)}return d};b.isIssuer=function(a){var c=!1,d=b.issuer;a=a.subject;if(d.hash&&a.hash)c=d.hash===a.hash;
546
+else if(d.attributes.length===a.attributes.length)for(var c=!0,e,g,h=0;c&&h<d.attributes.length;++h)if(e=d.attributes[h],g=a.attributes[h],e.type!==g.type||e.value!==g.value)c=!1;return c};b.issued=function(a){return a.isIssuer(b)};b.generateSubjectKeyIdentifier=function(){return g.getPublicKeyFingerprint(b.publicKey,{type:"RSAPublicKey"})};b.verifySubjectKeyIdentifier=function(){for(var c=v.subjectKeyIdentifier,d=0;d<b.extensions.length;++d){var e=b.extensions[d];if(e.id===c)return c=b.generateSubjectKeyIdentifier().getBytes(),
547
+a.util.hexToBytes(e.subjectKeyIdentifier)===c}return!1};return b};g.certificateFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,y,k,m))throw k=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate."),k.errors=m,k;if("string"!==typeof k.certSignature){for(var m="\x00",z=0;z<k.certSignature.length;++z)m+=h.toDer(k.certSignature[z]).getBytes();k.certSignature=m}var m=h.derToOid(k.publicKeyOid),u=g.createCertificate();u.version=k.certVersion?k.certVersion.charCodeAt(0):
548
+0;z=a.util.createBuffer(k.certSerialNumber);u.serialNumber=z.toHex();u.signatureOid=a.asn1.derToOid(k.certSignatureOid);u.signatureParameters=O(u.signatureOid,k.certSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.certinfoSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,k.certinfoSignatureParams,!1);z=a.util.createBuffer(k.certSignature);++z.read;u.signature=z.getBytes();z=[];void 0!==k.certValidity1UTCTime&&z.push(h.utcTimeToDate(k.certValidity1UTCTime));void 0!==k.certValidity2GeneralizedTime&&
549
+z.push(h.generalizedTimeToDate(k.certValidity2GeneralizedTime));void 0!==k.certValidity3UTCTime&&z.push(h.utcTimeToDate(k.certValidity3UTCTime));void 0!==k.certValidity4GeneralizedTime&&z.push(h.generalizedTimeToDate(k.certValidity4GeneralizedTime));if(2<z.length)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(2>z.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");
550
+u.validity.notBefore=z[0];u.validity.notAfter=z[1];u.tbsCertificate=k.tbsCertificate;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===u.md)throw k=Error("Could not compute certificate digest. Unknown signature OID."),
551
+k.signatureOid=u.signatureOid,k;z=h.toDer(u.tbsCertificate);u.md.update(z.getBytes())}z=a.md.sha1.create();u.issuer.getField=function(a){return c(u.issuer,a)};u.issuer.addField=function(a){e([a]);u.issuer.attributes.push(a)};u.issuer.attributes=g.RDNAttributesAsArray(k.certIssuer,z);k.certIssuerUniqueId&&(u.issuer.uniqueId=k.certIssuerUniqueId);u.issuer.hash=z.digest().toHex();z=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};
552
+u.subject.attributes=g.RDNAttributesAsArray(k.certSubject,z);k.certSubjectUniqueId&&(u.subject.uniqueId=k.certSubjectUniqueId);u.subject.hash=z.digest().toHex();u.extensions=k.certExtensions?g.certificateExtensionsFromAsn1(k.certExtensions):[];m===g.oids.rsaEncryption&&(u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo));return u};g.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(g.certificateExtensionFromAsn1(d.value[e]));
553
+return b};g.certificateExtensionFromAsn1=function(b){var c={};c.id=h.derToOid(b.value[0].value);c.critical=!1;b.value[1].type===h.Type.BOOLEAN?(c.critical=0!==b.value[1].value.charCodeAt(0),c.value=b.value[2].value):c.value=b.value[1].value;if(c.id in v)if(c.name=v[c.id],"keyUsage"===c.name){b=h.fromDer(c.value);var d=0,e=0;1<b.value.length&&(d=b.value.charCodeAt(1),e=2<b.value.length?b.value.charCodeAt(2):0);c.digitalSignature=128===(d&128);c.nonRepudiation=64===(d&64);c.keyEncipherment=32===(d&
554
+32);c.dataEncipherment=16===(d&16);c.keyAgreement=8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(e&128)}else if("basicConstraints"===c.name)b=h.fromDer(c.value),c.cA=0<b.value.length&&b.value[0].type===h.Type.BOOLEAN?0!==b.value[0].value.charCodeAt(0):!1,d=null,0<b.value.length&&b.value[0].type===h.Type.INTEGER?d=b.value[0].value:1<b.value.length&&(d=b.value[1].value),null!==d&&(c.pathLenConstraint=h.derToInteger(d));else if("extKeyUsage"===c.name)for(b=
555
+h.fromDer(c.value),d=0;d<b.value.length;++d)e=h.derToOid(b.value[d].value),e in v?c[v[e]]=!0:c[e]=!0;else if("nsCertType"===c.name)b=h.fromDer(c.value),d=0,1<b.value.length&&(d=b.value.charCodeAt(1)),c.client=128===(d&128),c.server=64===(d&64),c.email=32===(d&32),c.objsign=16===(d&16),c.reserved=8===(d&8),c.sslCA=4===(d&4),c.emailCA=2===(d&2),c.objCA=1===(d&1);else if("subjectAltName"===c.name||"issuerAltName"===c.name)for(c.altNames=[],b=h.fromDer(c.value),e=0;e<b.value.length;++e){var d=b.value[e],
556
+g={type:d.type,value:d.value};c.altNames.push(g);switch(d.type){case 7:g.ip=a.util.bytesToIP(d.value);break;case 8:g.oid=h.derToOid(d.value)}}else"subjectKeyIdentifier"===c.name&&(b=h.fromDer(c.value),c.subjectKeyIdentifier=a.util.bytesToHex(b.value));return c};g.certificationRequestFromAsn1=function(b,d){var k={},m=[];if(!h.validate(b,z,k,m))throw k=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest."),k.errors=m,k;if("string"!==typeof k.csrSignature){for(var m=
557
+"\x00",p=0;p<k.csrSignature.length;++p)m+=h.toDer(k.csrSignature[p]).getBytes();k.csrSignature=m}m=h.derToOid(k.publicKeyOid);if(m!==g.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var u=g.createCertificationRequest();u.version=k.csrVersion?k.csrVersion.charCodeAt(0):0;u.signatureOid=a.asn1.derToOid(k.csrSignatureOid);u.signatureParameters=O(u.signatureOid,k.csrSignatureParams,!0);u.siginfo.algorithmOid=a.asn1.derToOid(k.csrSignatureOid);u.siginfo.parameters=O(u.siginfo.algorithmOid,
558
+k.csrSignatureParams,!1);m=a.util.createBuffer(k.csrSignature);++m.read;u.signature=m.getBytes();u.certificationRequestInfo=k.certificationRequestInfo;if(d){u.md=null;if(u.signatureOid in v)switch(m=v[u.signatureOid],m){case "sha1WithRSAEncryption":u.md=a.md.sha1.create();break;case "md5WithRSAEncryption":u.md=a.md.md5.create();break;case "sha256WithRSAEncryption":u.md=a.md.sha256.create();break;case "sha512WithRSAEncryption":u.md=a.md.sha512.create();break;case "RSASSA-PSS":u.md=a.md.sha256.create()}if(null===
559
+u.md)throw k=Error("Could not compute certification request digest. Unknown signature OID."),k.signatureOid=u.signatureOid,k;m=h.toDer(u.certificationRequestInfo);u.md.update(m.getBytes())}m=a.md.sha1.create();u.subject.getField=function(a){return c(u.subject,a)};u.subject.addField=function(a){e([a]);u.subject.attributes.push(a)};u.subject.attributes=g.RDNAttributesAsArray(k.certificationRequestInfoSubject,m);u.subject.hash=m.digest().toHex();u.publicKey=g.publicKeyFromAsn1(k.subjectPublicKeyInfo);
560
+u.getAttribute=function(a){return c(u,a)};u.addAttribute=function(a){e([a]);u.attributes.push(a)};u.attributes=g.CRIAttributesAsArray(k.certificationRequestInfoAttributes||[]);return u};g.createCertificationRequest=function(){var b={version:0,signatureOid:null,signature:null,siginfo:{}};b.siginfo.algorithmOid=null;b.subject={};b.subject.getField=function(a){return c(b.subject,a)};b.subject.addField=function(a){e([a]);b.subject.attributes.push(a)};b.subject.attributes=[];b.subject.hash=null;b.publicKey=
561
null;b.attributes=[];b.getAttribute=function(a){return c(b,a)};b.addAttribute=function(a){e([a]);b.attributes.push(a)};b.md=null;b.setSubject=function(a){e(a);b.subject.attributes=a;b.subject.hash=null};b.setAttributes=function(a){e(a);b.attributes=a};b.sign=function(c,d){b.md=d||a.md.sha1.create();var e=v[b.md.algorithm+"WithRSAEncryption"];if(!e)throw e=Error("Could not compute certification request digest. Unknown message digest algorithm OID."),e.algorithm=b.md.algorithm,e;b.signatureOid=b.siginfo.algorithmOid=
562
-e;b.certificationRequestInfo=h.getCertificationRequestInfo(b);e=g.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
563
-d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||h.getCertificationRequestInfo(b),e=g.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
562
+e;b.certificationRequestInfo=g.getCertificationRequestInfo(b);e=h.toDer(b.certificationRequestInfo);b.md.update(e.getBytes());b.signature=c.sign(b.md)};b.verify=function(){var c=!1,d=b.md;if(null===d){if(b.signatureOid in v)switch(v[b.signatureOid]){case "sha1WithRSAEncryption":d=a.md.sha1.create();break;case "md5WithRSAEncryption":d=a.md.md5.create();break;case "sha256WithRSAEncryption":d=a.md.sha256.create();break;case "sha512WithRSAEncryption":d=a.md.sha512.create();break;case "RSASSA-PSS":d=a.md.sha256.create()}if(null===
563
+d)throw d=Error("Could not compute certification request digest. Unknown signature OID."),d.signatureOid=b.signatureOid,d;var e=b.certificationRequestInfo||g.getCertificationRequestInfo(b),e=h.toDer(e);d.update(e.getBytes())}if(null!==d){var k;switch(b.signatureOid){case v["RSASSA-PSS"]:c=v[b.signatureParameters.mgf.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported MGF hash function."),d.oid=b.signatureParameters.mgf.hash.algorithmOid,d.name=c,d;k=v[b.signatureParameters.mgf.algorithmOid];
564
if(void 0===k||void 0===a.mgf[k])throw d=Error("Unsupported MGF function."),d.oid=b.signatureParameters.mgf.algorithmOid,d.name=k,d;k=a.mgf[k].create(a.md[c].create());c=v[b.signatureParameters.hash.algorithmOid];if(void 0===c||void 0===a.md[c])throw d=Error("Unsupported RSASSA-PSS hash function."),d.oid=b.signatureParameters.hash.algorithmOid,d.name=c,d;k=a.pss.create(a.md[c].create(),k,b.signatureParameters.saltLength)}c=b.publicKey.verify(d.digest().getBytes(),b.signature,k)}return c};return b};
565
-h.getTBSCertificate=function(b){var c=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.CONTEXT_SPECIFIC,0,!0,[g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,g.integerToDer(b.version).getBytes())]),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),g.create(g.Class.UNIVERSAL,
566
-g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.UTCTIME,!1,g.dateToUtcTime(b.validity.notBefore)),g.create(g.Class.UNIVERSAL,g.Type.UTCTIME,!1,g.dateToUtcTime(b.validity.notAfter))]),d(b.subject),h.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(g.create(g.Class.CONTEXT_SPECIFIC,1,!0,[g.create(g.Class.UNIVERSAL,g.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(g.create(g.Class.CONTEXT_SPECIFIC,2,!0,[g.create(g.Class.UNIVERSAL,g.Type.BITSTRING,
567
-!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(h.certificateExtensionsToAsn1(b.extensions));return c};h.getCertificationRequestInfo=function(a){return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,g.integerToDer(a.version).getBytes()),d(a.subject),h.publicKeyToAsn1(a.publicKey),n(a)])};h.distinguishedNameToAsn1=function(a){return d(a)};h.certificateToAsn1=function(a){var b=a.tbsCertificate||h.getTBSCertificate(a);
568
-return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[b,g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),g.create(g.Class.UNIVERSAL,g.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};h.certificateExtensionsToAsn1=function(a){var b=g.create(g.Class.CONTEXT_SPECIFIC,3,!0,[]),c=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(h.certificateExtensionToAsn1(a[d]));
569
-return b};h.certificateExtensionToAsn1=function(a){var b=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]);b.value.push(g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(a.id).getBytes()));a.critical&&b.value.push(g.create(g.Class.UNIVERSAL,g.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=g.toDer(c).getBytes());b.value.push(g.create(g.Class.UNIVERSAL,g.Type.OCTETSTRING,!1,c));return b};h.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
570
-h.getCertificationRequestInfo(a);return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[b,g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),g.create(g.Class.UNIVERSAL,g.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};h.createCaStore=function(b){function c(b){if(!b.hash){var g=a.md.sha1.create();b.attributes=h.RDNAttributesAsArray(d(b),g);b.hash=g.digest().toHex()}return e.certs[b.hash]||
571
-null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=h.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=g.toDer(h.certificateToAsn1(b)).getBytes();
572
-for(var e=0;e<d.length;++e){var k=g.toDer(h.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};h.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
573
-h.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),g=new Date,k=!0,m=null,l=0;do{var n=c.shift(),z=null,p=!1;if(g<n.validity.notBefore||g>n.validity.notAfter)m={message:"Certificate is not valid yet or has expired.",error:h.certificateError.certificate_expired,notBefore:n.validity.notBefore,notAfter:n.validity.notAfter,now:g};if(null===m){z=c[0]||b.getIssuer(n);null===z&&n.isIssuer(n)&&(p=!0,z=n);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var r=!1;!r&&0<v.length;){z=v.shift();
574
-try{r=z.verify(n)}catch(y){}}r||(m={message:"Certificate signature is invalid.",error:h.certificateError.bad_certificate})}null!==m||z&&!p||b.hasCertificate(n)||(m={message:"Certificate is not trusted.",error:h.certificateError.unknown_ca})}null===m&&z&&!n.isIssuer(z)&&(m={message:"Certificate issuer is invalid.",error:h.certificateError.bad_certificate});if(null===m)for(v={keyUsage:!0,basicConstraints:!0},r=0;null===m&&r<n.extensions.length;++r){var w=n.extensions[r];!w.critical||w.name in v||(m=
575
-{message:"Certificate has an unsupported critical extension.",error:h.certificateError.unsupported_certificate})}null!==m||k&&(0!==c.length||z&&!p)||(k=n.getExtension("basicConstraints"),n=n.getExtension("keyUsage"),null!==n&&(n.keyCertSign&&null!==k||(m={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:h.certificateError.bad_certificate})),
576
-null!==m||null===k||k.cA||(m={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:h.certificateError.bad_certificate}),null===m&&null!==n&&"pathLenConstraint"in k&&l-1>k.pathLenConstraint&&(m={message:"Certificate basicConstraints pathLenConstraint violated.",error:h.certificateError.bad_certificate}));n=null===m?!0:m.error;k=d?d(n,l,e):n;if(!0===k)m=null;else{!0===n&&(m={message:"The application rejected the certificate.",error:h.certificateError.bad_certificate});
577
-if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(m.error=k):(k.message&&(m.message=k.message),k.error&&(m.error=k.error));throw m;}k=!1;++l}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
578
-c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var h=
579
-[],g=0;g<a.length;g++)for(var k=0;k<a[g].safeBags.length;k++){var q=a[g].safeBags[k];if(void 0===e||q.type===e)null===b?h.push(q):void 0!==q.attributes[b]&&0<=q.attributes[b].indexOf(d)&&h.push(q)}return h}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,h,m){c=n.fromDer(c,h);if(c.tagClass!==n.Class.UNIVERSAL||c.type!==n.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
580
-for(var l=0;l<c.value.length;l++){var p={},r=[];if(!n.validate(c.value[l],v,p,r))throw b=Error("Cannot read ContentInfo."),b.errors=r,b;var r={encrypted:!1},u=null,u=p.content.value[0];switch(n.derToOid(p.contentType)){case g.oids.data:if(u.tagClass!==n.Class.UNIVERSAL||u.type!==n.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case g.oids.encryptedData:var y=m,p={},C=[];if(!n.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,C))throw b=Error("Cannot read EncryptedContentInfo."),
581
-b.errors=C,b;u=n.derToOid(p.contentType);if(u!==g.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=n.derToOid(p.encAlgorithm);u=g.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();r.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=n.derToOid(p.contentType),b;}r.safeBags=
582
-k(u,h,m);b.safeContents.push(r)}}function k(a,b,c){if(!b&&0===a.length)return[];a=n.fromDer(a,b);if(a.tagClass!==n.Class.UNIVERSAL||a.type!==n.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var h={},q=[];if(!n.validate(a.value[e],D,h,q))throw a=Error("Cannot read SafeBag."),a.errors=q,a;var m={type:n.derToOid(h.bagId),attributes:p(h.bagAttributes)};d.push(m);var l,v,r=h.bagValue.value[0];switch(m.type){case g.oids.pkcs8ShroudedKeyBag:if(r=
583
-g.decryptPrivateKeyInfo(r,c),null===r)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case g.oids.keyBag:try{m.key=g.privateKeyFromAsn1(r)}catch(y){m.key=null,m.asn1=r}continue;case g.oids.certBag:l=C;v=function(){if(n.derToOid(h.certId)!==g.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=n.derToOid(h.certId);throw a;}a=n.fromDer(h.cert,b);try{m.cert=g.certificateFromAsn1(a,!0)}catch(c){m.cert=null,m.asn1=a}};break;default:throw a=
584
-Error("Unsupported PKCS#12 SafeBag type."),a.oid=m.type,a;}if(void 0!==l&&!n.validate(r,l,h,q))throw a=Error("Cannot read PKCS#12 "+l.name),a.errors=q,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!n.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=n.derToOid(d.oid);if(void 0!==g.oids[e]){b[g.oids[e]]=[];for(var h=0;h<d.values.length;++h)b[g.oids[e]].push(d.values[h].value)}}return b}var n=a.asn1,g=a.pki,h=a.pkcs12=
585
-a.pkcs12||{},v={name:"ContentInfo",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:n.Class.UNIVERSAL,type:n.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:n.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},r={name:"PFX",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"version"},
586
-v,{name:"PFX.macData",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:n.Class.UNIVERSAL,type:n.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
587
-tagClass:n.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:n.Class.UNIVERSAL,type:n.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:n.Class.UNIVERSAL,type:n.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,
588
-value:[{name:"SafeBag.bagId",tagClass:n.Class.UNIVERSAL,type:n.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:n.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:n.Class.UNIVERSAL,type:n.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:n.Class.UNIVERSAL,type:n.Type.OID,constructed:!1,
589
-capture:"oid"},{name:"Attribute.attrValues",tagClass:n.Class.UNIVERSAL,type:n.Type.SET,constructed:!0,capture:"values"}]},C={name:"CertBag",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:n.Class.UNIVERSAL,type:n.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:n.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:n.Class.UNIVERSAL,type:n.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
590
-h.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!n.validate(b,r,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
591
-(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(n.derToOid(v.contentType)!==g.oids.data)throw k=
592
-Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=n.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==n.Class.UNIVERSAL||b.type!==n.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,C=0,u=n.derToOid(v.macAlgorithm);switch(u){case g.oids.sha1:x=a.md.sha1.create();C=20;break;case g.oids.sha256:x=a.md.sha256.create();C=32;break;case g.oids.sha384:x=a.md.sha384.create();C=48;break;case g.oids.sha512:x=a.md.sha512.create();
593
-C=64;break;case g.oids.md5:x=a.md.md5.create(),C=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,C=h.generateKey(p,u,3,D,C,x),u=a.hmac.create();u.start(x,C);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};h.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
594
-8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,m;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var l=a.util.isArray(c)?c[0]:c;"string"===typeof l&&(l=g.certificateFromPem(l));k=a.md.sha1.create();k.update(n.toDer(g.certificateToAsn1(l)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);l=[];null!==
595
-k&&l.push(n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.localKeyId).getBytes()),n.create(n.Class.UNIVERSAL,n.Type.SET,!0,[n.create(n.Class.UNIVERSAL,n.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&l.push(n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.friendlyName).getBytes()),n.create(n.Class.UNIVERSAL,n.Type.SET,!0,[n.create(n.Class.UNIVERSAL,n.Type.BMPSTRING,!1,e.friendlyName)])]));
596
-0<l.length&&(m=n.create(n.Class.UNIVERSAL,n.Type.SET,!0,l));k=[];l=[];null!==c&&(l=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<l.length;++v){c=l[v];"string"===typeof c&&(c=g.certificateFromPem(c));var r=0===v?m:void 0;c=g.certificateToAsn1(c);c=n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.certBag).getBytes()),n.create(n.Class.CONTEXT_SPECIFIC,0,!0,[n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.x509Certificate).getBytes()),
597
-n.create(n.Class.CONTEXT_SPECIFIC,0,!0,[n.create(n.Class.UNIVERSAL,n.Type.OCTETSTRING,!1,n.toDer(c).getBytes())])])]),r]);p.push(c)}0<p.length&&(c=n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,p),c=n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.data).getBytes()),n.create(n.Class.CONTEXT_SPECIFIC,0,!0,[n.create(n.Class.UNIVERSAL,n.Type.OCTETSTRING,!1,n.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=g.wrapRsaPrivateKey(g.privateKeyToAsn1(b)),
598
-c=null===d?n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.keyBag).getBytes()),n.create(n.Class.CONTEXT_SPECIFIC,0,!0,[b]),m]):n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.pkcs8ShroudedKeyBag).getBytes()),n.create(n.Class.CONTEXT_SPECIFIC,0,!0,[g.encryptPrivateKeyInfo(b,d,e)]),m]),b=n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[c]),b=n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,
599
-[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.data).getBytes()),n.create(n.Class.CONTEXT_SPECIFIC,0,!0,[n.create(n.Class.UNIVERSAL,n.Type.OCTETSTRING,!1,n.toDer(b).getBytes())])]),k.push(b));m=n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=h.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(n.toDer(m).getBytes()),d=d.getMac(),y=n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,
600
-!0,[n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.sha1).getBytes()),n.create(n.Class.UNIVERSAL,n.Type.NULL,!1,"")]),n.create(n.Class.UNIVERSAL,n.Type.OCTETSTRING,!1,d.getBytes())]),n.create(n.Class.UNIVERSAL,n.Type.OCTETSTRING,!1,y.getBytes()),n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,n.integerToDer(e).getBytes())]));return n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,
601
-n.Type.INTEGER,!1,n.integerToDer(3).getBytes()),n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(g.oids.data).getBytes()),n.create(n.Class.CONTEXT_SPECIFIC,0,!0,[n.create(n.Class.UNIVERSAL,n.Type.OCTETSTRING,!1,n.toDer(m).getBytes())])]),y])};h.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,
602
-p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
565
+g.getTBSCertificate=function(b){var c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.CONTEXT_SPECIFIC,0,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(b.version).getBytes())]),h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber)),h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(b.siginfo.algorithmOid).getBytes()),p(b.siginfo.algorithmOid,b.siginfo.parameters)]),d(b.issuer),h.create(h.Class.UNIVERSAL,
566
+h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notBefore)),h.create(h.Class.UNIVERSAL,h.Type.UTCTIME,!1,h.dateToUtcTime(b.validity.notAfter))]),d(b.subject),g.publicKeyToAsn1(b.publicKey)]);b.issuer.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,1,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+b.issuer.uniqueId)]));b.subject.uniqueId&&c.value.push(h.create(h.Class.CONTEXT_SPECIFIC,2,!0,[h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,
567
+!1,String.fromCharCode(0)+b.subject.uniqueId)]));0<b.extensions.length&&c.value.push(g.certificateExtensionsToAsn1(b.extensions));return c};g.getCertificationRequestInfo=function(a){return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.INTEGER,!1,h.integerToDer(a.version).getBytes()),d(a.subject),g.publicKeyToAsn1(a.publicKey),m(a)])};g.distinguishedNameToAsn1=function(a){return d(a)};g.certificateToAsn1=function(a){var b=a.tbsCertificate||g.getTBSCertificate(a);
568
+return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.certificateExtensionsToAsn1=function(a){var b=h.create(h.Class.CONTEXT_SPECIFIC,3,!0,[]),c=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(g.certificateExtensionToAsn1(a[d]));
569
+return b};g.certificateExtensionToAsn1=function(a){var b=h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[]);b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.id).getBytes()));a.critical&&b.value.push(h.create(h.Class.UNIVERSAL,h.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;"string"!==typeof a.value&&(c=h.toDer(c).getBytes());b.value.push(h.create(h.Class.UNIVERSAL,h.Type.OCTETSTRING,!1,c));return b};g.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||
570
+g.getCertificationRequestInfo(a);return h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[b,h.create(h.Class.UNIVERSAL,h.Type.SEQUENCE,!0,[h.create(h.Class.UNIVERSAL,h.Type.OID,!1,h.oidToDer(a.signatureOid).getBytes()),p(a.signatureOid,a.signatureParameters)]),h.create(h.Class.UNIVERSAL,h.Type.BITSTRING,!1,String.fromCharCode(0)+a.signature)])};g.createCaStore=function(b){function c(b){if(!b.hash){var h=a.md.sha1.create();b.attributes=g.RDNAttributesAsArray(d(b),h);b.hash=h.digest().toHex()}return e.certs[b.hash]||
571
+null}var e={certs:{},getIssuer:function(a){return c(a.issuer)},addCertificate:function(b){"string"===typeof b&&(b=a.pki.certificateFromPem(b));if(!b.subject.hash){var c=a.md.sha1.create();b.subject.attributes=g.RDNAttributesAsArray(d(b.subject),c);b.subject.hash=c.digest().toHex()}b.subject.hash in e.certs?(c=e.certs[b.subject.hash],a.util.isArray(c)||(c=[c]),c.push(b)):e.certs[b.subject.hash]=b},hasCertificate:function(b){var d=c(b.subject);if(!d)return!1;a.util.isArray(d)||(d=[d]);b=h.toDer(g.certificateToAsn1(b)).getBytes();
572
+for(var e=0;e<d.length;++e){var k=h.toDer(g.certificateToAsn1(d[e])).getBytes();if(b===k)return!0}return!1}};if(b)for(var k=0;k<b.length;++k)e.addCertificate(b[k]);return e};g.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"};
573
+g.verifyCertificateChain=function(b,c,d){c=c.slice(0);var e=c.slice(0),h=new Date,k=!0,l=null,n=0;do{var m=c.shift(),z=null,p=!1;if(h<m.validity.notBefore||h>m.validity.notAfter)l={message:"Certificate is not valid yet or has expired.",error:g.certificateError.certificate_expired,notBefore:m.validity.notBefore,notAfter:m.validity.notAfter,now:h};if(null===l){z=c[0]||b.getIssuer(m);null===z&&m.isIssuer(m)&&(p=!0,z=m);if(z){var v=z;a.util.isArray(v)||(v=[v]);for(var q=!1;!q&&0<v.length;){z=v.shift();
574
+try{q=z.verify(m)}catch(y){}}q||(l={message:"Certificate signature is invalid.",error:g.certificateError.bad_certificate})}null!==l||z&&!p||b.hasCertificate(m)||(l={message:"Certificate is not trusted.",error:g.certificateError.unknown_ca})}null===l&&z&&!m.isIssuer(z)&&(l={message:"Certificate issuer is invalid.",error:g.certificateError.bad_certificate});if(null===l)for(v={keyUsage:!0,basicConstraints:!0},q=0;null===l&&q<m.extensions.length;++q){var w=m.extensions[q];!w.critical||w.name in v||(l=
575
+{message:"Certificate has an unsupported critical extension.",error:g.certificateError.unsupported_certificate})}null!==l||k&&(0!==c.length||z&&!p)||(k=m.getExtension("basicConstraints"),m=m.getExtension("keyUsage"),null!==m&&(m.keyCertSign&&null!==k||(l={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:g.certificateError.bad_certificate})),
576
+null!==l||null===k||k.cA||(l={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:g.certificateError.bad_certificate}),null===l&&null!==m&&"pathLenConstraint"in k&&n-1>k.pathLenConstraint&&(l={message:"Certificate basicConstraints pathLenConstraint violated.",error:g.certificateError.bad_certificate}));m=null===l?!0:l.error;k=d?d(m,n,e):m;if(!0===k)l=null;else{!0===m&&(l={message:"The application rejected the certificate.",error:g.certificateError.bad_certificate});
577
+if(k||0===k)"object"!==typeof k||a.util.isArray(k)?"string"===typeof k&&(l.error=k):(k.message&&(l.message=k.message),k.error&&(l.error=k.error));throw l;}k=!1;++n}while(0<c.length);return!0}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.x509)return c.x509;
578
+c.defined.x509=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/x509","require module ./aes ./asn1 ./des ./md ./mgf ./oids ./pem ./pss ./rsa ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(a,b,d,e){for(var g=
579
+[],h=0;h<a.length;h++)for(var k=0;k<a[h].safeBags.length;k++){var r=a[h].safeBags[k];if(void 0===e||r.type===e)null===b?g.push(r):void 0!==r.attributes[b]&&0<=r.attributes[b].indexOf(d)&&g.push(r)}return g}function d(b){if(b.composed||b.constructed){for(var c=a.util.createBuffer(),e=0;e<b.value.length;++e)c.putBytes(b.value[e].value);b.composed=b.constructed=!1;b.value=c.getBytes()}return b}function e(b,c,g,l){c=m.fromDer(c,g);if(c.tagClass!==m.Class.UNIVERSAL||c.type!==m.Type.SEQUENCE||!0!==c.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");
580
+for(var n=0;n<c.value.length;n++){var p={},q=[];if(!m.validate(c.value[n],v,p,q))throw b=Error("Cannot read ContentInfo."),b.errors=q,b;var q={encrypted:!1},u=null,u=p.content.value[0];switch(m.derToOid(p.contentType)){case h.oids.data:if(u.tagClass!==m.Class.UNIVERSAL||u.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");u=d(u).value;break;case h.oids.encryptedData:var y=l,p={},B=[];if(!m.validate(u,a.pkcs7.asn1.encryptedDataValidator,p,B))throw b=Error("Cannot read EncryptedContentInfo."),
581
+b.errors=B,b;u=m.derToOid(p.contentType);if(u!==h.oids.data)throw b=Error("PKCS#12 EncryptedContentInfo ContentType is not Data."),b.oid=u,b;u=m.derToOid(p.encAlgorithm);u=h.pbe.getCipher(u,p.encParameter,y);p=d(p.encryptedContentAsn1);p=a.util.createBuffer(p.value);u.update(p);if(!u.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");u=u.output.getBytes();q.encrypted=!0;break;default:throw b=Error("Unsupported PKCS#12 contentType."),b.contentType=m.derToOid(p.contentType),b;}q.safeBags=
582
+k(u,g,l);b.safeContents.push(q)}}function k(a,b,c){if(!b&&0===a.length)return[];a=m.fromDer(a,b);if(a.tagClass!==m.Class.UNIVERSAL||a.type!==m.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],e=0;e<a.value.length;e++){var g={},r=[];if(!m.validate(a.value[e],D,g,r))throw a=Error("Cannot read SafeBag."),a.errors=r,a;var l={type:m.derToOid(g.bagId),attributes:p(g.bagAttributes)};d.push(l);var n,v,q=g.bagValue.value[0];switch(l.type){case h.oids.pkcs8ShroudedKeyBag:if(q=
583
+h.decryptPrivateKeyInfo(q,c),null===q)throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case h.oids.keyBag:try{l.key=h.privateKeyFromAsn1(q)}catch(y){l.key=null,l.asn1=q}continue;case h.oids.certBag:n=B;v=function(){if(m.derToOid(g.certId)!==h.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");a.oid=m.derToOid(g.certId);throw a;}a=m.fromDer(g.cert,b);try{l.cert=h.certificateFromAsn1(a,!0)}catch(c){l.cert=null,l.asn1=a}};break;default:throw a=
584
+Error("Unsupported PKCS#12 SafeBag type."),a.oid=l.type,a;}if(void 0!==n&&!m.validate(q,n,g,r))throw a=Error("Cannot read PKCS#12 "+n.name),a.errors=r,a;v()}return d}function p(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},e=[];if(!m.validate(a[c],y,d,e))throw a=Error("Cannot read PKCS#12 BagAttribute."),a.errors=e,a;e=m.derToOid(d.oid);if(void 0!==h.oids[e]){b[h.oids[e]]=[];for(var g=0;g<d.values.length;++g)b[h.oids[e]].push(d.values[g].value)}}return b}var m=a.asn1,h=a.pki,g=a.pkcs12=
585
+a.pkcs12||{},v={name:"ContentInfo",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},q={name:"PFX",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,capture:"version"},
586
+v,{name:"PFX.macData",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",
587
+tagClass:m.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:m.Class.UNIVERSAL,type:m.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:m.Class.UNIVERSAL,type:m.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},D={name:"SafeBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,
588
+value:[{name:"SafeBag.bagId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},y={name:"Attribute",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,
589
+capture:"oid"},{name:"Attribute.attrValues",tagClass:m.Class.UNIVERSAL,type:m.Type.SET,constructed:!0,capture:"values"}]},B={name:"CertBag",tagClass:m.Class.UNIVERSAL,type:m.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:m.Class.UNIVERSAL,type:m.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:m.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:m.Class.UNIVERSAL,type:m.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};
590
+g.pkcs12FromAsn1=function(b,k,p){"string"===typeof k?(p=k,k=!0):void 0===k&&(k=!0);var v={};if(!m.validate(b,q,v,[]))throw k=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX."),k.errors=k,k;var y={version:v.version.charCodeAt(0),safeContents:[],getBags:function(b){var d={},e;"localKeyId"in b?e=b.localKeyId:"localKeyIdHex"in b&&(e=a.util.hexToBytes(b.localKeyIdHex));void 0===e&&!("friendlyName"in b)&&"bagType"in b&&(d[b.bagType]=c(y.safeContents,null,null,b.bagType));void 0!==e&&
591
+(d.localKeyId=c(y.safeContents,"localKeyId",e,b.bagType));"friendlyName"in b&&(d.friendlyName=c(y.safeContents,"friendlyName",b.friendlyName,b.bagType));return d},getBagsByFriendlyName:function(a,b){return c(y.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return c(y.safeContents,"localKeyId",a,b)}};if(3!==v.version.charCodeAt(0))throw k=Error("PKCS#12 PFX of version other than 3 not supported."),k.version=v.version.charCodeAt(0),k;if(m.derToOid(v.contentType)!==h.oids.data)throw k=
592
+Error("Only PKCS#12 PFX in password integrity mode supported."),k.oid=m.derToOid(v.contentType),k;b=v.content.value[0];if(b.tagClass!==m.Class.UNIVERSAL||b.type!==m.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");b=d(b);if(v.mac){var x=null,B=0,u=m.derToOid(v.macAlgorithm);switch(u){case h.oids.sha1:x=a.md.sha1.create();B=20;break;case h.oids.sha256:x=a.md.sha256.create();B=32;break;case h.oids.sha384:x=a.md.sha384.create();B=48;break;case h.oids.sha512:x=a.md.sha512.create();
593
+B=64;break;case h.oids.md5:x=a.md.md5.create(),B=16}if(null===x)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var u=new a.util.ByteBuffer(v.macSalt),D="macIterations"in v?parseInt(a.util.bytesToHex(v.macIterations),16):1,B=g.generateKey(p,u,3,D,B,x),u=a.hmac.create();u.start(x,B);u.update(b.value);if(u.getMac().getBytes()!==v.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?");}e(y,b.value,k,p);return y};g.toPkcs12Asn1=function(b,c,d,e){e=e||{};e.saltSize=e.saltSize||
594
+8;e.count=e.count||2048;e.algorithm=e.algorithm||e.encAlgorithm||"aes128";"useMac"in e||(e.useMac=!0);"localKeyId"in e||(e.localKeyId=null);"generateLocalKeyId"in e||(e.generateLocalKeyId=!0);var k=e.localKeyId,l;if(null!==k)k=a.util.hexToBytes(k);else if(e.generateLocalKeyId)if(c){var n=a.util.isArray(c)?c[0]:c;"string"===typeof n&&(n=h.certificateFromPem(n));k=a.md.sha1.create();k.update(m.toDer(h.certificateToAsn1(n)).getBytes());k=k.digest().getBytes()}else k=a.random.getBytes(20);n=[];null!==
595
+k&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.localKeyId).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,k)])]));"friendlyName"in e&&n.push(m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.friendlyName).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SET,!0,[m.create(m.Class.UNIVERSAL,m.Type.BMPSTRING,!1,e.friendlyName)])]));
596
+0<n.length&&(l=m.create(m.Class.UNIVERSAL,m.Type.SET,!0,n));k=[];n=[];null!==c&&(n=a.util.isArray(c)?c:[c]);for(var p=[],v=0;v<n.length;++v){c=n[v];"string"===typeof c&&(c=h.certificateFromPem(c));var q=0===v?l:void 0;c=h.certificateToAsn1(c);c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.certBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.x509Certificate).getBytes()),
597
+m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])])]),q]);p.push(c)}0<p.length&&(c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,p),c=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(c).getBytes())])]),k.push(c));c=null;null!==b&&(b=h.wrapRsaPrivateKey(h.privateKeyToAsn1(b)),
598
+c=null===d?m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.keyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[b]),l]):m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.pkcs8ShroudedKeyBag).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[h.encryptPrivateKeyInfo(b,d,e)]),l]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[c]),b=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,
599
+[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(b).getBytes())])]),k.push(b));l=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,k);var y;e.useMac&&(k=a.md.sha1.create(),y=new a.util.ByteBuffer(a.random.getBytes(e.saltSize)),e=e.count,b=g.generateKey(d,y,3,e,20),d=a.hmac.create(),d.start(k,b),d.update(m.toDer(l).getBytes()),d=d.getMac(),y=m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,
600
+!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.sha1).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.NULL,!1,"")]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,d.getBytes())]),m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,y.getBytes()),m.create(m.Class.UNIVERSAL,m.Type.INTEGER,!1,m.integerToDer(e).getBytes())]));return m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,
601
+m.Type.INTEGER,!1,m.integerToDer(3).getBytes()),m.create(m.Class.UNIVERSAL,m.Type.SEQUENCE,!0,[m.create(m.Class.UNIVERSAL,m.Type.OID,!1,m.oidToDer(h.oids.data).getBytes()),m.create(m.Class.CONTEXT_SPECIFIC,0,!0,[m.create(m.Class.UNIVERSAL,m.Type.OCTETSTRING,!1,m.toDer(l).getBytes())])]),y])};g.generateKey=a.pbe.generatePkcs12Key}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,
602
+p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs12)return c.pkcs12;c.defined.pkcs12=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs12}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/pkcs12","require module ./asn1 ./hmac ./oids ./pkcs7asn1 ./pbe ./random ./rsa ./sha1 ./util ./x509".split(" "),
603
function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=a.asn1,d=a.pki=a.pki||{};d.pemToDer=function(b){b=a.pem.decode(b)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return a.util.createBuffer(b.body)};d.privateKeyFromPem=function(b){b=a.pem.decode(b)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var e=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
604
e.headerType=b.type;throw e;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");b=c.fromDer(b.body);return d.privateKeyFromAsn1(b)};d.privateKeyToPem=function(b,e){var k={type:"RSA PRIVATE KEY",body:c.toDer(d.privateKeyToAsn1(b)).getBytes()};return a.pem.encode(k,{maxline:e})};d.privateKeyInfoToPem=function(b,d){var e={type:"PRIVATE KEY",body:c.toDer(b).getBytes()};return a.pem.encode(e,{maxline:d})}}if("function"!==typeof a)if("object"===
605
-typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
606
-Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var h=a.util.createBuffer(),g=b.length>>1,k=g+(b.length&1),m=b.substr(0,k),k=b.substr(g,k);b=a.util.createBuffer();g=a.hmac.create();d=c+d;var l=Math.ceil(e/16);c=Math.ceil(e/20);g.start("MD5",m);m=a.util.createBuffer();b.putBytes(d);
607
-for(var n=0;n<l;++n)g.start(null,null),g.update(b.getBytes()),b.putBuffer(g.digest()),g.start(null,null),g.update(b.bytes()+d),m.putBuffer(g.digest());g.start("SHA1",k);k=a.util.createBuffer();b.clear();b.putBytes(d);for(n=0;n<c;++n)g.start(null,null),g.update(b.getBytes()),b.putBuffer(g.digest()),g.start(null,null),g.update(b.bytes()+d),k.putBuffer(g.digest());h.putBytes(a.util.xorBytes(m.getBytes(),k.getBytes(),e));return h},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
608
-a.util.createBuffer(e);c.length=e.length;d=!0}catch(h){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(h){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},n={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
609
-minor:2},TLS_1_2:{major:3,minor:3}}};n.SupportedVersions=[n.Versions.TLS_1_1,n.Versions.TLS_1_0];n.Version=n.SupportedVersions[0];n.MaxFragment=15360;n.ConnectionEnd={server:0,client:1};n.PRFAlgorithm={tls_prf_sha256:0};n.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};n.CipherType={stream:0,block:1,aead:2};n.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};n.CompressionMethod={none:0,deflate:1};n.ContentType={change_cipher_spec:20,alert:21,handshake:22,
610
-application_data:23,heartbeat:24};n.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};n.Alert={};n.Alert.Level={warning:1,fatal:2};n.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
611
-certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};n.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};n.CipherSuites={};n.getCipherSuite=function(a){var b=null,c;for(c in n.CipherSuites){var d=n.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
612
-n.handleUnexpected=function(a,b){(a.open||a.entity!==n.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.unexpected_message}})};n.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(n.queue(a,n.createAlert(a,{level:n.Alert.Level.warning,description:n.Alert.Description.no_renegotiation})),n.flush(a));a.process()};n.parseHelloMessage=function(b,c,d){var e=null,h=b.entity===
613
-n.ConnectionEnd.client;if(38>d)b.error(b,{message:h?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.illegal_parameter}});else{c=c.fragment;var g=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};h?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
614
-k(c,1));g=d-(g-c.length());if(0<g){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!h)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
615
-send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.protocol_version}});if(h)b.session.cipherSuite=n.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=n.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
616
-b.session.compressionMethod=h?e.compression_method:n.CompressionMethod.none}return e};n.createSecurityParameters=function(a,b){var c=a.entity===n.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:n.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:n.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
617
-compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};n.handleServerHello=function(a,b,c){b=n.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
618
-(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=g,a.session.resuming=!1,n.createSecurityParameters(a,b));a.session.id=c;a.process()}};n.handleClientHello=function(b,c,d){c=n.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
619
-c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var h,e=1;e<n.SupportedVersions.length&&!(h=n.SupportedVersions[e],h.minor<=c.version.minor);++e);b.version={major:h.major,minor:h.minor};b.session.version=b.version}null!==d?(b.expect=H,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,n.createSecurityParameters(b,c));b.open=!0;n.queue(b,n.createRecord(b,{type:n.ContentType.handshake,
620
-data:n.createServerHello(b)}));b.session.resuming?(n.queue(b,n.createRecord(b,{type:n.ContentType.change_cipher_spec,data:n.createChangeCipherSpec()})),b.state.pending=n.createConnectionState(b),b.state.current.write=b.state.pending.write,n.queue(b,n.createRecord(b,{type:n.ContentType.handshake,data:n.createFinished(b)}))):(n.queue(b,n.createRecord(b,{type:n.ContentType.handshake,data:n.createCertificate(b)})),b.fail||(n.queue(b,n.createRecord(b,{type:n.ContentType.handshake,data:n.createServerKeyExchange(b)})),
621
-!1!==b.verifyClient&&n.queue(b,n.createRecord(b,{type:n.ContentType.handshake,data:n.createCertificateRequest(b)})),n.queue(b,n.createRecord(b,{type:n.ContentType.handshake,data:n.createServerHelloDone(b)}))));n.flush(b);b.process()}};n.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,g;c=[];try{for(;0<d.length();)e=
622
-k(d,3),g=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(g,!0),c.push(e)}catch(m){return b.error(b,{message:"Could not parse certificate list.",cause:m,send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.bad_certificate}})}e=b.entity===n.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?h:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],n.verifyCertificateChain(b,c)&&(b.expect=e?h:A)):b.error(b,{message:e?"No server certificate provided.":
623
-"No client certificate provided.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.illegal_parameter}});b.process()};n.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};n.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
624
-send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.internal_error}});
625
-try{var h=b.session.sp;h.pre_master_secret=d.decrypt(c);var g=b.session.clientHelloVersion;if(g.major!==h.pre_master_secret.charCodeAt(0)||g.minor!==h.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){h.pre_master_secret=a.random.getBytes(48)}b.expect=H;null!==b.session.clientCertificate&&(b.expect=F);b.process()};n.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:n.Alert.Level.fatal,
626
-description:n.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=r;a.process()};n.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
627
-e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(h){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.handshake_failure}})}b.expect=H;b.process()};n.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
628
-send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
629
-return b.error(b,c)}null!==b.session.certificateRequest&&(c=n.createRecord(b,{type:n.ContentType.handshake,data:n.createCertificate(b)}),n.queue(b,c));c=n.createRecord(b,{type:n.ContentType.handshake,data:n.createClientKeyExchange(b)});n.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&n.queue(a,n.createRecord(a,{type:n.ContentType.handshake,data:n.createCertificateVerify(a,b)}));n.queue(a,n.createRecord(a,{type:n.ContentType.change_cipher_spec,
630
-data:n.createChangeCipherSpec()}));a.state.pending=n.createConnectionState(a);a.state.current.write=a.state.pending.write;n.queue(a,n.createRecord(a,{type:n.ContentType.handshake,data:n.createFinished(a)}));a.expect=D;n.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);n.getClientSignature(b,c)};n.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
631
-alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.illegal_parameter}});var c=a.entity===n.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=n.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};n.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var h=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
632
-e.putBuffer(b.session.sha1.digest());var g=b.entity===n.ConnectionEnd.client;e=c(b.session.sp.master_secret,g?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.decrypt_error}});b.session.md5.update(h);b.session.sha1.update(h);if(b.session.resuming&&g||!b.session.resuming&&!g)n.queue(b,n.createRecord(b,{type:n.ContentType.change_cipher_spec,
633
-data:n.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,n.queue(b,n.createRecord(b,{type:n.ContentType.handshake,data:n.createFinished(b)}));b.expect=g?C:G;b.handshaking=!1;++b.handshakes;b.peerCertificate=g?b.session.serverCertificate:b.session.clientCertificate;n.flush(b);b.isConnected=!0;b.connected(b);b.process()};n.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case n.Alert.Description.close_notify:d=
634
-"Connection closed.";break;case n.Alert.Description.unexpected_message:d="Unexpected message.";break;case n.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case n.Alert.Description.decryption_failed:d="Decryption failed.";break;case n.Alert.Description.record_overflow:d="Record overflow.";break;case n.Alert.Description.decompression_failure:d="Decompression failed.";break;case n.Alert.Description.handshake_failure:d="Handshake failure.";break;case n.Alert.Description.bad_certificate:d=
635
-"Bad certificate.";break;case n.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case n.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case n.Alert.Description.certificate_expired:d="Certificate expired.";break;case n.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case n.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case n.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case n.Alert.Description.access_denied:d=
636
-"Access denied.";break;case n.Alert.Description.decode_error:d="Decode error.";break;case n.Alert.Description.decrypt_error:d="Decrypt error.";break;case n.Alert.Description.export_restriction:d="Export restriction.";break;case n.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case n.Alert.Description.insufficient_security:d="Insufficient security.";break;case n.Alert.Description.internal_error:d="Internal error.";break;case n.Alert.Description.user_canceled:d="User canceled.";
637
-break;case n.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===n.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===n.ConnectionEnd.client?"server":"client",alert:c});a.process()};n.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),h=d.getInt24();if(h>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var g=d.bytes(h+
638
-4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==n.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==n.HandshakeType.hello_request&&e!==n.HandshakeType.certificate_verify&&e!==n.HandshakeType.finished&&(b.session.md5.update(g),b.session.sha1.update(g)),K[b.entity][b.expect][e](b,c,h)):
639
-n.handleUnexpected(b,c)};n.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};n.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),h=d.getInt16(),d=d.getBytes(h);if(e===n.HeartbeatMessageType.heartbeat_request){if(b.handshaking||h>d.length)return b.process();n.queue(b,n.createRecord(b,{type:n.ContentType.heartbeat,data:n.createHeartbeat(n.HeartbeatMessageType.heartbeat_response,d)}));n.flush(b)}else if(e===n.HeartbeatMessageType.heartbeat_response){if(d!==
640
-b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var g=1,h=2,v=3,r=4,D=5,y=6,C=7,z=8,O=1,A=2,F=3,H=4,M=5,G=6,u=n.handleUnexpected,R=n.handleChangeCipherSpec,S=n.handleAlert,P=n.handleHandshake,Z=n.handleApplicationData,L=n.handleHeartbeat,W=[];W[n.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[n.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
641
-P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=n.handleHelloRequest,S=n.handleCertificate,P=n.handleServerKeyExchange,Z=n.handleCertificateRequest,L=n.handleServerHelloDone,V=n.handleFinished,K=[];K[n.ConnectionEnd.client]=[[u,u,n.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
642
-[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[n.ConnectionEnd.server]=[[u,n.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,n.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,n.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
643
-u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];n.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,h=a.version.major===n.Versions.TLS_1_0.major&&a.version.minor===n.Versions.TLS_1_0.minor;h&&(e+=2*b.fixed_iv_length);d=
644
-c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};h&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};n.createConnectionState=function(a){var b=a.entity===n.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
645
-cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},h={read:c(),write:c()};h.read.update=function(a,b){h.read.cipherFunction(b,h.read)?h.read.compressFunction(a,b,h.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.decompression_failure}}):
646
-a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.bad_record_mac}});return!a.fail};h.write.update=function(a,b){h.write.compressFunction(a,b,h.write)?h.write.cipherFunction(b,h.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.internal_error}});
647
-return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=n.generateKeys(a,c),h.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,h.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(h,a,c),c.compression_algorithm){case n.CompressionMethod.none:break;case n.CompressionMethod.deflate:h.read.compressFunction=e;h.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
648
-}return h};n.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};n.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};n.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return n.createRecord(b,{type:n.ContentType.alert,data:d})};n.createClientHello=
649
-function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var h=c.length(),d=a.util.createBuffer();d.putByte(n.CompressionMethod.none);var g=d.length(),e=a.util.createBuffer();if(b.virtualHost){var k=a.util.createBuffer();k.putByte(0);k.putByte(0);var m=a.util.createBuffer();m.putByte(0);p(m,2,a.util.createBuffer(b.virtualHost));var l=a.util.createBuffer();
650
-p(l,2,m);p(k,2,l);e.putBuffer(k)}k=e.length();0<k&&(k+=2);m=b.session.id;h=m.length+1+2+4+28+2+h+1+g+k;g=a.util.createBuffer();g.putByte(n.HandshakeType.client_hello);g.putInt24(h);g.putByte(b.version.major);g.putByte(b.version.minor);g.putBytes(b.session.sp.client_random);p(g,1,a.util.createBuffer(m));p(g,2,c);p(g,1,d);0<k&&p(g,2,e);return g};n.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(n.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
651
-e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};n.createCertificate=function(b){var c=b.entity===n.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var h=
652
-null,g=0;g<d.length;++g){var k=a.pem.decode(d[g])[0];if("CERTIFICATE"!==k.type&&"X509 CERTIFICATE"!==k.type&&"TRUSTED CERTIFICATE"!==k.type){var m=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');m.headerType=k.type;throw m;}if(k.procType&&"ENCRYPTED"===k.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var l=a.util.createBuffer(k.body);null===h&&(h=a.asn1.fromDer(l.bytes(),!1));
653
-var z=a.util.createBuffer();p(z,3,l);e.putBuffer(z)}d=a.pki.certificateFromAsn1(h);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(n.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};n.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
654
-c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(n.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};n.createServerKeyExchange=function(b){return a.util.createBuffer()};n.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
655
-d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(h){b.error(b,{message:"Could not get private key.",cause:h,send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.internal_error}}):
656
-c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};n.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(n.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};n.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var h=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(h))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
657
-e.putByte(n.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};n.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(n.HandshakeType.server_hello_done);b.putInt24(0);return b};n.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};n.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===n.ConnectionEnd.client?"client finished":
658
-"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(n.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};n.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};n.queue=function(b,c){if(c){if(c.type===n.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
659
-n.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>n.MaxFragment;)d.push(n.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,n.MaxFragment))})),e=e.slice(n.MaxFragment);0<e.length&&d.push(n.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var h=d[e];b.state.current.write.update(b,h)&&b.records.push(h)}}};n.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
660
-a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return n.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return n.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return n.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return n.Alert.Description.certificate_expired;
661
-case a.pki.certificateError.certificate_unknown:return n.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return n.Alert.Description.unknown_ca;default:return n.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case n.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case n.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case n.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
662
-case n.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case n.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case n.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};n.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
663
-Error("The application rejected the certificate."),c.send=!0,c.alert={level:n.Alert.Level.fatal,description:n.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:n.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:n.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};n.createSessionCache=
664
-function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var h in d.order)if(d.order[h]===e){d.order.splice(h,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
665
-delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};n.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in n.CipherSuites)d.push(n.CipherSuites[e])}e=b.server?n.ConnectionEnd.server:n.ConnectionEnd.client;var h=b.sessionCache?n.createSessionCache(b.sessionCache):null,g={version:{major:n.Version.major,minor:n.Version.minor},entity:e,
666
-sessionId:b.sessionId,caStore:c,sessionCache:h,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
667
-c){c.origin=c.origin||(a.entity===n.ConnectionEnd.client?"client":"server");c.send&&(n.queue(a,n.createAlert(a,c.alert)),n.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){g.version={major:n.Version.major,minor:n.Version.minor};g.record=null;g.session=null;g.peerCertificate=null;g.state={pending:null,current:null};g.expect=0;g.fragmented=null;g.records=[];g.open=!1;g.handshakes=0;g.handshaking=!1;g.isConnected=
668
-!1;g.fail=!(a||"undefined"===typeof a);g.input.clear();g.tlsData.clear();g.data.clear();g.state.current=n.createConnectionState(g)}};g.reset();g.handshake=function(b){if(g.entity!==n.ConnectionEnd.client)g.error(g,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(g.handshaking)g.error(g,{message:"Handshake already in progress.",fatal:!1});else{g.fail&&!g.open&&0===g.handshakes&&(g.fail=!1);g.handshaking=!0;b=b||"";var c=null;0<b.length&&(g.sessionCache&&(c=g.sessionCache.getSession(b)),
669
-null===c&&(b=""));0===b.length&&g.sessionCache&&(c=g.sessionCache.getSession(),null!==c&&(b=c.id));g.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(g.version=c.version,g.session.sp=c.sp);g.session.sp.client_random=n.createRandom().getBytes();g.open=!0;n.queue(g,n.createRecord(g,{type:n.ContentType.handshake,data:n.createClientHello(g)}));n.flush(g)}};g.process=
670
-function(b){var c=0;b&&g.input.putBytes(b);if(!g.fail){null!==g.record&&g.record.ready&&g.record.fragment.isEmpty()&&(g.record=null);if(null===g.record){c=0;b=g.input;var d=b.length();5>d?c=5-d:(g.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=g.record.version.major===g.version.major)&&g.session&&g.session.version&&(b=g.record.version.minor===g.version.minor),b||g.error(g,{message:"Incompatible TLS version.",send:!0,
671
-alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.protocol_version}}))}if(!g.fail&&null!==g.record&&!g.record.ready){c=g;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
672
-alert:{level:n.Alert.Level.fatal,description:n.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!g.fail&&null!==g.record&&g.record.ready)if(b=g.record,d=b.type-n.ContentType.change_cipher_spec,e=W[g.entity][g.expect],d in e)e[d](g,b);else n.handleUnexpected(g,b)}return c};g.prepare=function(b){n.queue(g,n.createRecord(g,{type:n.ContentType.application_data,data:a.util.createBuffer(b)}));return n.flush(g)};g.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
673
-b.bytes());"undefined"===typeof c&&(c=b.length);g.expectedHeartbeatPayload=b;n.queue(g,n.createRecord(g,{type:n.ContentType.heartbeat,data:n.createHeartbeat(n.HeartbeatMessageType.heartbeat_request,b,c)}));return n.flush(g)};g.close=function(a){if(!g.fail&&g.sessionCache&&g.session){var b={id:g.session.id,version:g.session.version,sp:g.session.sp};b.sp.keys=null;g.sessionCache.setSession(b.id,b)}if(g.open){g.open=!1;g.input.clear();if(g.isConnected||g.handshaking)g.isConnected=g.handshaking=!1,n.queue(g,
674
-n.createAlert(g,{level:n.Alert.Level.warning,description:n.Alert.Description.close_notify})),n.flush(g);g.closed(g)}g.reset(a)};return g};a.tls=a.tls||{};for(var X in n)"function"!==typeof n[X]&&(a.tls[X]=n[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
675
-return e.digest().getBytes()};a.tls.createSessionCache=n.createSessionCache;a.tls.createConnection=n.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
676
-k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,g){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
677
-e?g.keys.server_write_key:g.keys.client_write_key),iv:e?g.keys.server_write_IV:g.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?g.keys.client_write_key:g.keys.server_write_key),iv:e?g.keys.client_write_IV:g.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=g.mac_length;b.read.macFunction=b.write.macFunction=n.hmac_sha1}function d(b,c){var g=!1,k=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(k);
678
-c.updateSequenceNumber();k=b.version.minor===n.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var m=c.cipherState.cipher;m.start({iv:k});b.version.minor>=n.Versions.TLS_1_1.minor&&m.output.putBytes(k);m.update(b.fragment);m.finish(e)&&(b.fragment=m.output,b.length=b.fragment.length(),g=!0);return g}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
679
-d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++g;d=b.version.minor===n.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),m=c.macLength,l=a.random.getBytesSync(m),z=e.output.length();z>=m?(b.fragment=e.output.getBytes(z-m),l=e.output.getBytes(m)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
680
-b.fragment.length();m=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(l);l=z.digest().getBytes();z.start(null,null);z.update(m);m=z.digest().getBytes();return l===m&&d}var n=a.tls;n.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=n.BulkCipherAlgorithm.aes;a.cipher_type=n.CipherType.block;a.enc_key_length=16;a.block_length=16;
681
-a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=n.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};n.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=n.BulkCipherAlgorithm.aes;a.cipher_type=n.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=n.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
682
-20},initConnectionState:c};var g=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){r="string"===
605
+typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pki)return c.pki;c.defined.pki=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pki}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
606
+Array.prototype.slice.call(arguments,0))};a("js/pki","require module ./asn1 ./oids ./pbe ./pem ./pbkdf2 ./pkcs12 ./pss ./rsa ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c=function(b,c,d,e){var g=a.util.createBuffer(),k=b.length>>1,h=k+(b.length&1),l=b.substr(0,h),h=b.substr(k,h);b=a.util.createBuffer();k=a.hmac.create();d=c+d;var n=Math.ceil(e/16);c=Math.ceil(e/20);k.start("MD5",l);l=a.util.createBuffer();b.putBytes(d);
607
+for(var m=0;m<n;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),l.putBuffer(k.digest());k.start("SHA1",h);h=a.util.createBuffer();b.clear();b.putBytes(d);for(m=0;m<c;++m)k.start(null,null),k.update(b.getBytes()),b.putBuffer(k.digest()),k.start(null,null),k.update(b.bytes()+d),h.putBuffer(k.digest());g.putBytes(a.util.xorBytes(l.getBytes(),h.getBytes(),e));return g},d=function(b,c,d){d=!1;try{var e=b.deflate(c.fragment.getBytes());c.fragment=
608
+a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},e=function(b,c,d){d=!1;try{var e=b.inflate(c.fragment.getBytes());c.fragment=a.util.createBuffer(e);c.length=e.length;d=!0}catch(g){}return d},k=function(b,c){var d=0;switch(c){case 1:d=b.getByte();break;case 2:d=b.getInt16();break;case 3:d=b.getInt24();break;case 4:d=b.getInt32()}return a.util.createBuffer(b.getBytes(d))},p=function(a,b,c){a.putInt(c.length(),b<<3);a.putBuffer(c)},m={Versions:{TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,
609
+minor:2},TLS_1_2:{major:3,minor:3}}};m.SupportedVersions=[m.Versions.TLS_1_1,m.Versions.TLS_1_0];m.Version=m.SupportedVersions[0];m.MaxFragment=15360;m.ConnectionEnd={server:0,client:1};m.PRFAlgorithm={tls_prf_sha256:0};m.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2};m.CipherType={stream:0,block:1,aead:2};m.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4};m.CompressionMethod={none:0,deflate:1};m.ContentType={change_cipher_spec:20,alert:21,handshake:22,
610
+application_data:23,heartbeat:24};m.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20};m.Alert={};m.Alert.Level={warning:1,fatal:2};m.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,
611
+certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100};m.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2};m.CipherSuites={};m.getCipherSuite=function(a){var b=null,c;for(c in m.CipherSuites){var d=m.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b};
612
+m.handleUnexpected=function(a,b){(a.open||a.entity!==m.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})};m.handleHelloRequest=function(a,b,c){!a.handshaking&&0<a.handshakes&&(m.queue(a,m.createAlert(a,{level:m.Alert.Level.warning,description:m.Alert.Description.no_renegotiation})),m.flush(a));a.process()};m.parseHelloMessage=function(b,c,d){var e=null,g=b.entity===
613
+m.ConnectionEnd.client;if(38>d)b.error(b,{message:g?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});else{c=c.fragment;var h=c.length(),e={version:{major:c.getByte(),minor:c.getByte()},random:a.util.createBuffer(c.getBytes(32)),session_id:k(c,1),extensions:[]};g?(e.cipher_suite=c.getBytes(2),e.compression_method=c.getByte()):(e.cipher_suites=k(c,2),e.compression_methods=
614
+k(c,1));h=d-(h-c.length());if(0<h){for(d=k(c,2);0<d.length();)e.extensions.push({type:[d.getByte(),d.getByte()],data:k(d,2)});if(!g)for(d=0;d<e.extensions.length;++d)if(c=e.extensions[d],0===c.type[0]&&0===c.type[1])for(c=k(c.data,2);0<c.length()&&0===c.getByte();)b.session.extensions.server_name.serverNameList.push(k(c,2).getBytes())}if(b.session.version&&(e.version.major!==b.session.version.major||e.version.minor!==b.session.version.minor))return b.error(b,{message:"TLS version change is disallowed during renegotiation.",
615
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});if(g)b.session.cipherSuite=m.getCipherSuite(e.cipher_suite);else for(d=a.util.createBuffer(e.cipher_suites.bytes());0<d.length()&&(b.session.cipherSuite=m.getCipherSuite(d.getBytes(2)),null===b.session.cipherSuite););if(null===b.session.cipherSuite)return b.error(b,{message:"No cipher suites in common.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure},cipherSuite:a.util.bytesToHex(e.cipher_suite)});
616
+b.session.compressionMethod=g?e.compression_method:m.CompressionMethod.none}return e};m.createSecurityParameters=function(a,b){var c=a.entity===m.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,c=c?d:m.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:m.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,
617
+compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:c}};m.handleServerHello=function(a,b,c){b=m.parseHelloMessage(a,b,c);if(!a.fail){if(b.version.minor<=a.version.minor)a.version.minor=b.version.minor;else return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}});a.session.version=a.version;c=b.session_id.bytes();0<c.length&&c===a.session.id?
618
+(a.expect=D,a.session.resuming=!0,a.session.sp.server_random=b.random.bytes()):(a.expect=h,a.session.resuming=!1,m.createSecurityParameters(a,b));a.session.id=c;a.process()}};m.handleClientHello=function(b,c,d){c=m.parseHelloMessage(b,c,d);if(!b.fail){var e=c.session_id.bytes();d=null;if(b.sessionCache)if(d=b.sessionCache.getSession(e),null===d)e="";else if(d.version.major!==c.version.major||d.version.minor>c.version.minor)d=null,e="";0===e.length&&(e=a.random.getBytes(32));b.session.id=e;b.session.clientHelloVersion=
619
+c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var g,e=1;e<m.SupportedVersions.length&&!(g=m.SupportedVersions[e],g.minor<=c.version.minor);++e);b.version={major:g.major,minor:g.minor};b.session.version=b.version}null!==d?(b.expect=I,b.session.resuming=!0,b.session.sp.client_random=c.random.bytes()):(b.expect=!1!==b.verifyClient?O:A,b.session.resuming=!1,m.createSecurityParameters(b,c));b.open=!0;m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,
620
+data:m.createServerHello(b)}));b.session.resuming?(m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,data:m.createChangeCipherSpec()})),b.state.pending=m.createConnectionState(b),b.state.current.write=b.state.pending.write,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}))):(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)})),b.fail||(m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerKeyExchange(b)})),
621
+!1!==b.verifyClient&&m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificateRequest(b)})),m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createServerHelloDone(b)}))));m.flush(b);b.process()}};m.handleCertificate=function(b,c,d){if(3>d)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=k(c.fragment,3);var e,h;c=[];try{for(;0<d.length();)e=
622
+k(d,3),h=a.asn1.fromDer(e),e=a.pki.certificateFromAsn1(h,!0),c.push(e)}catch(l){return b.error(b,{message:"Could not parse certificate list.",cause:l,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}e=b.entity===m.ConnectionEnd.client;!e&&!0!==b.verifyClient||0!==c.length?0===c.length?b.expect=e?g:A:(e?b.session.serverCertificate=c[0]:b.session.clientCertificate=c[0],m.verifyCertificateChain(b,c)&&(b.expect=e?g:A)):b.error(b,{message:e?"No server certificate provided.":
623
+"No client certificate provided.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});b.process()};m.handleServerKeyExchange=function(a,b,c){if(0<c)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});a.expect=v;a.process()};m.handleClientKeyExchange=function(b,c,d){if(48>d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",
624
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unsupported_certificate}});c=k(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(e){b.error(b,{message:"Could not get private key.",cause:e,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}if(null===d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
625
+try{var g=b.session.sp;g.pre_master_secret=d.decrypt(c);var h=b.session.clientHelloVersion;if(h.major!==g.pre_master_secret.charCodeAt(0)||h.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(e){g.pre_master_secret=a.random.getBytes(48)}b.expect=I;null!==b.session.clientCertificate&&(b.expect=G);b.process()};m.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,
626
+description:m.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:k(b,1),certificate_authorities:k(b,2)};a.session.certificateRequest=b;a.expect=q;a.process()};m.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=k(d,2).getBytes();var e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
627
+e.putBuffer(b.session.sha1.digest());e=e.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(e,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(g){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.handshake_failure}})}b.expect=I;b.process()};m.handleServerHelloDone=function(b,c,d){if(0<d)return b.error(b,{message:"Invalid ServerHelloDone message. Invalid length.",
628
+send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.record_overflow}});if(null===b.serverCertificate&&(c={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.insufficient_security}},d=b.verify(b,c.alert.description,0,[]),!0!==d)){if(d||0===d)"object"!==typeof d||a.util.isArray(d)?"number"===typeof d&&(c.alert.description=d):(d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert));
629
+return b.error(b,c)}null!==b.session.certificateRequest&&(c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createCertificate(b)}),m.queue(b,c));c=m.createRecord(b,{type:m.ContentType.handshake,data:m.createClientKeyExchange(b)});m.queue(b,c);b.expect=z;c=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createCertificateVerify(a,b)}));m.queue(a,m.createRecord(a,{type:m.ContentType.change_cipher_spec,
630
+data:m.createChangeCipherSpec()}));a.state.pending=m.createConnectionState(a);a.state.current.write=a.state.pending.write;m.queue(a,m.createRecord(a,{type:m.ContentType.handshake,data:m.createFinished(a)}));a.expect=D;m.flush(a);a.process()};if(null===b.session.certificateRequest||null===b.session.clientCertificate)return c(b,null);m.getClientSignature(b,c)};m.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,
631
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.illegal_parameter}});var c=a.entity===m.ConnectionEnd.client;if(a.session.resuming&&c||!a.session.resuming&&!c)a.state.pending=m.createConnectionState(a);a.state.current.read=a.state.pending.read;if(!a.session.resuming&&c||a.session.resuming&&!c)a.state.pending=null;a.expect=c?y:M;a.process()};m.handleFinished=function(b,d,e){e=d.fragment;e.read-=4;var g=e.bytes();e.read+=4;d=d.fragment.getBytes();e=a.util.createBuffer();e.putBuffer(b.session.md5.digest());
632
+e.putBuffer(b.session.sha1.digest());var k=b.entity===m.ConnectionEnd.client;e=c(b.session.sp.master_secret,k?"server finished":"client finished",e.getBytes(),12);if(e.getBytes()!==d)return b.error(b,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decrypt_error}});b.session.md5.update(g);b.session.sha1.update(g);if(b.session.resuming&&k||!b.session.resuming&&!k)m.queue(b,m.createRecord(b,{type:m.ContentType.change_cipher_spec,
633
+data:m.createChangeCipherSpec()})),b.state.current.write=b.state.pending.write,b.state.pending=null,m.queue(b,m.createRecord(b,{type:m.ContentType.handshake,data:m.createFinished(b)}));b.expect=k?B:H;b.handshaking=!1;++b.handshakes;b.peerCertificate=k?b.session.serverCertificate:b.session.clientCertificate;m.flush(b);b.isConnected=!0;b.connected(b);b.process()};m.handleAlert=function(a,b){var c=b.fragment,c={level:c.getByte(),description:c.getByte()},d;switch(c.description){case m.Alert.Description.close_notify:d=
634
+"Connection closed.";break;case m.Alert.Description.unexpected_message:d="Unexpected message.";break;case m.Alert.Description.bad_record_mac:d="Bad record MAC.";break;case m.Alert.Description.decryption_failed:d="Decryption failed.";break;case m.Alert.Description.record_overflow:d="Record overflow.";break;case m.Alert.Description.decompression_failure:d="Decompression failed.";break;case m.Alert.Description.handshake_failure:d="Handshake failure.";break;case m.Alert.Description.bad_certificate:d=
635
+"Bad certificate.";break;case m.Alert.Description.unsupported_certificate:d="Unsupported certificate.";break;case m.Alert.Description.certificate_revoked:d="Certificate revoked.";break;case m.Alert.Description.certificate_expired:d="Certificate expired.";break;case m.Alert.Description.certificate_unknown:d="Certificate unknown.";break;case m.Alert.Description.illegal_parameter:d="Illegal parameter.";break;case m.Alert.Description.unknown_ca:d="Unknown certificate authority.";break;case m.Alert.Description.access_denied:d=
636
+"Access denied.";break;case m.Alert.Description.decode_error:d="Decode error.";break;case m.Alert.Description.decrypt_error:d="Decrypt error.";break;case m.Alert.Description.export_restriction:d="Export restriction.";break;case m.Alert.Description.protocol_version:d="Unsupported protocol version.";break;case m.Alert.Description.insufficient_security:d="Insufficient security.";break;case m.Alert.Description.internal_error:d="Internal error.";break;case m.Alert.Description.user_canceled:d="User canceled.";
637
+break;case m.Alert.Description.no_renegotiation:d="Renegotiation not supported.";break;default:d="Unknown error."}if(c.description===m.Alert.Description.close_notify)return a.close();a.error(a,{message:d,send:!1,origin:a.entity===m.ConnectionEnd.client?"server":"client",alert:c});a.process()};m.handleHandshake=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt24();if(g>d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var k=d.bytes(g+
638
+4);d.read+=4;e in K[b.entity][b.expect]?(b.entity!==m.ConnectionEnd.server||b.open||b.fail||(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),e!==m.HandshakeType.hello_request&&e!==m.HandshakeType.certificate_verify&&e!==m.HandshakeType.finished&&(b.session.md5.update(k),b.session.sha1.update(k)),K[b.entity][b.expect][e](b,c,g)):
639
+m.handleUnexpected(b,c)};m.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};m.handleHeartbeat=function(b,c){var d=c.fragment,e=d.getByte(),g=d.getInt16(),d=d.getBytes(g);if(e===m.HeartbeatMessageType.heartbeat_request){if(b.handshaking||g>d.length)return b.process();m.queue(b,m.createRecord(b,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_response,d)}));m.flush(b)}else if(e===m.HeartbeatMessageType.heartbeat_response){if(d!==
640
+b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var h=1,g=2,v=3,q=4,D=5,y=6,B=7,z=8,O=1,A=2,G=3,I=4,M=5,H=6,u=m.handleUnexpected,R=m.handleChangeCipherSpec,S=m.handleAlert,P=m.handleHandshake,Z=m.handleApplicationData,L=m.handleHeartbeat,W=[];W[m.ConnectionEnd.client]=[[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];W[m.ConnectionEnd.server]=[[u,S,P,u,L],[u,S,
641
+P,u,L],[u,S,P,u,L],[u,S,P,u,L],[R,S,u,u,L],[u,S,P,u,L],[u,S,P,Z,L],[u,S,P,u,L]];var R=m.handleHelloRequest,S=m.handleCertificate,P=m.handleServerKeyExchange,Z=m.handleCertificateRequest,L=m.handleServerHelloDone,V=m.handleFinished,K=[];K[m.ConnectionEnd.client]=[[u,u,m.handleServerHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,S,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,P,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,Z,L,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,L,u,u,u,u,u,u],
642
+[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[R,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];K[m.ConnectionEnd.server]=[[u,m.handleClientHello,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,S,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleClientKeyExchange,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,m.handleCertificateVerify,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,
643
+u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,V],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u],[u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u]];m.generateKeys=function(a,b){var d=b.client_random+b.server_random;a.session.resuming||(b.master_secret=c(b.pre_master_secret,"master secret",d,48).bytes(),b.pre_master_secret=null);var d=b.server_random+b.client_random,e=2*b.mac_key_length+2*b.enc_key_length,g=a.version.major===m.Versions.TLS_1_0.major&&a.version.minor===m.Versions.TLS_1_0.minor;g&&(e+=2*b.fixed_iv_length);d=
644
+c(b.master_secret,"key expansion",d,e);e={client_write_MAC_key:d.getBytes(b.mac_key_length),server_write_MAC_key:d.getBytes(b.mac_key_length),client_write_key:d.getBytes(b.enc_key_length),server_write_key:d.getBytes(b.enc_key_length)};g&&(e.client_write_IV=d.getBytes(b.fixed_iv_length),e.server_write_IV=d.getBytes(b.fixed_iv_length));return e};m.createConnectionState=function(a){var b=a.entity===m.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,
645
+cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){4294967295===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},g={read:c(),write:c()};g.read.update=function(a,b){g.read.cipherFunction(b,g.read)?g.read.compressFunction(a,b,g.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.decompression_failure}}):
646
+a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_record_mac}});return!a.fail};g.write.update=function(a,b){g.write.compressFunction(a,b,g.write)?g.write.cipherFunction(b,g.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}});
647
+return!a.fail};if(a.session)switch(c=a.session.sp,a.session.cipherSuite.initSecurityParameters(c),c.keys=m.generateKeys(a,c),g.read.macKey=b?c.keys.server_write_MAC_key:c.keys.client_write_MAC_key,g.write.macKey=b?c.keys.client_write_MAC_key:c.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(g,a,c),c.compression_algorithm){case m.CompressionMethod.none:break;case m.CompressionMethod.deflate:g.read.compressFunction=e;g.write.compressFunction=d;break;default:throw Error("Unsupported compression algorithm.");
648
+}return g};m.createRandom=function(){var b=new Date,b=+b+6E4*b.getTimezoneOffset(),c=a.util.createBuffer();c.putInt32(b);c.putBytes(a.random.getBytes(28));return c};m.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null};m.createAlert=function(b,c){var d=a.util.createBuffer();d.putByte(c.level);d.putByte(c.description);return m.createRecord(b,{type:m.ContentType.alert,data:d})};m.createClientHello=
649
+function(b){b.session.clientHelloVersion={major:b.version.major,minor:b.version.minor};for(var c=a.util.createBuffer(),d=0;d<b.cipherSuites.length;++d){var e=b.cipherSuites[d];c.putByte(e.id[0]);c.putByte(e.id[1])}var g=c.length(),d=a.util.createBuffer();d.putByte(m.CompressionMethod.none);var k=d.length(),e=a.util.createBuffer();if(b.virtualHost){var h=a.util.createBuffer();h.putByte(0);h.putByte(0);var l=a.util.createBuffer();l.putByte(0);p(l,2,a.util.createBuffer(b.virtualHost));var n=a.util.createBuffer();
650
+p(n,2,l);p(h,2,n);e.putBuffer(h)}h=e.length();0<h&&(h+=2);l=b.session.id;g=l.length+1+2+4+28+2+g+1+k+h;k=a.util.createBuffer();k.putByte(m.HandshakeType.client_hello);k.putInt24(g);k.putByte(b.version.major);k.putByte(b.version.minor);k.putBytes(b.session.sp.client_random);p(k,1,a.util.createBuffer(l));p(k,2,c);p(k,1,d);0<h&&p(k,2,e);return k};m.createServerHello=function(b){var c=b.session.id,d=c.length+1+2+4+28+2+1,e=a.util.createBuffer();e.putByte(m.HandshakeType.server_hello);e.putInt24(d);e.putByte(b.version.major);
651
+e.putByte(b.version.minor);e.putBytes(b.session.sp.server_random);p(e,1,a.util.createBuffer(c));e.putByte(b.session.cipherSuite.id[0]);e.putByte(b.session.cipherSuite.id[1]);e.putByte(b.session.compressionMethod);return e};m.createCertificate=function(b){var c=b.entity===m.ConnectionEnd.client,d=null;b.getCertificate&&(d=b.getCertificate(b,c?b.session.certificateRequest:b.session.extensions.server_name.serverNameList));var e=a.util.createBuffer();if(null!==d)try{a.util.isArray(d)||(d=[d]);for(var g=
652
+null,k=0;k<d.length;++k){var h=a.pem.decode(d[k])[0];if("CERTIFICATE"!==h.type&&"X509 CERTIFICATE"!==h.type&&"TRUSTED CERTIFICATE"!==h.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');l.headerType=h.type;throw l;}if(h.procType&&"ENCRYPTED"===h.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var n=a.util.createBuffer(h.body);null===g&&(g=a.asn1.fromDer(n.bytes(),!1));
653
+var z=a.util.createBuffer();p(z,3,n);e.putBuffer(z)}d=a.pki.certificateFromAsn1(g);c?b.session.clientCertificate=d:b.session.serverCertificate=d}catch(u){return b.error(b,{message:"Could not send certificate list.",cause:u,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate}})}b=3+e.length();c=a.util.createBuffer();c.putByte(m.HandshakeType.certificate);c.putInt24(b);p(c,3,e);return c};m.createClientKeyExchange=function(b){var c=a.util.createBuffer();c.putByte(b.session.clientHelloVersion.major);
654
+c.putByte(b.session.clientHelloVersion.minor);c.putBytes(a.random.getBytes(46));var d=b.session.sp;d.pre_master_secret=c.getBytes();c=b.session.serverCertificate.publicKey.encrypt(d.pre_master_secret);b=c.length+2;d=a.util.createBuffer();d.putByte(m.HandshakeType.client_key_exchange);d.putInt24(b);d.putInt16(c.length);d.putBytes(c);return d};m.createServerKeyExchange=function(b){return a.util.createBuffer()};m.getClientSignature=function(b,c){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());
655
+d.putBuffer(b.session.sha1.digest());d=d.getBytes();b.getSignature=b.getSignature||function(b,c,d){var e=null;if(b.getPrivateKey)try{e=b.getPrivateKey(b,b.session.clientCertificate),e=a.pki.privateKeyFromPem(e)}catch(g){b.error(b,{message:"Could not get private key.",cause:g,send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}})}null===e?b.error(b,{message:"No private key set.",send:!0,alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.internal_error}}):
656
+c=e.sign(c,null);d(b,c)};b.getSignature(b,d,c)};m.createCertificateVerify=function(b,c){var d=c.length+2,e=a.util.createBuffer();e.putByte(m.HandshakeType.certificate_verify);e.putInt24(d);e.putInt16(c.length);e.putBytes(c);return e};m.createCertificateRequest=function(b){var c=a.util.createBuffer();c.putByte(1);var d=a.util.createBuffer(),e;for(e in b.caStore.certs){var g=a.pki.distinguishedNameToAsn1(b.caStore.certs[e].subject);d.putBuffer(a.asn1.toDer(g))}b=1+c.length()+2+d.length();e=a.util.createBuffer();
657
+e.putByte(m.HandshakeType.certificate_request);e.putInt24(b);p(e,1,c);p(e,2,d);return e};m.createServerHelloDone=function(b){b=a.util.createBuffer();b.putByte(m.HandshakeType.server_hello_done);b.putInt24(0);return b};m.createChangeCipherSpec=function(){var b=a.util.createBuffer();b.putByte(1);return b};m.createFinished=function(b){var d=a.util.createBuffer();d.putBuffer(b.session.md5.digest());d.putBuffer(b.session.sha1.digest());d=c(b.session.sp.master_secret,b.entity===m.ConnectionEnd.client?"client finished":
658
+"server finished",d.getBytes(),12);b=a.util.createBuffer();b.putByte(m.HandshakeType.finished);b.putInt24(d.length());b.putBuffer(d);return b};m.createHeartbeat=function(b,c,d){"undefined"===typeof d&&(d=c.length);var e=a.util.createBuffer();e.putByte(b);e.putInt16(d);e.putBytes(c);b=e.length();e.putBytes(a.random.getBytes(Math.max(16,b-d-3)));return e};m.queue=function(b,c){if(c){if(c.type===m.ContentType.handshake){var d=c.fragment.bytes();b.session.md5.update(d);b.session.sha1.update(d)}if(c.fragment.length()<=
659
+m.MaxFragment)d=[c];else{for(var d=[],e=c.fragment.bytes();e.length>m.MaxFragment;)d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e.slice(0,m.MaxFragment))})),e=e.slice(m.MaxFragment);0<e.length&&d.push(m.createRecord(b,{type:c.type,data:a.util.createBuffer(e)}))}for(e=0;e<d.length&&!b.fail;++e){var g=d[e];b.state.current.write.update(b,g)&&b.records.push(g)}}};m.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type);a.tlsData.putByte(c.version.major);
660
+a.tlsData.putByte(c.version.minor);a.tlsData.putInt16(c.fragment.length());a.tlsData.putBuffer(a.records[b].fragment)}a.records=[];return a.tlsDataReady(a)};var ba=function(b){switch(b){case !0:return!0;case a.pki.certificateError.bad_certificate:return m.Alert.Description.bad_certificate;case a.pki.certificateError.unsupported_certificate:return m.Alert.Description.unsupported_certificate;case a.pki.certificateError.certificate_revoked:return m.Alert.Description.certificate_revoked;case a.pki.certificateError.certificate_expired:return m.Alert.Description.certificate_expired;
661
+case a.pki.certificateError.certificate_unknown:return m.Alert.Description.certificate_unknown;case a.pki.certificateError.unknown_ca:return m.Alert.Description.unknown_ca;default:return m.Alert.Description.bad_certificate}},ca=function(b){switch(b){case !0:return!0;case m.Alert.Description.bad_certificate:return a.pki.certificateError.bad_certificate;case m.Alert.Description.unsupported_certificate:return a.pki.certificateError.unsupported_certificate;case m.Alert.Description.certificate_revoked:return a.pki.certificateError.certificate_revoked;
662
+case m.Alert.Description.certificate_expired:return a.pki.certificateError.certificate_expired;case m.Alert.Description.certificate_unknown:return a.pki.certificateError.certificate_unknown;case m.Alert.Description.unknown_ca:return a.pki.certificateError.unknown_ca;default:return a.pki.certificateError.bad_certificate}};m.verifyCertificateChain=function(b,c){try{a.pki.verifyCertificateChain(b.caStore,c,function(c,d,e){ba(c);d=b.verify(b,c,d,e);if(!0!==d){if("object"===typeof d&&!a.util.isArray(d))throw c=
663
+Error("The application rejected the certificate."),c.send=!0,c.alert={level:m.Alert.Level.fatal,description:m.Alert.Description.bad_certificate},d.message&&(c.message=d.message),d.alert&&(c.alert.description=d.alert),c;d!==c&&(d=ca(d))}return d})}catch(d){var e=d;if("object"!==typeof e||a.util.isArray(e))e={send:!0,alert:{level:m.Alert.Level.fatal,description:ba(d)}};"send"in e||(e.send=!0);"alert"in e||(e.alert={level:m.Alert.Level.fatal,description:ba(e.error)});b.error(b,e)}return!b.fail};m.createSessionCache=
664
+function(b,c){var d=null;if(b&&b.getSession&&b.setSession&&b.order)d=b;else{d={};d.cache=b||{};d.capacity=Math.max(c||100,1);d.order=[];for(var e in b)d.order.length<=c?d.order.push(e):delete b[e];d.getSession=function(b){var c=null,e=null;b?e=a.util.bytesToHex(b):0<d.order.length&&(e=d.order[0]);if(null!==e&&e in d.cache){c=d.cache[e];delete d.cache[e];for(var g in d.order)if(d.order[g]===e){d.order.splice(g,1);break}}return c};d.setSession=function(b,c){if(d.order.length===d.capacity){var e=d.order.shift();
665
+delete d.cache[e]}e=a.util.bytesToHex(b);d.order.push(e);d.cache[e]=c}}return d};m.createConnection=function(b){var c=null,c=b.caStore?a.util.isArray(b.caStore)?a.pki.createCaStore(b.caStore):b.caStore:a.pki.createCaStore(),d=b.cipherSuites||null;if(null===d){var d=[],e;for(e in m.CipherSuites)d.push(m.CipherSuites[e])}e=b.server?m.ConnectionEnd.server:m.ConnectionEnd.client;var g=b.sessionCache?m.createSessionCache(b.sessionCache):null,k={version:{major:m.Version.major,minor:m.Version.minor},entity:e,
666
+sessionId:b.sessionId,caStore:c,sessionCache:g,cipherSuites:d,connected:b.connected,virtualHost:b.virtualHost||null,verifyClient:b.verifyClient||!1,verify:b.verify||function(a,b,c,d){return b},getCertificate:b.getCertificate||null,getPrivateKey:b.getPrivateKey||null,getSignature:b.getSignature||null,input:a.util.createBuffer(),tlsData:a.util.createBuffer(),data:a.util.createBuffer(),tlsDataReady:b.tlsDataReady,dataReady:b.dataReady,heartbeatReceived:b.heartbeatReceived,closed:b.closed,error:function(a,
667
+c){c.origin=c.origin||(a.entity===m.ConnectionEnd.client?"client":"server");c.send&&(m.queue(a,m.createAlert(a,c.alert)),m.flush(a));var d=!1!==c.fatal;d&&(a.fail=!0);b.error(a,c);d&&a.close(!1)},deflate:b.deflate||null,inflate:b.inflate||null,reset:function(a){k.version={major:m.Version.major,minor:m.Version.minor};k.record=null;k.session=null;k.peerCertificate=null;k.state={pending:null,current:null};k.expect=0;k.fragmented=null;k.records=[];k.open=!1;k.handshakes=0;k.handshaking=!1;k.isConnected=
668
+!1;k.fail=!(a||"undefined"===typeof a);k.input.clear();k.tlsData.clear();k.data.clear();k.state.current=m.createConnectionState(k)}};k.reset();k.handshake=function(b){if(k.entity!==m.ConnectionEnd.client)k.error(k,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(k.handshaking)k.error(k,{message:"Handshake already in progress.",fatal:!1});else{k.fail&&!k.open&&0===k.handshakes&&(k.fail=!1);k.handshaking=!0;b=b||"";var c=null;0<b.length&&(k.sessionCache&&(c=k.sessionCache.getSession(b)),
669
+null===c&&(b=""));0===b.length&&k.sessionCache&&(c=k.sessionCache.getSession(),null!==c&&(b=c.id));k.session={id:b,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:a.md.md5.create(),sha1:a.md.sha1.create()};c&&(k.version=c.version,k.session.sp=c.sp);k.session.sp.client_random=m.createRandom().getBytes();k.open=!0;m.queue(k,m.createRecord(k,{type:m.ContentType.handshake,data:m.createClientHello(k)}));m.flush(k)}};k.process=
670
+function(b){var c=0;b&&k.input.putBytes(b);if(!k.fail){null!==k.record&&k.record.ready&&k.record.fragment.isEmpty()&&(k.record=null);if(null===k.record){c=0;b=k.input;var d=b.length();5>d?c=5-d:(k.record={type:b.getByte(),version:{major:b.getByte(),minor:b.getByte()},length:b.getInt16(),fragment:a.util.createBuffer(),ready:!1},(b=k.record.version.major===k.version.major)&&k.session&&k.session.version&&(b=k.record.version.minor===k.version.minor),b||k.error(k,{message:"Incompatible TLS version.",send:!0,
671
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.protocol_version}}))}if(!k.fail&&null!==k.record&&!k.record.ready){c=k;b=0;var d=c.input,e=d.length();e<c.record.length?b=c.record.length-e:(c.record.fragment.putBytes(d.getBytes(c.record.length)),d.compact(),c.state.current.read.update(c,c.record)&&(null!==c.fragmented&&(c.fragmented.type===c.record.type?(c.fragmented.fragment.putBuffer(c.record.fragment),c.record=c.fragmented):c.error(c,{message:"Invalid fragmented record.",send:!0,
672
+alert:{level:m.Alert.Level.fatal,description:m.Alert.Description.unexpected_message}})),c.record.ready=!0));c=b}if(!k.fail&&null!==k.record&&k.record.ready)if(b=k.record,d=b.type-m.ContentType.change_cipher_spec,e=W[k.entity][k.expect],d in e)e[d](k,b);else m.handleUnexpected(k,b)}return c};k.prepare=function(b){m.queue(k,m.createRecord(k,{type:m.ContentType.application_data,data:a.util.createBuffer(b)}));return m.flush(k)};k.prepareHeartbeatRequest=function(b,c){b instanceof a.util.ByteBuffer&&(b=
673
+b.bytes());"undefined"===typeof c&&(c=b.length);k.expectedHeartbeatPayload=b;m.queue(k,m.createRecord(k,{type:m.ContentType.heartbeat,data:m.createHeartbeat(m.HeartbeatMessageType.heartbeat_request,b,c)}));return m.flush(k)};k.close=function(a){if(!k.fail&&k.sessionCache&&k.session){var b={id:k.session.id,version:k.session.version,sp:k.session.sp};b.sp.keys=null;k.sessionCache.setSession(b.id,b)}if(k.open){k.open=!1;k.input.clear();if(k.isConnected||k.handshaking)k.isConnected=k.handshaking=!1,m.queue(k,
674
+m.createAlert(k,{level:m.Alert.Level.warning,description:m.Alert.Description.close_notify})),m.flush(k);k.closed(k)}k.reset(a)};return k};a.tls=a.tls||{};for(var X in m)"function"!==typeof m[X]&&(a.tls[X]=m[X]);a.tls.prf_tls1=c;a.tls.hmac_sha1=function(b,c,d){var e=a.hmac.create();e.start("SHA1",b);b=a.util.createBuffer();b.putInt32(c[0]);b.putInt32(c[1]);b.putByte(d.type);b.putByte(d.version.major);b.putByte(d.version.minor);b.putInt16(d.length);b.putBytes(d.fragment.bytes());e.update(b.getBytes());
675
+return e.digest().getBytes()};a.tls.createSessionCache=m.createSessionCache;a.tls.createConnection=m.createConnection}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.tls)return c.tls;c.defined.tls=!0;for(var k=0;k<e.length;++k)e[k](c);return c.tls}},
676
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/tls","require module ./asn1 ./hmac ./md ./pem ./pki ./random ./util".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,e,k){e=e.entity===a.tls.ConnectionEnd.client;b.read.cipherState={init:!1,cipher:a.cipher.createDecipher("AES-CBC",
677
+e?k.keys.server_write_key:k.keys.client_write_key),iv:e?k.keys.server_write_IV:k.keys.client_write_IV};b.write.cipherState={init:!1,cipher:a.cipher.createCipher("AES-CBC",e?k.keys.client_write_key:k.keys.server_write_key),iv:e?k.keys.client_write_IV:k.keys.server_write_IV};b.read.cipherFunction=p;b.write.cipherFunction=d;b.read.macLength=b.write.macLength=k.mac_length;b.read.macFunction=b.write.macFunction=m.hmac_sha1}function d(b,c){var k=!1,h=c.macFunction(c.macKey,c.sequenceNumber,b);b.fragment.putBytes(h);
678
+c.updateSequenceNumber();h=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:a.random.getBytesSync(16);c.cipherState.init=!0;var n=c.cipherState.cipher;n.start({iv:h});b.version.minor>=m.Versions.TLS_1_1.minor&&n.output.putBytes(h);n.update(b.fragment);n.finish(e)&&(b.fragment=n.output,b.length=b.fragment.length(),k=!0);return k}function e(a,b,c){c||(a-=b.length()%a,b.fillWithByte(a-1,a));return!0}function k(a,b,c){a=!0;if(c){c=b.length();for(var d=b.last(),e=c-1-
679
+d;e<c-1;++e)a=a&&b.at(e)==d;a&&b.truncate(d+1)}return a}function p(b,c){var d=!1;++h;d=b.version.minor===m.Versions.TLS_1_0.minor?c.cipherState.init?null:c.cipherState.iv:b.fragment.getBytes(16);c.cipherState.init=!0;var e=c.cipherState.cipher;e.start({iv:d});e.update(b.fragment);var d=e.finish(k),l=c.macLength,n=a.random.getBytesSync(l),z=e.output.length();z>=l?(b.fragment=e.output.getBytes(z-l),n=e.output.getBytes(l)):b.fragment=e.output.getBytes();b.fragment=a.util.createBuffer(b.fragment);b.length=
680
+b.fragment.length();l=c.macFunction(c.macKey,c.sequenceNumber,b);c.updateSequenceNumber();e=c.macKey;z=a.hmac.create();z.start("SHA1",e);z.update(n);n=z.digest().getBytes();z.start(null,null);z.update(l);l=z.digest().getBytes();return n===l&&d}var m=a.tls;m.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=16;a.block_length=16;
681
+a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=20},initConnectionState:c};m.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=m.BulkCipherAlgorithm.aes;a.cipher_type=m.CipherType.block;a.enc_key_length=32;a.block_length=16;a.fixed_iv_length=16;a.record_iv_length=16;a.mac_algorithm=m.MACAlgorithm.hmac_sha1;a.mac_length=20;a.mac_key_length=
682
+20},initConnectionState:c};var h=0}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.aesCipherSuites)return c.aesCipherSuites;c.defined.aesCipherSuites=!0;for(var k=0;k<e.length;++k)e[k](c);return c.aesCipherSuites}},k=a;a=function(b,c){q="string"===
683
typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/aesCipherSuites",["require","module","./aes","./tls"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.debug=a.debug||{};a.debug.storage={};a.debug.get=function(b,c){var d;"undefined"===typeof b?d=a.debug.storage:b in a.debug.storage&&(d="undefined"===typeof c?a.debug.storage[b]:
684
-a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=
685
-function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
686
-(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var m=new a.util.ByteBuffer,l=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,r=e;r<l;++r){p.putInt32(r);d.start();d.update(b+p.getBytes());var w=d.digest();m.putBytes(w.getBytes(k))}m.truncate(m.length()-c);return m.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,g){var h=Math.ceil(c.n.bitLength()/8),k;do k=(new d(a.util.bytesToHex(e.getBytesSync(h)),
687
-16)).mod(c.n);while(k.equals(d.ZERO));k=a.util.hexToBytes(k.toString(16));h-=k.length;0<h&&(k=a.util.fillString(String.fromCharCode(0),h)+k);h=c.encrypt(k,"NONE");k=b.generate(k,g);return{encapsulation:h,key:k}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
688
-typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
684
+a.debug.storage[b][c]);return d};a.debug.set=function(b,c,d){b in a.debug.storage||(a.debug.storage[b]={});a.debug.storage[b][c]=d};a.debug.clear=function(b,c){"undefined"===typeof b?a.debug.storage={}:b in a.debug.storage&&("undefined"===typeof c?delete a.debug.storage[b]:delete a.debug.storage[b][c])}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=
685
+function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.debug)return c.debug;c.defined.debug=!0;for(var k=0;k<e.length;++k)e[k](c);return c.debug}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/debug",["require","module"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();
686
+(function(){function b(a){function c(b,d,e,k){b.generate=function(b,c){for(var l=new a.util.ByteBuffer,n=Math.ceil(c/k)+e,p=new a.util.ByteBuffer,q=e;q<n;++q){p.putInt32(q);d.start();d.update(b+p.getBytes());var w=d.digest();l.putBytes(w.getBytes(k))}l.truncate(l.length()-c);return l.getBytes()}}a.kem=a.kem||{};var d=a.jsbn.BigInteger;a.kem.rsa={};a.kem.rsa.create=function(b,c){c=c||{};var e=c.prng||a.random;return{encrypt:function(c,k){var g=Math.ceil(c.n.bitLength()/8),n;do n=(new d(a.util.bytesToHex(e.getBytesSync(g)),
687
+16)).mod(c.n);while(n.equals(d.ZERO));n=a.util.hexToBytes(n.toString(16));g-=n.length;0<g&&(n=a.util.fillString(String.fromCharCode(0),g)+n);g=c.encrypt(n,"NONE");n=b.generate(n,k);return{encapsulation:g,key:n}},decrypt:function(a,c,d){a=a.decrypt(c,"NONE");return b.generate(a,d)}}};a.kem.kdf1=function(a,b){c(this,a,0,b||a.digestLength)};a.kem.kdf2=function(a,b){c(this,a,1,b||a.digestLength)}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===
688
+typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.kem)return c.kem;c.defined.kem=!0;for(var k=0;k<e.length;++k)e[k](c);return c.kem}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/kem",["require","module","./util","./random",
689
"./jsbn"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){a.log=a.log||{};a.log.levels="none error warning info debug verbose max".split(" ");var c={},d=[],e=null;a.log.LEVEL_LOCKED=2;a.log.NO_LEVEL_CHECK=4;a.log.INTERPOLATE=8;for(var k=0;k<a.log.levels.length;++k){var p=a.log.levels[k];c[p]={index:k,name:p.toUpperCase()}}a.log.logMessage=function(b){for(var e=c[b.level].index,k=0;k<d.length;++k){var l=d[k];l.flags&a.log.NO_LEVEL_CHECK?l.f(b):e<=c[l.level].index&&
690
l.f(l,b)}};a.log.prepareStandard=function(a){"standard"in a||(a.standard=c[a.level].name+" ["+a.category+"] "+a.message)};a.log.prepareFull=function(b){if(!("full"in b)){var c=[b.message],c=c.concat([]);b.full=a.util.format.apply(this,c)}};a.log.prepareStandardFull=function(b){"standardFull"in b||(a.log.prepareStandard(b),b.standardFull=b.standard)};p=["error","warning","info","debug","verbose"];for(k=0;k<p.length;++k)(function(b){a.log[b]=function(c,d){var e=Array.prototype.slice.call(arguments).slice(2);
691
a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:e})}})(p[k]);a.log.makeLogger=function(b){b={flags:0,f:b};a.log.setLevel(b,"none");return b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var e=0;e<a.log.levels.length;++e)if(c==a.log.levels[e]){b.level=c;d=!0;break}return d};a.log.lock=function(b,c){b.flags="undefined"===typeof c||c?b.flags|a.log.LEVEL_LOCKED:b.flags&~a.log.LEVEL_LOCKED};a.log.addLogger=function(a){d.push(a)};if("undefined"!==
692
-typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var n={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=n[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
693
-null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
694
-c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!r.validate(b,J.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
695
-b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:r.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.INTEGER,!1,r.integerToDer(b.version).getBytes()),r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
696
-r.create(r.Class.UNIVERSAL,r.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(b.encryptedContent.algorithm).getBytes()),r.create(r.Class.UNIVERSAL,r.Type.NULL,!1,"")]),r.create(r.Class.UNIVERSAL,r.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,
697
-r.Type.INTEGER,!1,r.integerToDer(b.version).getBytes()),r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),r.create(r.Class.UNIVERSAL,r.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(b.digestAlgorithm).getBytes()),r.create(r.Class.UNIVERSAL,r.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(r.create(r.Class.UNIVERSAL,
698
-r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(b.signatureAlgorithm).getBytes()),r.create(r.Class.UNIVERSAL,r.Type.NULL,!1,"")]));c.value.push(r.create(r.Class.UNIVERSAL,r.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=r.create(r.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
699
-r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=r.create(r.Class.UNIVERSAL,r.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var g=Date.parse(e),e=isNaN(g)?13===e.length?r.utcTimeToDate(e):r.generalizedTimeToDate(e):new Date(g);c=e>=c&&e<d?r.create(r.Class.UNIVERSAL,r.Type.UTCTIME,!1,r.dateToUtcTime(e)):
700
-r.create(r.Class.UNIVERSAL,r.Type.GENERALIZEDTIME,!1,r.dateToGeneralizedTime(e))}return r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(b.type).getBytes()),r.create(r.Class.UNIVERSAL,r.Type.SET,!0,[c])])}function n(b){return[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(a.pki.oids.data).getBytes()),r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(b.algorithm).getBytes()),r.create(r.Class.UNIVERSAL,
701
-r.Type.OCTETSTRING,!1,b.parameter.getBytes())]),r.create(r.Class.CONTEXT_SPECIFIC,0,!0,[r.create(r.Class.UNIVERSAL,r.Type.OCTETSTRING,!1,b.content.getBytes())])]}function g(b,c,d){var e={};if(!r.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(r.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
702
-0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==r.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:r.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==r.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
703
-c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function h(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
704
-break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var r=a.asn1,J=a.pkcs7=a.pkcs7||{};J.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
705
-b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=r.fromDer(b.body);return J.messageFromAsn1(b)};J.messageToPem=function(b,c){var d={type:"PKCS7",body:r.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};J.messageFromAsn1=function(b){var c={},d=[];if(!r.validate(b,J.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=r.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
706
-J.createEnvelopedData();break;case a.pki.oids.encryptedData:d=J.createEncryptedData();break;case a.pki.oids.signedData:d=J.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};J.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){g(b,
707
-c,J.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=r.create(r.Class.CONTEXT_SPECIFIC,0,!0,[r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,
708
-r.Type.INTEGER,!1,r.integerToDer(b.version).getBytes()),r.create(r.Class.UNIVERSAL,r.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(r.create(r.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(r.create(r.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(r.create(r.Class.UNIVERSAL,r.Type.SET,!0,b.signerInfos));return r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(b.type).getBytes()),
709
-e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var g=c.key;if(!g)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof g&&(g=a.pki.privateKeyFromPem(g));var h=c.digestAlgorithm||a.pki.oids.sha1;switch(h){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
710
-h);}c=c.authenticatedAttributes||[];if(0<c.length){for(var k=!1,m=!1,l=0;l<c.length;++l){var n=c[l];if(!k&&n.type===a.pki.oids.contentType){if(k=!0,m)break}else if(!m&&n.type===a.pki.oids.messageDigest&&(m=!0,k))break}if(!k||!m)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:g,version:1,issuer:d,serialNumber:e,digestAlgorithm:h,
711
-signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(r.create(r.Class.CONTEXT_SPECIFIC,
712
-0,!0,[r.create(r.Class.UNIVERSAL,r.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(g).getBytes()),r.create(r.Class.UNIVERSAL,
713
-r.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=r.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=r.toDer(d);h.getByte();r.getBerValueLength(h);var h=h.getBytes(),m;for(m in c)c[m].start().update(h);m=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
714
-}else{e.authenticatedAttributesAsn1=r.create(r.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=r.create(r.Class.UNIVERSAL,r.Type.SET,!0,[]),l=0;l<e.authenticatedAttributes.length;++l){var n=e.authenticatedAttributes[l];n.type===a.pki.oids.messageDigest?n.value=c[e.digestAlgorithm].digest():n.type!==a.pki.oids.signingTime||n.value||(n.value=m);h.value.push(p(n));e.authenticatedAttributesAsn1.value.push(p(n))}h=r.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
715
-b;g=b.signers;m=[];for(d=0;d<g.length;++d)m.push(k(g[d]));c.signerInfos=m}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};J.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
716
-fromAsn1:function(a){g(b,a,J.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);h(b)}}};J.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=g(b,a,J.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],h=0;h<d.length;++h)e.push(c(d[h]));a.recipients=e},toAsn1:function(){return r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,
717
-!0,[r.create(r.Class.UNIVERSAL,r.Type.OID,!1,r.oidToDer(b.type).getBytes()),r.create(r.Class.CONTEXT_SPECIFIC,0,!0,[r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,[r.create(r.Class.UNIVERSAL,r.Type.INTEGER,!1,r.integerToDer(b.version).getBytes()),r.create(r.Class.UNIVERSAL,r.Type.SET,!0,e(b.recipients)),r.create(r.Class.UNIVERSAL,r.Type.SEQUENCE,!0,n(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],g=e.issuer;if(e.serialNumber===
718
-a.serialNumber&&g.length===c.length){for(var h=!0,k=0;k<c.length;++k)if(g[k].type!==c[k].type||g[k].value!==c[k].value){h=!1;break}if(h)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
719
-}h(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,g,h;switch(d){case a.pki.oids["aes128-CBC"]:g=e=16;h=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;g=16;h=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
720
-32;g=16;h=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;g=8;h=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(g));e=h(c);e.start(b.encryptedContent.parameter.copy());
721
-e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(g=b.recipients[e],void 0===g.encryptedContent.content)switch(g.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:g.encryptedContent.content=g.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+g.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
722
-module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
692
+typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug)var m={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},e=function(b,c){a.log.prepareStandard(c);var d=m[c.level],e=[c.standard],e=e.concat(c.arguments.slice());d.apply(console,e)};else e=function(b,c){a.log.prepareStandardFull(c);console.log(c.standardFull)};e=a.log.makeLogger(e);a.log.setLevel(e,"debug");a.log.addLogger(e)}else console={log:function(){}};
693
+null!==e&&(k=a.util.getQueryVariables(),"console.level"in k&&a.log.setLevel(e,k["console.level"].slice(-1)[0]),"console.lock"in k&&"true"==k["console.lock"].slice(-1)[0]&&a.log.lock(e));a.log.consoleLogger=e}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.log)return c.log;
694
+c.defined.log=!0;for(var k=0;k<e.length;++k)e[k](c);return c.log}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/log",["require","module","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b){var d={},e=[];if(!q.validate(b,F.asn1.recipientInfoValidator,d,e))throw b=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo."),
695
+b.errors=e,b;return{version:d.version.charCodeAt(0),issuer:a.pki.RDNAttributesAsArray(d.issuer),serialNumber:a.util.createBuffer(d.serial).toHex(),encryptedContent:{algorithm:q.derToOid(d.encAlgorithm),parameter:d.encParameter.value,content:d.encKey}}}function d(b){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),
696
+q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.encryptedContent.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]),q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.encryptedContent.content)])}function e(a){for(var b=[],c=0;c<a.length;++c)b.push(d(a[c]));return b}function k(b){var c=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
697
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[a.pki.distinguishedNameToAsn1({attributes:b.issuer}),q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,a.util.hexToBytes(b.serialNumber))]),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.digestAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")])]);b.authenticatedAttributesAsn1&&c.value.push(b.authenticatedAttributesAsn1);c.value.push(q.create(q.Class.UNIVERSAL,
698
+q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.signatureAlgorithm).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.NULL,!1,"")]));c.value.push(q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.signature));if(0<b.unauthenticatedAttributes.length){for(var d=q.create(q.Class.CONTEXT_SPECIFIC,1,!0,[]),e=0;e<b.unauthenticatedAttributes.length;++e)d.values.push(p(b.unauthenticatedAttributes[e]));c.value.push(d)}return c}function p(b){var c;if(b.type===a.pki.oids.contentType)c=
699
+q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.value).getBytes());else if(b.type===a.pki.oids.messageDigest)c=q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.value.bytes());else if(b.type===a.pki.oids.signingTime){c=new Date("Jan 1, 1950 00:00:00Z");var d=new Date("Jan 1, 2050 00:00:00Z"),e=b.value;if("string"===typeof e)var k=Date.parse(e),e=isNaN(k)?13===e.length?q.utcTimeToDate(e):q.generalizedTimeToDate(e):new Date(k);c=e>=c&&e<d?q.create(q.Class.UNIVERSAL,q.Type.UTCTIME,!1,q.dateToUtcTime(e)):
700
+q.create(q.Class.UNIVERSAL,q.Type.GENERALIZEDTIME,!1,q.dateToGeneralizedTime(e))}return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[c])])}function m(b){return[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.algorithm).getBytes()),q.create(q.Class.UNIVERSAL,
701
+q.Type.OCTETSTRING,!1,b.parameter.getBytes())]),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,b.content.getBytes())])]}function h(b,c,d){var e={};if(!q.validate(c,d,e,[]))throw b=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message."),b.errors=b,b;if(q.derToOid(e.contentType)!==a.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(e.encryptedContent){c="";if(a.util.isArray(e.encryptedContent))for(d=
702
+0;d<e.encryptedContent.length;++d){if(e.encryptedContent[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");c+=e.encryptedContent[d].value}else c=e.encryptedContent;b.encryptedContent={algorithm:q.derToOid(e.encAlgorithm),parameter:a.util.createBuffer(e.encParameter.value),content:a.util.createBuffer(c)}}if(e.content){c="";if(a.util.isArray(e.content))for(d=0;d<e.content.length;++d){if(e.content[d].type!==q.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
703
+c+=e.content[d].value}else c=e.content;b.content=a.util.createBuffer(c)}b.version=e.version.charCodeAt(0);return b.rawCapture=e}function g(b){if(void 0===b.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===b.content){var c;switch(b.encryptedContent.algorithm){case a.pki.oids["aes128-CBC"]:case a.pki.oids["aes192-CBC"]:case a.pki.oids["aes256-CBC"]:c=a.aes.createDecryptionCipher(b.encryptedContent.key);break;case a.pki.oids.desCBC:case a.pki.oids["des-EDE3-CBC"]:c=a.des.createDecryptionCipher(b.encryptedContent.key);
704
+break;default:throw Error("Unsupported symmetric cipher, OID "+b.encryptedContent.algorithm);}c.start(b.encryptedContent.parameter);c.update(b.encryptedContent.content);if(!c.finish())throw Error("Symmetric decryption failed.");b.content=c.output}}var q=a.asn1,F=a.pkcs7=a.pkcs7||{};F.messageFromPem=function(b){b=a.pem.decode(b)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');c.headerType=b.type;throw c;}if(b.procType&&"ENCRYPTED"===
705
+b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");b=q.fromDer(b.body);return F.messageFromAsn1(b)};F.messageToPem=function(b,c){var d={type:"PKCS7",body:q.toDer(b.toAsn1()).getBytes()};return a.pem.encode(d,{maxline:c})};F.messageFromAsn1=function(b){var c={},d=[];if(!q.validate(b,F.asn1.contentInfoValidator,c,d))throw c=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo."),c.errors=d,c;d=q.derToOid(c.contentType);switch(d){case a.pki.oids.envelopedData:d=
706
+F.createEnvelopedData();break;case a.pki.oids.encryptedData:d=F.createEncryptedData();break;case a.pki.oids.signedData:d=F.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+d+" is not (yet) supported.");}d.fromAsn1(c.content.value[0]);return d};F.createSignedData=function(){var b=null;return b={type:a.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(c){h(b,
707
+c,F.asn1.signedDataValidator);b.certificates=[];b.crls=[];b.digestAlgorithmIdentifiers=[];b.contentInfo=null;b.signerInfos=[];c=b.rawCapture.certificates.value;for(var d=0;d<c.length;++d)b.certificates.push(a.pki.certificateFromAsn1(c[d]))},toAsn1:function(){b.contentInfo||b.sign();for(var c=[],d=0;d<b.certificates.length;++d)c.push(a.pki.certificateToAsn1(b.certificates[d]));var d=[],e=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,
708
+q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.digestAlgorithmIdentifiers),b.contentInfo])]);0<c.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,0,!0,c));0<d.length&&e.value[0].value.push(q.create(q.Class.CONTEXT_SPECIFIC,1,!0,d));e.value[0].value.push(q.create(q.Class.UNIVERSAL,q.Type.SET,!0,b.signerInfos));return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),
709
+e])},addSigner:function(c){var d=c.issuer,e=c.serialNumber;c.certificate&&(e=c.certificate,"string"===typeof e&&(e=a.pki.certificateFromPem(e)),d=e.issuer.attributes,e=e.serialNumber);var k=c.key;if(!k)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"===typeof k&&(k=a.pki.privateKeyFromPem(k));var g=c.digestAlgorithm||a.pki.oids.sha1;switch(g){case a.pki.oids.sha1:case a.pki.oids.sha256:case a.pki.oids.sha384:case a.pki.oids.sha512:case a.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+
710
+g);}c=c.authenticatedAttributes||[];if(0<c.length){for(var h=!1,l=!1,n=0;n<c.length;++n){var m=c[n];if(!h&&m.type===a.pki.oids.contentType){if(h=!0,l)break}else if(!l&&m.type===a.pki.oids.messageDigest&&(l=!0,h))break}if(!h||!l)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.");}b.signers.push({key:k,version:1,issuer:d,serialNumber:e,digestAlgorithm:g,
711
+signatureAlgorithm:a.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:c,unauthenticatedAttributes:[]})},sign:function(){if("object"!==typeof b.content||null===b.contentInfo)if(b.contentInfo=q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(a.pki.oids.data).getBytes())]),"content"in b){var c;b.content instanceof a.util.ByteBuffer?c=b.content.bytes():"string"===typeof b.content&&(c=a.util.encodeUtf8(b.content));b.contentInfo.value.push(q.create(q.Class.CONTEXT_SPECIFIC,
712
+0,!0,[q.create(q.Class.UNIVERSAL,q.Type.OCTETSTRING,!1,c)]))}if(0!==b.signers.length){c={};for(var d=0;d<b.signers.length;++d){var e=b.signers[d],g=e.digestAlgorithm;g in c||(c[g]=a.md[a.pki.oids[g]].create());e.md=0===e.authenticatedAttributes.length?c[g]:a.md[a.pki.oids[g]].create()}b.digestAlgorithmIdentifiers=[];for(g in c)b.digestAlgorithmIdentifiers.push(q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(g).getBytes()),q.create(q.Class.UNIVERSAL,
713
+q.Type.NULL,!1,"")]));if(2>b.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var g=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],h=q.toDer(d);h.getByte();q.getBerValueLength(h);var h=h.getBytes(),l;for(l in c)c[l].start().update(h);l=new Date;for(d=0;d<b.signers.length;++d){e=b.signers[d];if(0===e.authenticatedAttributes.length){if(g!==a.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.");
714
+}else{e.authenticatedAttributesAsn1=q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var h=q.create(q.Class.UNIVERSAL,q.Type.SET,!0,[]),n=0;n<e.authenticatedAttributes.length;++n){var m=e.authenticatedAttributes[n];m.type===a.pki.oids.messageDigest?m.value=c[e.digestAlgorithm].digest():m.type!==a.pki.oids.signingTime||m.value||(m.value=l);h.value.push(p(m));e.authenticatedAttributesAsn1.value.push(p(m))}h=q.toDer(h).getBytes();e.md.start().update(h)}e.signature=e.key.sign(e.md,"RSASSA-PKCS1-V1_5")}c=
715
+b;g=b.signers;l=[];for(d=0;d<g.length;++d)l.push(k(g[d]));c.signerInfos=l}},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.");},addCertificate:function(c){"string"===typeof c&&(c=a.pki.certificateFromPem(c));b.certificates.push(c)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.");}}};F.createEncryptedData=function(){var b=null;return b={type:a.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},
716
+fromAsn1:function(a){h(b,a,F.asn1.encryptedDataValidator)},decrypt:function(a){void 0!==a&&(b.encryptedContent.key=a);g(b)}}};F.createEnvelopedData=function(){var b=null;return b={type:a.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:a.pki.oids["aes256-CBC"]},fromAsn1:function(a){var d=h(b,a,F.asn1.envelopedDataValidator);a=b;for(var d=d.recipientInfos.value,e=[],k=0;k<d.length;++k)e.push(c(d[k]));a.recipients=e},toAsn1:function(){return q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,
717
+!0,[q.create(q.Class.UNIVERSAL,q.Type.OID,!1,q.oidToDer(b.type).getBytes()),q.create(q.Class.CONTEXT_SPECIFIC,0,!0,[q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,[q.create(q.Class.UNIVERSAL,q.Type.INTEGER,!1,q.integerToDer(b.version).getBytes()),q.create(q.Class.UNIVERSAL,q.Type.SET,!0,e(b.recipients)),q.create(q.Class.UNIVERSAL,q.Type.SEQUENCE,!0,m(b.encryptedContent))])])])},findRecipient:function(a){for(var c=a.issuer.attributes,d=0;d<b.recipients.length;++d){var e=b.recipients[d],k=e.issuer;if(e.serialNumber===
718
+a.serialNumber&&k.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(k[h].type!==c[h].type||k[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(c,d){if(void 0===b.encryptedContent.key&&void 0!==c&&void 0!==d)switch(c.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:case a.pki.oids.desCBC:var e=d.decrypt(c.encryptedContent.content);b.encryptedContent.key=a.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+c.encryptedContent.algorithm);
719
+}g(b)},addRecipient:function(c){b.recipients.push({version:0,issuer:c.issuer.attributes,serialNumber:c.serialNumber,encryptedContent:{algorithm:a.pki.oids.rsaEncryption,key:c.publicKey}})},encrypt:function(c,d){if(void 0===b.encryptedContent.content){d=d||b.encryptedContent.algorithm;c=c||b.encryptedContent.key;var e,k,g;switch(d){case a.pki.oids["aes128-CBC"]:k=e=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes192-CBC"]:e=24;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["aes256-CBC"]:e=
720
+32;k=16;g=a.aes.createEncryptionCipher;break;case a.pki.oids["des-EDE3-CBC"]:e=24;k=8;g=a.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+d);}if(void 0===c)c=a.util.createBuffer(a.random.getBytes(e));else if(c.length()!=e)throw Error("Symmetric key has wrong length; got "+c.length()+" bytes, expected "+e+".");b.encryptedContent.algorithm=d;b.encryptedContent.key=c;b.encryptedContent.parameter=a.util.createBuffer(a.random.getBytes(k));e=g(c);e.start(b.encryptedContent.parameter.copy());
721
+e.update(b.content);if(!e.finish())throw Error("Symmetric encryption failed.");b.encryptedContent.content=e.output}for(e=0;e<b.recipients.length;++e)if(k=b.recipients[e],void 0===k.encryptedContent.content)switch(k.encryptedContent.algorithm){case a.pki.oids.rsaEncryption:k.encryptedContent.content=k.encryptedContent.key.encrypt(b.encryptedContent.key.data);break;default:throw Error("Unsupported asymmetric cipher, OID "+k.encryptedContent.algorithm);}}}}}if("function"!==typeof a)if("object"===typeof module&&
722
+module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.pkcs7)return c.pkcs7;c.defined.pkcs7=!0;for(var k=0;k<e.length;++k)e[k](c);return c.pkcs7}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,
723
Array.prototype.slice.call(arguments,0))};a("js/pkcs7","require module ./aes ./asn1 ./des ./oids ./pem ./pkcs7asn1 ./random ./util ./x509".split(" "),function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){function c(b,d){var e=d.toString(16);"8"<=e[0]&&(e="00"+e);e=a.util.hexToBytes(e);b.putInt32(e.length);b.putBytes(e)}function d(a,b){a.putInt32(b.length);a.putString(b)}function e(){for(var b=a.md.sha1.create(),c=arguments.length,d=0;d<c;++d)b.update(arguments[d]);
724
-return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,g){g=g||"";k=k||"";var h=""===k?"none":"aes256-cbc",r;r="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+h+"\r\n")+("Comment: "+g+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;r+="Public-Lines: "+y+"\r\n";r+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
725
-y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;r+="\r\nPrivate-Lines: "+y+"\r\n";r+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
726
-h);d(y,g);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);g=a.hmac.create();g.start("sha1",k);g.update(y.bytes());return r+="\r\nPrivate-MAC: "+g.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);return"ssh-rsa "+a.util.encode64(g.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
727
-function(b,e){e=e||{};var g=e.md||a.md.md5.create(),h=a.util.createBuffer();d(h,"ssh-rsa");c(h,b.e);c(h,b.n);g.start();g.update(h.getBytes());g=g.digest();if("hex"===e.encoding)return g=g.toHex(),e.delimiter?g.match(/.{2}/g).join(e.delimiter):g;if("binary"===e.encoding)return g.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return g}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
728
-(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
724
+return b.digest()}var k=a.ssh=a.ssh||{};k.privateKeyToPutty=function(b,k,h){h=h||"";k=k||"";var g=""===k?"none":"aes256-cbc",q;q="PuTTY-User-Key-File-2: ssh-rsa\r\n"+("Encryption: "+g+"\r\n")+("Comment: "+h+"\r\n");var p=a.util.createBuffer();d(p,"ssh-rsa");c(p,b.e);c(p,b.n);var x=a.util.encode64(p.bytes(),64),y=Math.floor(x.length/66)+1;q+="Public-Lines: "+y+"\r\n";q+=x;x=a.util.createBuffer();c(x,b.d);c(x,b.p);c(x,b.q);c(x,b.qInv);k?(y=x.length()+16-1,y-=y%16,b=e(x.bytes()),b.truncate(b.length()-
725
+y+x.length()),x.putBuffer(b),y=a.util.createBuffer(),y.putBuffer(e("\x00\x00\x00\x00",k)),y.putBuffer(e("\x00\x00\x00\u0001",k)),y=a.aes.createEncryptionCipher(y.truncate(8),"CBC"),y.start(a.util.createBuffer().fillWithByte(0,16)),y.update(x.copy()),y.finish(),y=y.output,y.truncate(16),b=a.util.encode64(y.bytes(),64)):b=a.util.encode64(x.bytes(),64);y=Math.floor(b.length/66)+1;q+="\r\nPrivate-Lines: "+y+"\r\n";q+=b;k=e("putty-private-key-file-mac-key",k);y=a.util.createBuffer();d(y,"ssh-rsa");d(y,
726
+g);d(y,h);y.putInt32(p.length());y.putBuffer(p);y.putInt32(x.length());y.putBuffer(x);h=a.hmac.create();h.start("sha1",k);h.update(y.bytes());return q+="\r\nPrivate-MAC: "+h.digest().toHex()+"\r\n"};k.publicKeyToOpenSSH=function(b,e){e=e||"";var k=a.util.createBuffer();d(k,"ssh-rsa");c(k,b.e);c(k,b.n);return"ssh-rsa "+a.util.encode64(k.bytes())+" "+e};k.privateKeyToOpenSSH=function(b,c){return c?a.pki.encryptRsaPrivateKey(b,c,{legacy:!0,algorithm:"aes128"}):a.pki.privateKeyToPem(b)};k.getPublicKeyFingerprint=
727
+function(b,e){e=e||{};var k=e.md||a.md.md5.create(),g=a.util.createBuffer();d(g,"ssh-rsa");c(g,b.e);c(g,b.n);k.start();k.update(g.getBytes());k=k.digest();if("hex"===e.encoding)return k=k.toHex(),e.delimiter?k.match(/.{2}/g).join(e.delimiter):k;if("binary"===e.encoding)return k.getBytes();if(e.encoding)throw Error('Unknown encoding "'+e.encoding+'".');return k}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&
728
+(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.ssh)return c.ssh;c.defined.ssh=!0;for(var k=0;k<e.length;++k)e[k](c);return c.ssh}},k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/ssh","require module ./aes ./hmac ./md5 ./sha1 ./util".split(" "),
729
function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){function b(a){var c={},d=0;a.debug.set("forge.task","tasks",c);var e={};a.debug.set("forge.task","queues",e);var k={ready:{}};k.ready.stop="ready";k.ready.start="running";k.ready.cancel="done";k.ready.fail="error";k.running={};k.running.stop="ready";k.running.start="running";k.running.block="blocked";k.running.unblock="running";k.running.sleep="sleeping";k.running.wakeup="running";k.running.cancel="done";k.running.fail=
730
"error";k.blocked={};k.blocked.stop="blocked";k.blocked.start="blocked";k.blocked.block="blocked";k.blocked.unblock="blocked";k.blocked.sleep="blocked";k.blocked.wakeup="blocked";k.blocked.cancel="done";k.blocked.fail="error";k.sleeping={};k.sleeping.stop="sleeping";k.sleeping.start="sleeping";k.sleeping.block="sleeping";k.sleeping.unblock="sleeping";k.sleeping.sleep="sleeping";k.sleeping.wakeup="sleeping";k.sleeping.cancel="done";k.sleeping.fail="error";k.done={};k.done.stop="done";k.done.start=
731
-"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var r=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
732
-this.timeoutId=null;this.id=d++;c[this.id]=this};r.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};r.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new r({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};r.prototype.parallel=function(b,c){a.util.isArray(b)&&
733
-(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};r.prototype.stop=function(){this.state=k[this.state].stop};r.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),g(this,0))};r.prototype.block=function(a){this.blocks+=
734
-"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};r.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",g(this,0));return this.blocks};r.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";g(b,0)},"undefined"===typeof a?0:a)};r.prototype.wait=function(a){a.wait(this)};r.prototype.wakeup=function(){"sleeping"===
735
-this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",g(this,0))};r.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};r.prototype.fail=function(a){this.error=!0;h(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,g(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
736
-a.userData=this.userData,a=a.parent;h(a,!0)}this.failureCallback&&this.failureCallback(this)}};var n=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),g(a,0))},0)},g=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||g(d,b)}else h(a),a.error||
737
-null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,g(a.parent,b))};c?setTimeout(d,0):d(b)},h=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
738
-"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new r({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],n(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
739
-a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var r,p=function(a,c){c.exports=function(c){var e=r.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
740
-k=a;a=function(b,c){r="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
741
-return}var e,r=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,q){e="string"===typeof c?q.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
742
-function(){r.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==xxCertPrivateKeys.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),r=0;r<c.length;r++)e===c[r].DERKey+"-----END PUBLIC KEY-----"&&(c[r].XCert=d,d.XPrivateKey=c[r])}catch(p){console.log(p)}}}
743
-function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),r=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=r.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,q=window.forge.pki.privateKeyToAsn1(k),m=window.forge.pki.wrapRsaPrivateKey(q);window.forge.asn1.toDer(m).getBytes();
744
-var w=r.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=r.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
745
-function amtcert_createCertificate(b,c,a,d,e){var r,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(r=forge.pki.rsa.generateKeyPair(2048),p.publicKey=r.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
746
-value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);void 0==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
747
-p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(r.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:r.privateKey}}
731
+"done";k.done.block="done";k.done.unblock="done";k.done.sleep="done";k.done.wakeup="done";k.done.cancel="done";k.done.fail="error";k.error={};k.error.stop="error";k.error.start="error";k.error.block="error";k.error.unblock="error";k.error.sleep="error";k.error.wakeup="error";k.error.cancel="error";k.error.fail="error";var q=function(a){this.id=-1;this.name=a.name||"?";this.parent=a.parent||null;this.run=a.run;this.subtasks=[];this.error=!1;this.state="ready";this.blocks=0;this.userData=this.swapTime=
732
+this.timeoutId=null;this.id=d++;c[this.id]=this};q.prototype.debug=function(b){a.log.debug("forge.task",b||"","[%s][%s] task:",this.id,this.name,this,"subtasks:",this.subtasks.length,"queue:",e)};q.prototype.next=function(a,b){"function"===typeof a&&(b=a,a=this.name);var c=new q({run:b,name:a,parent:this});c.state="running";c.type=this.type;c.successCallback=this.successCallback||null;c.failureCallback=this.failureCallback||null;this.subtasks.push(c);return this};q.prototype.parallel=function(b,c){a.util.isArray(b)&&
733
+(c=b,b=this.name);return this.next(b,function(d){d.block(c.length);for(var e=function(b,e){a.task.start({type:b,run:function(a){c[e](a)},success:function(a){d.unblock()},failure:function(a){d.unblock()}})},k=0;k<c.length;k++)e(b+"__parallel-"+d.id+"-"+k,k)})};q.prototype.stop=function(){this.state=k[this.state].stop};q.prototype.start=function(){this.error=!1;this.state=k[this.state].start;"running"===this.state&&(this.start=new Date,this.run(this),h(this,0))};q.prototype.block=function(a){this.blocks+=
734
+"undefined"===typeof a?1:a;0<this.blocks&&(this.state=k[this.state].block)};q.prototype.unblock=function(a){this.blocks-="undefined"===typeof a?1:a;0===this.blocks&&"done"!==this.state&&(this.state="running",h(this,0));return this.blocks};q.prototype.sleep=function(a){this.state=k[this.state].sleep;var b=this;this.timeoutId=setTimeout(function(){b.timeoutId=null;b.state="running";h(b,0)},"undefined"===typeof a?0:a)};q.prototype.wait=function(a){a.wait(this)};q.prototype.wakeup=function(){"sleeping"===
735
+this.state&&(cancelTimeout(this.timeoutId),this.timeoutId=null,this.state="running",h(this,0))};q.prototype.cancel=function(){this.state=k[this.state].cancel;this.permitsNeeded=0;null!==this.timeoutId&&(cancelTimeout(this.timeoutId),this.timeoutId=null);this.subtasks=[]};q.prototype.fail=function(a){this.error=!0;g(this,!0);if(a)a.error=this.error,a.swapTime=this.swapTime,a.userData=this.userData,h(a,0);else{if(null!==this.parent){for(a=this.parent;null!==a.parent;)a.error=this.error,a.swapTime=this.swapTime,
736
+a.userData=this.userData,a=a.parent;g(a,!0)}this.failureCallback&&this.failureCallback(this)}};var m=function(a){a.error=!1;a.state=k[a.state].start;setTimeout(function(){"running"===a.state&&(a.swapTime=+new Date,a.run(a),h(a,0))},0)},h=function(a,b){var c=30<b||20<+new Date-a.swapTime,d=function(b){b++;if("running"===a.state)if(c&&(a.swapTime=+new Date),0<a.subtasks.length){var d=a.subtasks.shift();d.error=a.error;d.swapTime=a.swapTime;d.userData=a.userData;d.run(d);d.error||h(d,b)}else g(a),a.error||
737
+null===a.parent||(a.parent.error=a.error,a.parent.swapTime=a.swapTime,a.parent.userData=a.userData,h(a.parent,b))};c?setTimeout(d,0):d(b)},g=function(b,d){b.state="done";delete c[b.id];null===b.parent&&(b.type in e?0===e[b.type].length?a.log.error("forge.task","[%s][%s] task queue empty [%s]",b.id,b.name,b.type):e[b.type][0]!==b?a.log.error("forge.task","[%s][%s] task not first in queue [%s]",b.id,b.name,b.type):(e[b.type].shift(),0===e[b.type].length?delete e[b.type]:e[b.type][0].start()):a.log.error("forge.task",
738
+"[%s][%s] task queue missing [%s]",b.id,b.name,b.type),d||(b.error&&b.failureCallback?b.failureCallback(b):!b.error&&b.successCallback&&b.successCallback(b)))};a.task=a.task||{};a.task.start=function(a){var b=new q({run:a.run,name:a.name||"?"});b.type=a.type;b.successCallback=a.success||null;b.failureCallback=a.failure||null;b.type in e?e[a.type].push(b):(e[b.type]=[b],m(b))};a.task.cancel=function(a){a in e&&(e[a]=[e[a][0]])};a.task.createCondition=function(){var a={tasks:{},wait:function(b){b.id in
739
+a.tasks||(b.block(),a.tasks[b.id]=b)},notify:function(){var b=a.tasks;a.tasks={};for(var c in b)b[c].unblock()}};return a}}if("function"!==typeof a)if("object"===typeof module&&module.exports){var e=!0;a=function(a,b){b(c,module)}}else return"undefined"===typeof forge&&(forge={}),b(forge);var q,p=function(a,c){c.exports=function(c){var e=q.map(function(b){return a(b)}).concat(b);c=c||{};c.defined=c.defined||{};if(c.defined.task)return c.task;c.defined.task=!0;for(var k=0;k<e.length;++k)e[k](c);return c.task}},
740
+k=a;a=function(b,c){q="string"===typeof b?c.slice(2):b.slice(2);if(e)return delete a,k.apply(null,Array.prototype.slice.call(arguments,0));a=k;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/task",["require","module","./debug","./log","./util"],function(){p.apply(null,Array.prototype.slice.call(arguments,0))})})();(function(){if("function"!==typeof a)if("object"===typeof module&&module.exports){var b=!0;a=function(a,b){b(c,module)}}else{"undefined"===typeof forge&&(forge={disableNativeCode:!1});
741
+return}var e,q=function(a,b){b.exports=function(b){var c=e.map(function(b){return a(b)});b=b||{};b.defined=b.defined||{};if(b.defined.forge)return b.forge;b.defined.forge=!0;for(var d=0;d<c.length;++d)c[d](b);return b};b.exports.disableNativeCode=!0;b.exports(b.exports)},p=a;a=function(c,r){e="string"===typeof c?r.slice(2):c.slice(2);if(b)return delete a,p.apply(null,Array.prototype.slice.call(arguments,0));a=p;return a.apply(null,Array.prototype.slice.call(arguments,0))};a("js/forge","require module ./aes ./aesCipherSuites ./asn1 ./cipher ./cipherModes ./debug ./des ./hmac ./kem ./log ./md ./mgf1 ./pbkdf2 ./pem ./pkcs7 ./pkcs1 ./pkcs12 ./pki ./prime ./prng ./pss ./random ./rc2 ./ssh ./task ./tls ./util".split(" "),
742
+function(){q.apply(null,Array.prototype.slice.call(arguments,0))})})();return c("js/forge")});function amtcert_linkCertPrivateKey(b,c){for(var a in b){var d=b[a];try{if(0==c.length)break;for(var e=forge.pki.publicKeyToPem(forge.pki.certificateFromAsn1(forge.asn1.fromDer(d.X509Certificate)).publicKey).substring(60).replace(/(\r\n|\n|\r)/gm,""),q=0;q<c.length;q++)e===c[q].DERKey+"-----END PUBLIC KEY-----"&&(c[q].XCert=d,d.XPrivateKey=c[q])}catch(p){console.log(p)}}}
743
+function amtcert_loadP12File(b,c,a){try{var d=window.forge.util.decode64(btoa(b)),e=window.forge.asn1.fromDer(d),q=window.forge.pkcs12.pkcs12FromAsn1(e,c),p=q.getBags({bagType:window.forge.pki.oids.pkcs8ShroudedKeyBag});console.assert(p[window.forge.pki.oids.pkcs8ShroudedKeyBag]&&0<p[window.forge.pki.oids.pkcs8ShroudedKeyBag].length);var k=p[window.forge.pki.oids.pkcs8ShroudedKeyBag][0].key,r=window.forge.pki.privateKeyToAsn1(k),n=window.forge.pki.wrapRsaPrivateKey(r);window.forge.asn1.toDer(n).getBytes();
744
+var w=q.getBags({bagType:window.forge.pki.oids.certBag})[window.forge.pki.oids.certBag][0].cert.subject.attributes,l=q.getBags({bagType:forge.pki.oids.certBag})[forge.pki.oids.certBag][0].cert;a(k,w,l);return!0}catch(x){}return!1}function amtcert_signWithCaKey(b,c,a,d,e){c&&null!=c||(c=amtcert_createCertificate(d).key);return amtcert_createCertificate(a,c,b,d,e)}
745
+function amtcert_createCertificate(b,c,a,d,e){var q,p=forge.pki.createCertificate();a?p.publicKey=forge.pki.publicKeyFromPem("-----BEGIN PUBLIC KEY-----"+a+"-----END PUBLIC KEY-----"):(q=forge.pki.rsa.generateKeyPair(2048),p.publicKey=q.publicKey);p.serialNumber=""+Math.floor(1E5*Math.random()+1);p.validity.notBefore=new Date(2018,0,1);p.validity.notAfter=new Date(2049,11,31);var k=[];b.CN&&k.push({name:"commonName",value:b.CN});b.C&&k.push({name:"countryName",value:b.C});b.ST&&k.push({shortName:"ST",
746
+value:b.ST});b.O&&k.push({name:"organizationName",value:b.O});p.setSubject(k);c?(b=[],d.CN&&b.push({name:"commonName",value:d.CN}),d.C&&b.push({name:"countryName",value:d.C}),d.ST&&b.push({shortName:"ST",value:d.ST}),d.O&&b.push({name:"organizationName",value:d.O}),p.setIssuer(b)):p.setIssuer(k);null==c?p.setExtensions([{name:"basicConstraints",cA:!0},{name:"nsCertType",sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectKeyIdentifier"}]):(null==e?e={name:"extKeyUsage",serverAuth:!0}:e.name="extKeyUsage",
747
+p.setExtensions([{name:"basicConstraints"},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},e,{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0},{name:"subjectKeyIdentifier"}]));c?p.sign(c,forge.md.sha256.create()):p.sign(q.privateKey,forge.md.sha256.create());return a?p:{cert:p,key:q.privateKey}}
748
function _stringToArrayBuffer(b){for(var c=new ArrayBuffer(b.length),a=new Uint8Array(c),d=0,e=b.length;d<e;d++)a[d]=b.charCodeAt(d);return c}function _arrayBufferToString(b){var c="";b=new Uint8Array(b);for(var a=b.byteLength,d=0;d<a;d++)c+=String.fromCharCode(b[d]);return c}function certCetAsn1Values(b,c){if("string"===typeof b&&0==b.indexOf("https://"))c.push(b);else if(Array.isArray(b))for(var a in b)certCetAsn1Values(b[a],c);else b&&"object"===typeof b&&certCetAsn1Values(b.value,c)}
749
function getExtensionUrls(b,c){var a=[],d=b.getExtension(c);null!=d&&certCetAsn1Values(forge.asn1.fromDer(d.value),a);return a}var certUrlCache=null,certUrlCacheFile=null;
750
function getCertUrl(b,c){null==certUrlCacheFile&&(certUrlCacheFile=null!=process.env.LOCALAPPDATA?require("path").join(process.env.LOCALAPPDATA,"mccache.json"):"mccache.json");if(null==certUrlCache)try{certUrlCache=JSON.parse(require("fs").readFileSync(certUrlCacheFile))}catch(d){certUrlCache={}}if(null!=certUrlCache[b]&&null!=certUrlCache[b].data){var a=0;b.endsWith(".crl")&&(a=Date.now()-12096E5);if(certUrlCache[b].time>a){c(b,atob(certUrlCache[b].data));return}}console.log("Loading: "+b);a=require("url").parse(b);
@@ -752,69 +752,69 @@ require("https").get({hostname:a.hostname,port:a.port?a.port:443,path:a.path,met
752
script_functionTable2="encodeuri decodeuri passwordcheck atob btoa hex2str str2hex random md5 maketoarray readshort readshortx readint readsint readintx shorttostr shorttostrx inttostr inttostrx".split(" ");script_functionTableX2=[encodeURI,decodeURI,passwordcheck,window.atob.bind(window),window.btoa.bind(window),hex2rstr,rstr2hex,random,rstr_md5,MakeToArray,ReadShort,ReadShortX,ReadInt,ReadSInt,ReadIntX,ShortToStr,ShortToStrX,IntToStr,IntToStrX];script_functionTable3="pullsystemstatus pulleventlog pullauditlog pullcertificates pullwatchdog pullsystemdefense pullhardware pulluserinfo pullremoteaccess highlightblock disconnect getsidstring getsidbytearray pulleventsubscriptions".split(" ");
753
script_functionTableX3=[PullSystemStatus,PullEventLog,PullAuditLog,PullCertificates,PullWatchdog,PullSystemDefense,PullHardware,PullUserInfo,PullRemoteAccess,script_HighlightBlock,,function(b,c){return GetSidString(c)},function(b,c){return GetSidByteArray(c)},PullEventSubscriptions];
754
function script_setup(b,c){var a={startvars:c};if(6>b.length)return console.error("Invalid script length"),null;if(612182341!=ReadInt(b,0))return console.error("Invalid binary script"),null;if(1<ReadShort(b,4))return console.error("Unsupported script version"),null;a.script=b.substring(6);a.reset=function(b){a.stop();a.ip=0;a.variables=c;a.state=1};a.start=function(b){a.stop();a.stepspeed=b;0<b&&(a.timer=setInterval(function(){a.step()},b))};a.stop=function(){null!=a.timer&&clearInterval(a.timer);
755
-a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(r){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,r){1==b.length?c[b[0]]=r:a.setVarEx(b.slice(1),c[b[0]],r)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),r=ReadShort(a.script,
756
-a.ip+4),p=a.ip+6,k=[],q;for(q in a.variables)q.startsWith("__")&&delete a.variables[q];for(q=0;q<r;q++){var m=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+m),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+q]=decodeURI(w),w="__"+q);k.push(w)}if(2==l||3==l)a.variables["__"+q]=ReadSInt(w,0),k.push("__"+q);p+=2+m}a.ip+=c;c=[];for(q=0;10>q;q++)c.push(a.getVar(k[q]));var B;
757
-try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(q in c[1])c[1][q][c[2]]==
758
-c[3]&&(B=q);break;case 6:B=c[1].substr(c[2],c[3]);break;case 7:B=c[1].indexOf(c[2]);break;case 8:B=c[1].split(c[2]);break;case 9:B=c[1].join(c[2]);break;case 10:B=c[1].length;break;case 11:B=JSON.parse(c[1]);break;case 12:B=JSON.stringify(c[1]);break;case 13:B=c[1]+c[2];break;case 14:B=c[1]-c[2];break;case 15:B=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
755
+a.timer=null;a.stepspeed=0};a.getVar=function(b){return void 0==b?void 0:a.getVarEx(b.split("."),a.variables)};a.getVarEx=function(b,c){try{return void 0==b?void 0:0==b.length?c:a.getVarEx(b.slice(1),c[b[0]])}catch(q){return null}};a.setVar=function(b,c){a.setVarEx(b.split("."),a.variables,c)};a.setVarEx=function(b,c,q){1==b.length?c[b[0]]=q:a.setVarEx(b.slice(1),c[b[0]],q)};a.step=function(){if(1==a.state){if(a.ip<a.script.length){var b=ReadShort(a.script,a.ip),c=ReadShort(a.script,a.ip+2),q=ReadShort(a.script,
756
+a.ip+4),p=a.ip+6,k=[],r;for(r in a.variables)r.startsWith("__")&&delete a.variables[r];for(r=0;r<q;r++){var n=ReadShort(a.script,p),w=a.script.substring(p+2,p+2+n),l=w.charCodeAt(0),w=w.substring(1);if(2>l){for(;1<w.split("{").length;)var x=w.split("{").pop().split("}").shift(),w=w.replace("{"+x+"}",a.getVar(x));1==l&&(a.variables["__"+r]=decodeURI(w),w="__"+r);k.push(w)}if(2==l||3==l)a.variables["__"+r]=ReadSInt(w,0),k.push("__"+r);p+=2+n}a.ip+=c;c=[];for(r=0;10>r;r++)c.push(a.getVar(k[r]));var C;
757
+try{if(1E4>b)switch(b){case 0:break;case 1:if(c[2]){if("<"==c[2]&&c[1]<c[3]||"<="==c[2]&&c[1]<=c[3]||"!="==c[2]&&c[1]!=c[3]||"="==c[2]&&c[1]==c[3]||">="==c[2]&&c[1]>=c[3]||">"==c[2]&&c[1]>c[3])a.ip=c[0]}else a.ip=c[0];break;case 2:void 0==k[1]?delete a.variables[k[0]]:a.setVar(k[0],c[1]);break;case 3:if(a.onConsole)a.onConsole(a.toString(c[0]),a);else console.log(a.toString(c[0]));break;case 4:a.state=2;a.dialog=!0;setDialogMode(11,c[0],c[2],a.xxStepDialogOk,c[1],a);break;case 5:for(r in c[1])c[1][r][c[2]]==
758
+c[3]&&(C=r);break;case 6:C=c[1].substr(c[2],c[3]);break;case 7:C=c[1].indexOf(c[2]);break;case 8:C=c[1].split(c[2]);break;case 9:C=c[1].join(c[2]);break;case 10:C=c[1].length;break;case 11:C=JSON.parse(c[1]);break;case 12:C=JSON.stringify(c[1]);break;case 13:C=c[1]+c[2];break;case 14:C=c[1]-c[2];break;case 15:C=parseInt(c[1]);break;case 16:a.state=2;a.amtstack.BatchEnum(c[0],c[1],a.xxWsmanReturn,a);break;case 17:a.state=2;a.amtstack.Put(c[0],c[1],a.xxWsmanReturn,a);break;case 18:a.state=2;a.amtstack.Create(c[0],
759
c[1],a.xxWsmanReturn,a);break;case 19:a.state=2;a.amtstack.Delete(c[0],c[1],a.xxWsmanReturn,a);break;case 20:a.state=2;a.amtstack.Exec(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3]);break;case 21:a.stepspeed=c[0];null!=a.timer&&(clearInterval(a.timer),a.timer=setInterval(function(){a.step()},a.stepspeed));break;case 22:a.state=2;a.amtstack.Subscribe(c[0],c[1],c[2],a.xxWsmanReturn,a,0,c[3],c[4],c[5],c[6]);break;case 23:a.state=2;a.amtstack.UnSubscribe(c[0],a.xxWsmanReturn,a,0,c[1]);break;case 24:console.log(c[1],
760
-c[2],c[1].charCodeAt(c[2]));B=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?B=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(B=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=B&&a.setVar(k[0],B)}catch(n){"object"==typeof n&&
761
-(n=n.message),a.setVar("_exception",n)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,r,p){a.setVar(c,r);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
760
+c[2],c[1].charCodeAt(c[2]));C=c[1].charCodeAt(c[2]);break;case 25:a.state=2;amtcert_signWithCaKey(c[0],null,c[1],{CN:"Untrusted Root Certificate"},a.xxSignWithDummyCaReturn);break;default:a.state=9,console.error("Script Error, unknown command: "+b)}else 2E4>b?C=script_functionTableX2[b-1E4](c[1],c[2],c[3],c[4],c[5],c[6]):script_functionTableX3&&script_functionTableX3[b-2E4]&&(C=script_functionTableX3[b-2E4](a,c[1],c[2],c[3],c[4],c[5],c[6]));void 0!=C&&a.setVar(k[0],C)}catch(m){"object"==typeof m&&
761
+(m=m.message),a.setVar("_exception",m)}}1==a.state&&a.ip>=a.script.length&&(a.state=0,a.stop());if(a.onStep)a.onStep(a);return a}};a.xxStepDialogOk=function(b){a.variables.DialogSelect=b;a.state=1;a.dialog=!1;if(a.onStep)a.onStep(a)};a.xxWsmanReturn=function(b,c,q,p){a.setVar(c,q);a.setVar("wsman_result",p);a.setVar("wsman_result_str",httpErrorTable[p]?httpErrorTable[p]:"Error #"+p);a.state=1;if(a.onStep)a.onStep(a)};a.xxSignWithDummyCaReturn=function(b){a.setVar("signed_cert",btoa(_arrayBufferToString(b)));
762
a.state=1;if(a.onStep)a.onStep(a)};a.toString=function(a){return"object"==typeof a?JSON.stringify(a):a};a.reset();return a}
763
-function script_compile(b,c){var a="",d=b.split("\n"),e={},r=[],p=[],k;for(k in d){var q=d[k];if(q.startsWith("##SWAP ")){var m=q.split(" ");3==m.length&&(p[m[1]]=m[2])}if("#"!=q[0]&&0!=q.length){for(m in p)q=q.split(m).join(p[m]);var w=q.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==q[0])e[w[0].toUpperCase()]=a.length;else{q=script_functionTable1.indexOf(w[0].toLowerCase());-1==q&&(q=script_functionTable2.indexOf(w[0].toLowerCase()),0<=q&&(q+=1E4));-1==q&&(q=script_functionTable3.indexOf(w[0].toLowerCase()),
764
-0<=q&&(q+=2E4));if(-1==q)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])r.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var B=parseInt(w[x]),l=B==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(B)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
765
-w[x]);l=ShortToStr(q)+ShortToStr(l.length+4)+l;a+=l}}}for(k in r){d=r[k][0].toUpperCase();p=r[k][1];m=e[d];if(void 0==m)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(m)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
766
-function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var r=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=r)return"# Invalid binary script: "+r;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var r=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),q=d+6,m="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,q),x=b.substring(q+2,q+2+l),B=x.charCodeAt(0);0==B?m+=" "+x.substring(1):1==B?m+=' "'+x.substring(1)+'"':
767
-2==B?m+=" "+ReadInt(x,1):3==B&&(x=ReadInt(x,1),B=e[x],B||(B=":label"+x,e[B]=x),m+=" "+B);q+=2+l}a=1E4>r?a+(script_functionTable1[r]+m+"\n"):2E4<=r?a+(script_functionTable3[r-2E4]+m+"\n"):a+(script_functionTable2[r-1E4]+m+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)r=d[w],":"!=r[0]?a+=r+"\n":e[r]&&(a+=r+"\n");return a}
768
-var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,g,m,n,w){var G=a[b++];w={};var u=0,v=0;if(0==G){if(2==h.bpp)for(g=0;g<n;g++)p(a[b++]+(a[b++]<<8),g);else for(g=0;g<n;g++)r(a[b++],g);e(h.spare,c,d)}else if(1==G)G=a[b++]+(2==h.bpp?a[b++]<<8:0),h.canvas.fillStyle="rgb("+(1==h.bpp?(G&224)+","+((G&28)<<3)+","+B((G&3)<<6):(G>>8&248)+","+(G>>3&252)+","+((G&31)<<3))+")",a=l(c,d),d=x(c,d),h.canvas.fillRect(a,d,g,m);else if(1<G&&17>G){m=4;v=
769
-15;if(2==h.bpp){for(g=0;g<G;g++)w[g]=a[b++]+(a[b++]<<8);2==G?v=m=1:4>=G&&(m=2,v=3);for(;u<n&&b<a.byteLength;)for(G=a[b++],g=8-m;0<=g;g-=m)p(w[G>>g&v],u++)}else{for(g=0;g<G;g++)w[g]=a[b++];2==G?v=m=1:4>=G&&(m=2,v=3);for(;u<n&&b<a.byteLength;)for(G=a[b++],g=8-m;0<=g;g-=m)r(w[G>>g&v],u++)}e(h.spare,c,d)}else if(128==G){if(2==h.bpp)for(;u<n&&b<a.byteLength;){G=a[b++]+(a[b++]<<8);v=1;do v+=g=a[b++];while(255==g);if(0==h.rotation)q(G,u,v),u+=v;else for(;0<=--v;)p(G,u++)}else for(;u<n&&b<a.byteLength;){G=
770
-a[b++];v=1;do v+=g=a[b++];while(255==g);if(0==h.rotation)k(G,u,v),u+=v;else for(;0<=--v;)r(G,u++)}e(h.spare,c,d)}else if(129<G){if(2==h.bpp)for(g=0;g<G-128;g++)w[g]=a[b++]+(a[b++]<<8);else for(g=0;g<G-128;g++)w[g]=a[b++];for(;u<n&&b<a.byteLength;){v=1;g=a[b++];G=w[g%128];if(127<g){do v+=g=a[b++];while(255==g)}if(0==h.rotation)2==h.bpp?q(G,u,v):k(G,u,v),u+=v;else if(2==h.bpp)for(;0<=--v;)p(G,u++);else for(;0<=--v;)r(G,u++)}e(h.spare,c,d)}}function e(a,b,c){if(1!=h.holding){var d=0==h.rotation?b:1==
771
-h.rotation?h.canvas.canvas.width-h.sparew2-c:2==h.rotation?h.canvas.canvas.width-h.sparew2-b:3==h.rotation?c:0;c=0==h.rotation?c:1==h.rotation?b:2==h.rotation?h.canvas.canvas.height-h.spareh2-c:3==h.rotation?h.canvas.canvas.height-h.spareh-b:0;h.canvas.putImageData(a,d,c)}}function r(a,b){var c=b<<2;if(0<h.rotation)if(1==h.rotation){var c=b%h.sparew,d=Math.floor(b/h.sparew);b=c*h.sparew2+(h.sparew2-1-d);c=b<<2}else 2==h.rotation?c=h.sparew*h.spareh*4-4-c:3==h.rotation&&(c=b%h.sparew,d=Math.floor(b/
772
-h.sparew),b=(h.sparew2-1-c)*h.sparew2+d,c=b<<2);h.spare.data[c]=a&224;h.spare.data[c+1]=(a&28)<<3;h.spare.data[c+2]=B((a&3)<<6)}function p(a,b){var c=b<<2;if(0<h.rotation)if(1==h.rotation){var c=b%h.sparew,d=Math.floor(b/h.sparew);b=c*h.sparew2+(h.sparew2-1-d);c=b<<2}else 2==h.rotation?c=h.sparew*h.spareh*4-4-c:3==h.rotation&&(c=b%h.sparew,d=Math.floor(b/h.sparew),b=(h.sparew2-1-c)*h.sparew2+d,c=b<<2);h.spare.data[c]=a>>8&248;h.spare.data[c+1]=a>>3&252;h.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
773
-2;var d=a&224,e=(a&28)<<3;for(a=B((a&3)<<6);0<=--c;)h.spare.data[b]=d,h.spare.data[b+1]=e,h.spare.data[b+2]=a,b+=4}function q(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)h.spare.data[b]=d,h.spare.data[b+1]=e,h.spare.data[b+2]=a,b+=4}function m(a,b){return 0==h.rotation?a:1==h.rotation?b:2==h.rotation?h.canvas.canvas.width-a:3==h.rotation?h.canvas.canvas.height-b:0}function w(a,b){return 0==h.rotation?b:1==h.rotation?h.canvas.canvas.width-a:2==h.rotation?h.canvas.canvas.height-b:
774
-3==h.rotation?a:0}function l(a,b){return 0==h.rotation||1==h.rotation?a:2==h.rotation?a-h.canvas.canvas.width:3==h.rotation?a-h.canvas.canvas.height:0}function x(a,b){return 0==h.rotation?b:1==h.rotation?b-h.canvas.canvas.width:2==h.rotation?b-h.canvas.canvas.height:3==h.rotation?b:0}function B(a){return 127<a?a+32:a}function n(){1!=h.holding&&h.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(h.rwidth)+ShortToStr(h.rheight))}function g(a,b){b||(b=window.event);if(b.code&&0==h.localKeyMap){var c;
775
-c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&h.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
776
-c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);h.sendkey(d,a)}return h.haltEvent(b)}var h={};h.canvasid=b;h.CanvasId=Q(b);h.scrolldiv=c;h.canvas=Q(b).getContext("2d");
777
-h.protocol=2;h.state=0;h.acc=null;h.ScreenWidth=960;h.ScreenHeight=700;h.width=0;h.height=0;h.rwidth=0;h.rheight=0;h.bpp=2;h.useRLE=!0;h.showmouse=!0;h.buttonmask=0;h.localKeyMap=!0;h.spare=null;h.sparew=0;h.spareh=0;h.sparew2=0;h.spareh2=0;h.sparecache={};h.onScreenSizeChange=null;h.frameRateDelay=0;h.noMouseRotate=!1;h.rotation=0;h.kvmDataSupported=!1;h.onKvmData=null;h.onKvmDataPending=[];h.onKvmDataAck=-1;h.holding=!1;h.lastKeepAlive=Date.now();h.kvmExt={};h.kvmExtChanged=null;h.useZLib=!1;h.graymode=
778
-!1;h.mNagleTimer=null;h.mx=0;h.my=0;h.inflate=ZLIB.inflateInit(-15);h.xxStateChange=function(a){0==a?(h.canvas.fillStyle="#000000",h.canvas.fillRect(0,0,h.width,h.height),h.canvas.canvas.width=h.rwidth=h.width=640,h.canvas.canvas.height=h.rheight=h.height=400,QS(h.canvasid).cursor="default"):QS(h.canvasid).cursor=h.showmouse?"default":"none"};h.ProcessBinaryData=function(b){if(null==h.acc)h.acc=new Uint8Array(b);else{var c=new Uint8Array(h.acc.byteLength+b.byteLength);c.set(h.acc,0);c.set(new Uint8Array(b),
779
-h.acc.byteLength);h.acc=c}for(;null!=h.acc&&0<h.acc.byteLength;){var g=0,k=new DataView(h.acc.buffer);if(0==h.state&&12<=h.acc.byteLength)g=12,h.state=1,h.send("RFB 003.008\n");else if(1==h.state&&1<=h.acc.byteLength)g=h.acc[0]+1,h.send(String.fromCharCode(1)),h.state=2;else if(2==h.state&&4<=h.acc.byteLength){g=4;if(0!=k.getUint32(0))return h.Stop();h.send(String.fromCharCode(1));h.state=3;h.parent&&(h.parent.disconnectCode=5E4)}else if(3==h.state&&24<=h.acc.byteLength){h.rotation=0;b=k.getUint32(20);
780
-if(h.acc.byteLength<24+b)break;g=24+b;h.canvas.canvas.width=h.rwidth=h.width=h.ScreenWidth=k.getUint16(0);h.canvas.canvas.height=h.rheight=h.height=h.ScreenHeight=k.getUint16(2);b="";h.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);h.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==h.bpp&&h.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));h.state=4;h.parent&&(h.parent.disconnectCode=0,h.parent.xxStateChange(3));
781
-null!=h.kvmExtChanged&&(h.sendKvmExtCmd(2,h.graymode?1:0),h.sendKvmExtCmd(4,h.useZLib?1:0));n();if(null!=h.onScreenSizeChange)h.onScreenSizeChange(h,h.ScreenWidth,h.ScreenHeight);h.parent&&(h.parent.disconnectCode=50001)}else if(4==h.state)switch(h.acc[0]){case 0:if(4>h.acc.byteLength)return;h.state=100+k.getUint16(2);g=4;break;case 2:g=1;break;case 3:if(8>h.acc.byteLength)return;b=k.getUint32(4)+8;if(h.acc.byteLength<b)return;c=h.acc;if(8>c.byteLength)g=0;else if(b=k.getUint32(4)+8,c.byteLength<
782
-b)g=0;else{if(null!=h.onKvmData){var m=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=m.length&&"\x00KvmDataChannel"==m.substring(0,15)){0==h.kvmDataSupported&&(h.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==h.onKvmDataAck&&16==m.length||0!=m.charCodeAt(15))h.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(m.length-16)+"): "+m.substring(16));if(16<=m.length)h.onKvmData(m.substring(16));1==h.onKvmDataAck&&0<h.onKvmDataPending.length&&h.sendKvmData(h.onKvmDataPending.shift())}else 13<=
783
-m.length&&"\x00KvmExtCmd\x00"==m.substring(0,11)?(c=m.charCodeAt(11),m=m.charCodeAt(12),console.log("Received KvmExtCmd",c,m),1==c&&(h.kvmExt.decimation=m,null!=h.kvmExtChanged&&h.kvmExtChanged(1,m)),2==c&&h.sendKvmExtCmd(1),3==c&&(h.kvmExt.compression=m,null!=h.kvmExtChanged&&h.kvmExtChanged(3,m)),4==c&&h.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",m),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+m.length+"): "+rstr2hex(m)+", "+m))}g=b}}else if(100<h.state&&12<=h.acc.byteLength){b=
784
-k.getUint16(0);var c=k.getUint16(2),g=k.getUint16(4),l=k.getUint16(6),m=g*l,q=k.getUint32(8);if(17>q){if(1>g||64<g||1>l||64<l)return console.log("Invalid tile size ("+g+","+l+"), disconnecting."),h.Stop();if(h.sparew!=g||h.spareh!=l){h.sparew=h.sparew2=g;h.spareh=h.spareh2=l;if(1==h.rotation||3==h.rotation)h.sparew2=l,h.spareh2=g;var w=h.sparew2+"x"+h.spareh2;h.spare=h.sparecache[w];if(!h.spare){h.sparecache[w]=h.spare=h.canvas.createImageData(h.sparew2,h.spareh2);for(var x=h.sparew2*h.spareh2<<2,
785
-w=3;w<x;w+=4)h.spare.data[w]=255}}}if(4294967073==q){if(h.canvas.canvas.width=h.rwidth=h.width=g,h.canvas.canvas.height=h.rheight=h.height=l,h.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(h.width)+ShortToStr(h.height)),g=12,null!=h.onScreenSizeChange)h.onScreenSizeChange(h,h.ScreenWidth,h.ScreenHeight)}else if(0==q){q=12;g=12+m*h.bpp;if(h.acc.byteLength<g)break;if(2==h.bpp)for(w=0;w<m;w++)p(k.getUint16(q,!0),w),q+=2;else for(w=0;w<m;w++)r(h.acc[q++],w);e(h.spare,b,c)}else if(16==q){if(16>h.acc.byteLength)break;
786
-w=k.getUint32(12);if(h.acc.byteLength<16+w)break;q=16;if(5<w&&0==h.acc[q]&&k.getUint16(q+1,!0)==w-5)d(h.acc,q+5,b,c,g,l,m,w);else if(k=h.inflate.inflate(a(new Uint8Array(h.acc.buffer.slice(q,q+w-0)))),0<k.length){for(var q=k,x=new Uint8Array(q.length),u=0,v=q.length;u<v;++u)x[u]=q.charCodeAt(u);d(x,0,b,c,g,l,m,k.length)}else console.log("Invalid deflate data");g=16+w}else return h.Stop();100==--h.state&&(h.state=4,0==h.frameRateDelay?n():setTimeout(n,h.frameRateDelay))}if(0==g)break;h.acc=g!=h.acc.byteLength?
787
-new Uint8Array(h.acc.buffer.slice(g)):null}};h.hold=function(a){if(h.holding!=a)if(h.holding=a,h.canvas.fillStyle="#000000",h.canvas.fillRect(0,0,h.width,h.height),0==h.holding){if(h.canvas.canvas.width!=h.width||h.canvas.canvas.height!=h.height)if(h.canvas.canvas.width=h.width,h.canvas.canvas.height=h.height,null!=h.onScreenSizeChange)h.onScreenSizeChange(h,h.ScreenWidth,h.ScreenHeight);h.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(h.width)+ShortToStr(h.height))}else h.UnGrabMouseInput(),h.UnGrabKeyInput()};
788
-h.tcanvas=null;h.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==h.holding)h.rotation=a;else{if(a==h.rotation)return!0;var b=h.canvas.canvas.width,c=h.canvas.canvas.height;if(1==h.rotation||3==h.rotation)b=h.canvas.canvas.height,c=h.canvas.canvas.width;null==h.tcanvas&&(h.tcanvas=document.createElement("canvas"));var d=h.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*h.rotation*Math.PI/180);0==h.rotation&&d.drawImage(h.canvas.canvas,0,0);1==
789
-h.rotation&&d.drawImage(h.canvas.canvas,-h.canvas.canvas.width,0);2==h.rotation&&d.drawImage(h.canvas.canvas,-h.canvas.canvas.width,-h.canvas.canvas.height);3==h.rotation&&d.drawImage(h.canvas.canvas,0,-h.canvas.canvas.height);if(0==h.rotation||2==h.rotation)h.canvas.canvas.height=b,h.canvas.canvas.width=c;if(1==h.rotation||3==h.rotation)h.canvas.canvas.height=c,h.canvas.canvas.width=b;h.canvas.setTransform(1,0,0,1,0,0);h.canvas.rotate(90*a*Math.PI/180);h.rotation=a;h.canvas.drawImage(h.tcanvas,l(0,
790
-0),x(0,0));h.width=h.canvas.canvas.width;h.height=h.canvas.canvas.height;if(null!=h.onScreenResize)h.onScreenResize(h,h.width,h.height,h.CanvasId);return!0}};h.Start=function(){h.state=0;h.acc=null;h.inflate.inflateReset();h.onKvmDataPending=[];h.onKvmDataAck=-1;h.kvmDataSupported=!1;h.kvmExt={};for(var a in h.sparecache)delete h.sparecache[a]};h.Stop=function(){h.UnGrabMouseInput();h.UnGrabKeyInput();h.parent&&h.parent.Stop()};h.send=function(a){h.parent&&h.parent.send(a)};var v={Pause:19,CapsLock:20,
763
+function script_compile(b,c){var a="",d=b.split("\n"),e={},q=[],p=[],k;for(k in d){var r=d[k];if(r.startsWith("##SWAP ")){var n=r.split(" ");3==n.length&&(p[n[1]]=n[2])}if("#"!=r[0]&&0!=r.length){for(n in p)r=r.split(n).join(p[n]);var w=r.match(/"[^"]*"|[^\s"]+/g);if(0!=w.length)if(":"==r[0])e[w[0].toUpperCase()]=a.length;else{r=script_functionTable1.indexOf(w[0].toLowerCase());-1==r&&(r=script_functionTable2.indexOf(w[0].toLowerCase()),0<=r&&(r+=1E4));-1==r&&(r=script_functionTable3.indexOf(w[0].toLowerCase()),
764
+0<=r&&(r+=2E4));if(-1==r)return c&&c("Unabled to compile, unknown command: "+w[0]),"";var l=ShortToStr(w.length-1),x;for(x in w)if(0!=x)if(":"==w[x][0])q.push([w[x],a.length+l.length+7]),l+=ShortToStr(5)+String.fromCharCode(3)+IntToStr(4294967295);else var C=parseInt(w[x]),l=C==w[x]?l+(ShortToStr(5)+String.fromCharCode(2)+IntToStr(C)):'"'==w[x][0]&&'"'==w[x][w[x].length-1]?l+(ShortToStr(w[x].length-1)+String.fromCharCode(1)+w[x].substring(1,w[x].length-1)):l+(ShortToStr(w[x].length+1)+String.fromCharCode(0)+
765
+w[x]);l=ShortToStr(r)+ShortToStr(l.length+4)+l;a+=l}}}for(k in q){d=q[k][0].toUpperCase();p=q[k][1];n=e[d];if(void 0==n)return c&&c("Unabled to compile, unknown label: "+d),"";a=a.substr(0,p)+IntToStr(n)+a.substr(p+4)}return IntToStr(612182341)+ShortToStr(1)+a}
766
+function script_decompile(b,c){var a="",d=6,e={};if(0<=c)d=c;else{if(6>b.length)return"# Invalid script length";var q=ReadInt(b,0),p=ReadShort(b,4);if(612182341!=q)return"# Invalid binary script: "+q;if(1!=p)return"# Invalid script version"}for(;d<b.length;){var q=ReadShort(b,d),p=ReadShort(b,d+2),k=ReadShort(b,d+4),r=d+6,n="";0<=c||(a+=":label"+(d-6)+"\n");for(var w=0;w<k;w++){var l=ReadShort(b,r),x=b.substring(r+2,r+2+l),C=x.charCodeAt(0);0==C?n+=" "+x.substring(1):1==C?n+=' "'+x.substring(1)+'"':
767
+2==C?n+=" "+ReadInt(x,1):3==C&&(x=ReadInt(x,1),C=e[x],C||(C=":label"+x,e[C]=x),n+=" "+C);r+=2+l}a=1E4>q?a+(script_functionTable1[q]+n+"\n"):2E4<=q?a+(script_functionTable3[q-2E4]+n+"\n"):a+(script_functionTable2[q-1E4]+n+"\n");d+=p;if(0<=c)return a}d=a.split("\n");a="";for(w in d)q=d[w],":"!=q[0]?a+=q+"\n":e[q]&&(a+=q+"\n");return a}
768
+var CreateAmtRemoteDesktop=function(b,c){function a(a){return String.fromCharCode.apply(null,a)}function d(a,b,c,d,h,n,m,w){var H=a[b++];w={};var u=0,v=0;if(0==H){if(2==g.bpp)for(h=0;h<m;h++)p(a[b++]+(a[b++]<<8),h);else for(h=0;h<m;h++)q(a[b++],h);e(g.spare,c,d)}else if(1==H)H=a[b++]+(2==g.bpp?a[b++]<<8:0),g.canvas.fillStyle="rgb("+(1==g.bpp?(H&224)+","+((H&28)<<3)+","+C((H&3)<<6):(H>>8&248)+","+(H>>3&252)+","+((H&31)<<3))+")",a=l(c,d),d=x(c,d),g.canvas.fillRect(a,d,h,n);else if(1<H&&17>H){n=4;v=
769
+15;if(2==g.bpp){for(h=0;h<H;h++)w[h]=a[b++]+(a[b++]<<8);2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)p(w[H>>h&v],u++)}else{for(h=0;h<H;h++)w[h]=a[b++];2==H?v=n=1:4>=H&&(n=2,v=3);for(;u<m&&b<a.byteLength;)for(H=a[b++],h=8-n;0<=h;h-=n)q(w[H>>h&v],u++)}e(g.spare,c,d)}else if(128==H){if(2==g.bpp)for(;u<m&&b<a.byteLength;){H=a[b++]+(a[b++]<<8);v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)r(H,u,v),u+=v;else for(;0<=--v;)p(H,u++)}else for(;u<m&&b<a.byteLength;){H=
770
+a[b++];v=1;do v+=h=a[b++];while(255==h);if(0==g.rotation)k(H,u,v),u+=v;else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}else if(129<H){if(2==g.bpp)for(h=0;h<H-128;h++)w[h]=a[b++]+(a[b++]<<8);else for(h=0;h<H-128;h++)w[h]=a[b++];for(;u<m&&b<a.byteLength;){v=1;h=a[b++];H=w[h%128];if(127<h){do v+=h=a[b++];while(255==h)}if(0==g.rotation)2==g.bpp?r(H,u,v):k(H,u,v),u+=v;else if(2==g.bpp)for(;0<=--v;)p(H,u++);else for(;0<=--v;)q(H,u++)}e(g.spare,c,d)}}function e(a,b,c){if(1!=g.holding){var d=0==g.rotation?b:1==
771
+g.rotation?g.canvas.canvas.width-g.sparew2-c:2==g.rotation?g.canvas.canvas.width-g.sparew2-b:3==g.rotation?c:0;c=0==g.rotation?c:1==g.rotation?b:2==g.rotation?g.canvas.canvas.height-g.spareh2-c:3==g.rotation?g.canvas.canvas.height-g.spareh-b:0;g.canvas.putImageData(a,d,c)}}function q(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/
772
+g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a&224;g.spare.data[c+1]=(a&28)<<3;g.spare.data[c+2]=C((a&3)<<6)}function p(a,b){var c=b<<2;if(0<g.rotation)if(1==g.rotation){var c=b%g.sparew,d=Math.floor(b/g.sparew);b=c*g.sparew2+(g.sparew2-1-d);c=b<<2}else 2==g.rotation?c=g.sparew*g.spareh*4-4-c:3==g.rotation&&(c=b%g.sparew,d=Math.floor(b/g.sparew),b=(g.sparew2-1-c)*g.sparew2+d,c=b<<2);g.spare.data[c]=a>>8&248;g.spare.data[c+1]=a>>3&252;g.spare.data[c+2]=(a&31)<<3}function k(a,b,c){b<<=
773
+2;var d=a&224,e=(a&28)<<3;for(a=C((a&3)<<6);0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function r(a,b,c){b<<=2;var d=a>>8&248,e=a>>3&252;for(a=(a&31)<<3;0<=--c;)g.spare.data[b]=d,g.spare.data[b+1]=e,g.spare.data[b+2]=a,b+=4}function n(a,b){return 0==g.rotation?a:1==g.rotation?b:2==g.rotation?g.canvas.canvas.width-a:3==g.rotation?g.canvas.canvas.height-b:0}function w(a,b){return 0==g.rotation?b:1==g.rotation?g.canvas.canvas.width-a:2==g.rotation?g.canvas.canvas.height-b:
774
+3==g.rotation?a:0}function l(a,b){return 0==g.rotation||1==g.rotation?a:2==g.rotation?a-g.canvas.canvas.width:3==g.rotation?a-g.canvas.canvas.height:0}function x(a,b){return 0==g.rotation?b:1==g.rotation?b-g.canvas.canvas.width:2==g.rotation?b-g.canvas.canvas.height:3==g.rotation?b:0}function C(a){return 127<a?a+32:a}function m(){1!=g.holding&&g.send(String.fromCharCode(3,1,0,0,0,0)+ShortToStr(g.rwidth)+ShortToStr(g.rheight))}function h(a,b){b||(b=window.event);if(b.code&&0==g.localKeyMap){var c;
775
+c=b;c=c.code.startsWith("Key")&&4==c.code.length?c.code.charCodeAt(3)+(0==c.shiftKey?32:0):c.code.startsWith("Digit")&&6==c.code.length?c.code.charCodeAt(5):c.code.startsWith("Numpad")&&7==c.code.length?c.code.charCodeAt(6):v[c.code];null!=c&&g.sendkey(c,a)}else{var d=c=b.keyCode;0==b.shiftKey&&65<=c&&90>=c&&(d=c+32);112<=c&&124>=c&&(d=c+65358);8==c&&(d=65288);9==c&&(d=65289);13==c&&(d=65293);16==c&&(d=65505);17==c&&(d=65507);18==c&&(d=65513);27==c&&(d=65307);33==c&&(d=65365);34==c&&(d=65366);35==
776
+c&&(d=65367);36==c&&(d=65360);37==c&&(d=65361);38==c&&(d=65362);39==c&&(d=65363);40==c&&(d=65364);45==c&&(d=65379);46==c&&(d=65535);96<=c&&105>=c&&(d=c-48);106==c&&(d=42);107==c&&(d=43);109==c&&(d=45);110==c&&(d=46);111==c&&(d=47);186==c&&(d=59);187==c&&(d=61);188==c&&(d=44);189==c&&(d=45);190==c&&(d=46);191==c&&(d=47);192==c&&(d=96);219==c&&(d=91);220==c&&(d=92);221==c&&(d=93);222==c&&(d=39);g.sendkey(d,a)}return g.haltEvent(b)}var g={};g.canvasid=b;g.CanvasId=Q(b);g.scrolldiv=c;g.canvas=Q(b).getContext("2d");
777
+g.protocol=2;g.state=0;g.acc=null;g.ScreenWidth=960;g.ScreenHeight=700;g.width=0;g.height=0;g.rwidth=0;g.rheight=0;g.bpp=2;g.useRLE=!0;g.showmouse=!0;g.buttonmask=0;g.localKeyMap=!0;g.spare=null;g.sparew=0;g.spareh=0;g.sparew2=0;g.spareh2=0;g.sparecache={};g.onScreenSizeChange=null;g.frameRateDelay=0;g.noMouseRotate=!1;g.rotation=0;g.kvmDataSupported=!1;g.onKvmData=null;g.onKvmDataPending=[];g.onKvmDataAck=-1;g.holding=!1;g.lastKeepAlive=Date.now();g.kvmExt={};g.kvmExtChanged=null;g.useZLib=!1;g.graymode=
778
+!1;g.mNagleTimer=null;g.mx=0;g.my=0;g.inflate=ZLIB.inflateInit(-15);g.xxStateChange=function(a){0==a?(g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),g.canvas.canvas.width=g.rwidth=g.width=640,g.canvas.canvas.height=g.rheight=g.height=400,QS(g.canvasid).cursor="default"):QS(g.canvasid).cursor=g.showmouse?"default":"none"};g.ProcessBinaryData=function(b){if(null==g.acc)g.acc=new Uint8Array(b);else{var c=new Uint8Array(g.acc.byteLength+b.byteLength);c.set(g.acc,0);c.set(new Uint8Array(b),
779
+g.acc.byteLength);g.acc=c}for(;null!=g.acc&&0<g.acc.byteLength;){var k=0,h=new DataView(g.acc.buffer);if(0==g.state&&12<=g.acc.byteLength)k=12,g.state=1,g.send("RFB 003.008\n");else if(1==g.state&&1<=g.acc.byteLength)k=g.acc[0]+1,g.send(String.fromCharCode(1)),g.state=2;else if(2==g.state&&4<=g.acc.byteLength){k=4;if(0!=h.getUint32(0))return g.Stop();g.send(String.fromCharCode(1));g.state=3;g.parent&&(g.parent.disconnectCode=5E4)}else if(3==g.state&&24<=g.acc.byteLength){g.rotation=0;b=h.getUint32(20);
780
+if(g.acc.byteLength<24+b)break;k=24+b;g.canvas.canvas.width=g.rwidth=g.width=g.ScreenWidth=h.getUint16(0);g.canvas.canvas.height=g.rheight=g.height=g.ScreenHeight=h.getUint16(2);b="";g.useRLE&&(b+=IntToStr(16));b+=IntToStr(0);b+=IntToStr(1092);g.send(String.fromCharCode(2,0)+ShortToStr(b.length/4+1)+b+IntToStr(-223));1==g.bpp&&g.send(String.fromCharCode(0,0,0,0,8,8,0,1)+ShortToStr(7)+ShortToStr(7)+ShortToStr(3)+String.fromCharCode(5,2,0,0,0,0));g.state=4;g.parent&&(g.parent.disconnectCode=0,g.parent.xxStateChange(3));
781
+null!=g.kvmExtChanged&&(g.sendKvmExtCmd(2,g.graymode?1:0),g.sendKvmExtCmd(4,g.useZLib?1:0));m();if(null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.parent&&(g.parent.disconnectCode=50001)}else if(4==g.state)switch(g.acc[0]){case 0:if(4>g.acc.byteLength)return;g.state=100+h.getUint16(2);k=4;break;case 2:k=1;break;case 3:if(8>g.acc.byteLength)return;b=h.getUint32(4)+8;if(g.acc.byteLength<b)return;c=g.acc;if(8>c.byteLength)k=0;else if(b=h.getUint32(4)+8,c.byteLength<
782
+b)k=0;else{if(null!=g.onKvmData){var l=a(new Uint8Array(c.buffer.slice(8,b)));if(16<=l.length&&"\x00KvmDataChannel"==l.substring(0,15)){0==g.kvmDataSupported&&(g.kvmDataSupported=!0,console.log("KVM Data Channel Supported."));if(-1==g.onKvmDataAck&&16==l.length||0!=l.charCodeAt(15))g.onKvmDataAck=!0;urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Recv("+(l.length-16)+"): "+l.substring(16));if(16<=l.length)g.onKvmData(l.substring(16));1==g.onKvmDataAck&&0<g.onKvmDataPending.length&&g.sendKvmData(g.onKvmDataPending.shift())}else 13<=
783
+l.length&&"\x00KvmExtCmd\x00"==l.substring(0,11)?(c=l.charCodeAt(11),l=l.charCodeAt(12),console.log("Received KvmExtCmd",c,l),1==c&&(g.kvmExt.decimation=l,null!=g.kvmExtChanged&&g.kvmExtChanged(1,l)),2==c&&g.sendKvmExtCmd(1),3==c&&(g.kvmExt.compression=l,null!=g.kvmExtChanged&&g.kvmExtChanged(3,l)),4==c&&g.sendKvmExtCmd(3)):(console.log("Got KVM clipboard data:",l),urlvars&&urlvars.kvmdatatrace&&console.log("KVM-ClipBoard-Recv("+l.length+"): "+rstr2hex(l)+", "+l))}k=b}}else if(100<g.state&&12<=g.acc.byteLength){b=
784
+h.getUint16(0);var c=h.getUint16(2),k=h.getUint16(4),n=h.getUint16(6),l=k*n,r=h.getUint32(8);if(17>r){if(1>k||64<k||1>n||64<n)return console.log("Invalid tile size ("+k+","+n+"), disconnecting."),g.Stop();if(g.sparew!=k||g.spareh!=n){g.sparew=g.sparew2=k;g.spareh=g.spareh2=n;if(1==g.rotation||3==g.rotation)g.sparew2=n,g.spareh2=k;var w=g.sparew2+"x"+g.spareh2;g.spare=g.sparecache[w];if(!g.spare){g.sparecache[w]=g.spare=g.canvas.createImageData(g.sparew2,g.spareh2);for(var x=g.sparew2*g.spareh2<<2,
785
+w=3;w<x;w+=4)g.spare.data[w]=255}}}if(4294967073==r){if(g.canvas.canvas.width=g.rwidth=g.width=k,g.canvas.canvas.height=g.rheight=g.height=n,g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height)),k=12,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight)}else if(0==r){r=12;k=12+l*g.bpp;if(g.acc.byteLength<k)break;if(2==g.bpp)for(w=0;w<l;w++)p(h.getUint16(r,!0),w),r+=2;else for(w=0;w<l;w++)q(g.acc[r++],w);e(g.spare,b,c)}else if(16==r){if(16>g.acc.byteLength)break;
786
+w=h.getUint32(12);if(g.acc.byteLength<16+w)break;r=16;if(5<w&&0==g.acc[r]&&h.getUint16(r+1,!0)==w-5)d(g.acc,r+5,b,c,k,n,l,w);else if(h=g.inflate.inflate(a(new Uint8Array(g.acc.buffer.slice(r,r+w-0)))),0<h.length){for(var r=h,x=new Uint8Array(r.length),u=0,v=r.length;u<v;++u)x[u]=r.charCodeAt(u);d(x,0,b,c,k,n,l,h.length)}else console.log("Invalid deflate data");k=16+w}else return g.Stop();100==--g.state&&(g.state=4,0==g.frameRateDelay?m():setTimeout(m,g.frameRateDelay))}if(0==k)break;g.acc=k!=g.acc.byteLength?
787
+new Uint8Array(g.acc.buffer.slice(k)):null}};g.hold=function(a){if(g.holding!=a)if(g.holding=a,g.canvas.fillStyle="#000000",g.canvas.fillRect(0,0,g.width,g.height),0==g.holding){if(g.canvas.canvas.width!=g.width||g.canvas.canvas.height!=g.height)if(g.canvas.canvas.width=g.width,g.canvas.canvas.height=g.height,null!=g.onScreenSizeChange)g.onScreenSizeChange(g,g.ScreenWidth,g.ScreenHeight);g.send(String.fromCharCode(3,0,0,0,0,0)+ShortToStr(g.width)+ShortToStr(g.height))}else g.UnGrabMouseInput(),g.UnGrabKeyInput()};
788
+g.tcanvas=null;g.setRotation=function(a){for(;0>a;)a+=4;a%=4;if(1==g.holding)g.rotation=a;else{if(a==g.rotation)return!0;var b=g.canvas.canvas.width,c=g.canvas.canvas.height;if(1==g.rotation||3==g.rotation)b=g.canvas.canvas.height,c=g.canvas.canvas.width;null==g.tcanvas&&(g.tcanvas=document.createElement("canvas"));var d=g.tcanvas.getContext("2d");d.setTransform(1,0,0,1,0,0);d.canvas.width=b;d.canvas.height=c;d.rotate(-90*g.rotation*Math.PI/180);0==g.rotation&&d.drawImage(g.canvas.canvas,0,0);1==
789
+g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,0);2==g.rotation&&d.drawImage(g.canvas.canvas,-g.canvas.canvas.width,-g.canvas.canvas.height);3==g.rotation&&d.drawImage(g.canvas.canvas,0,-g.canvas.canvas.height);if(0==g.rotation||2==g.rotation)g.canvas.canvas.height=b,g.canvas.canvas.width=c;if(1==g.rotation||3==g.rotation)g.canvas.canvas.height=c,g.canvas.canvas.width=b;g.canvas.setTransform(1,0,0,1,0,0);g.canvas.rotate(90*a*Math.PI/180);g.rotation=a;g.canvas.drawImage(g.tcanvas,l(0,
790
+0),x(0,0));g.width=g.canvas.canvas.width;g.height=g.canvas.canvas.height;if(null!=g.onScreenResize)g.onScreenResize(g,g.width,g.height,g.CanvasId);return!0}};g.Start=function(){g.state=0;g.acc=null;g.inflate.inflateReset();g.onKvmDataPending=[];g.onKvmDataAck=-1;g.kvmDataSupported=!1;g.kvmExt={};for(var a in g.sparecache)delete g.sparecache[a]};g.Stop=function(){g.UnGrabMouseInput();g.UnGrabKeyInput();g.parent&&g.parent.Stop()};g.send=function(a){g.parent&&g.parent.send(a)};var v={Pause:19,CapsLock:20,
791
Space:32,Quote:39,Minus:45,NumpadMultiply:42,NumpadAdd:43,PrintScreen:44,Comma:44,NumpadSubtract:45,NumpadDecimal:46,Period:46,Slash:47,NumpadDivide:47,Semicolon:59,Equal:61,OSLeft:91,BracketLeft:91,OSRight:91,Backslash:92,BracketRight:93,ContextMenu:93,Backquote:96,NumLock:144,ScrollLock:145,Backspace:65288,Tab:65289,Enter:65293,NumpadEnter:65293,Escape:65307,Delete:65535,Home:65360,PageUp:65365,PageDown:65366,ArrowLeft:65361,ArrowUp:65362,ArrowRight:65363,ArrowDown:65364,End:65367,Insert:65379,
792
-F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};h.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);h.send(c)}else h.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};h.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
793
-"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");h.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};h.sendKvmData=function(a){!0!==h.onKvmDataAck?h.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,h.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),h.onKvmDataAck=!1)};h.sendKeepAlive=function(){h.lastKeepAlive<Date.now()-5E3&&(h.lastKeepAlive=Date.now(),h.send(String.fromCharCode(6,
794
-0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};h.SendCtrlAltDelMsg=function(){h.sendcad()};h.sendcad=function(){h.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var J=!1,D=!1;h.GrabMouseInput=function(){if(1!=J){var a=h.canvas.canvas;a.onmouseup=h.mouseup;a.onmousedown=h.mousedown;a.onmousemove=h.mousemove;J=!0}};h.UnGrabMouseInput=function(){if(0!=J){var a=h.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;J=!1}};h.GrabKeyInput=function(){1!=D&&(document.onkeyup=
795
-h.handleKeyUp,document.onkeydown=h.handleKeyDown,document.onkeypress=h.handleKeys,D=!0)};h.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};h.handleKeys=function(a){return h.haltEvent(a)};h.handleKeyUp=function(a){return g(0,a)};h.handleKeyDown=function(a){return g(1,a)};h.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};h.mousedblclick=function(a){};h.mousedown=function(a){h.buttonmask|=
796
-1<<a.button;return h.mousemove(a,1)};h.mouseup=function(a){h.buttonmask&=65535-(1<<a.button);return h.mousemove(a,1)};h.mousemove=function(a,b){if(4>h.state)return!0;var c=h.canvas.canvas.height/Q(h.canvasid).offsetHeight,d=h.canvas.canvas.width/Q(h.canvasid).offsetWidth,e=h.getPositionOfControl(Q(h.canvasid));h.mx=(event.pageX-e[0])*d;h.my=(event.pageY-e[1])*c;event.addx&&(h.mx+=event.addx);event.addy&&(h.my+=event.addy);1!=h.noMouseRotate&&(h.mx2=m(h.mx,h.my),h.my=w(h.mx,h.my),h.mx=h.mx2);1==b?
797
-(h.send(String.fromCharCode(5,h.buttonmask)+ShortToStr(h.mx)+ShortToStr(h.my)),null!=h.mNagleTimer&&(clearTimeout(h.mNagleTimer),h.mNagleTimer=null)):null==h.mNagleTimer&&(h.mNagleTimer=setTimeout(function(){h.send(String.fromCharCode(5,h.buttonmask)+ShortToStr(h.mx)+ShortToStr(h.my));h.mNagleTimer=null},50));return h.haltEvent(a)};h.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return h},CreateAgentRemoteDesktop=
792
+F1:65470,F2:65471,F3:65472,F4:65473,F5:65474,F6:65475,F7:65476,F8:65477,F9:65478,F10:65479,F11:65480,F12:65481,ShiftLeft:65505,ShiftRight:65506,ControlLeft:65507,ControlRight:65508,AltLeft:65513,AltRight:65514,MetaLeft:65511,MetaRight:65512};g.sendkey=function(a,b){if("object"==typeof a){var c="",d;for(d in a)c+=String.fromCharCode(4,a[d][1],0,0)+IntToStr(a[d][0]);g.send(c)}else g.send(String.fromCharCode(4,b,0,0)+IntToStr(a))};g.sendKvmExtCmd=function(a,b){console.log("Sending KvmExtCmd",a,b);var c=
793
+"\x00KvmExtCmd\x00"+String.fromCharCode(a)+(null!=b?String.fromCharCode(b):"");g.send(String.fromCharCode(6,0,0,0)+IntToStr(c.length)+c)};g.sendKvmData=function(a){!0!==g.onKvmDataAck?g.onKvmDataPending.push(a):(urlvars&&urlvars.kvmdatatrace&&console.log("KVM-DataChannel-Send("+a.length+"): "+a),a="\x00KvmDataChannel\x00"+a,g.send(String.fromCharCode(6,0,0,0)+IntToStr(a.length)+a),g.onKvmDataAck=!1)};g.sendKeepAlive=function(){g.lastKeepAlive<Date.now()-5E3&&(g.lastKeepAlive=Date.now(),g.send(String.fromCharCode(6,
794
+0,0,0)+IntToStr(16)+"\x00KvmDataChannel\x00"))};g.SendCtrlAltDelMsg=function(){g.sendcad()};g.sendcad=function(){g.sendkey([[65507,1],[65513,1],[65535,1],[65535,0],[65513,0],[65507,0]])};var F=!1,D=!1;g.GrabMouseInput=function(){if(1!=F){var a=g.canvas.canvas;a.onmouseup=g.mouseup;a.onmousedown=g.mousedown;a.onmousemove=g.mousemove;F=!0}};g.UnGrabMouseInput=function(){if(0!=F){var a=g.canvas.canvas;a.onmousemove=null;a.onmouseup=null;a.onmousedown=null;F=!1}};g.GrabKeyInput=function(){1!=D&&(document.onkeyup=
795
+g.handleKeyUp,document.onkeydown=g.handleKeyDown,document.onkeypress=g.handleKeys,D=!0)};g.UnGrabKeyInput=function(){0!=D&&(document.onkeyup=null,document.onkeydown=null,document.onkeypress=null,D=!1)};g.handleKeys=function(a){return g.haltEvent(a)};g.handleKeyUp=function(a){return h(0,a)};g.handleKeyDown=function(a){return h(1,a)};g.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};g.mousedblclick=function(a){};g.mousedown=function(a){g.buttonmask|=
796
+1<<a.button;return g.mousemove(a,1)};g.mouseup=function(a){g.buttonmask&=65535-(1<<a.button);return g.mousemove(a,1)};g.mousemove=function(a,b){if(4>g.state)return!0;var c=g.canvas.canvas.height/Q(g.canvasid).offsetHeight,d=g.canvas.canvas.width/Q(g.canvasid).offsetWidth,e=g.getPositionOfControl(Q(g.canvasid));g.mx=(event.pageX-e[0])*d;g.my=(event.pageY-e[1])*c;event.addx&&(g.mx+=event.addx);event.addy&&(g.my+=event.addy);1!=g.noMouseRotate&&(g.mx2=n(g.mx,g.my),g.my=w(g.mx,g.my),g.mx=g.mx2);1==b?
797
+(g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my)),null!=g.mNagleTimer&&(clearTimeout(g.mNagleTimer),g.mNagleTimer=null)):null==g.mNagleTimer&&(g.mNagleTimer=setTimeout(function(){g.send(String.fromCharCode(5,g.buttonmask)+ShortToStr(g.mx)+ShortToStr(g.my));g.mNagleTimer=null},50));return g.haltEvent(a)};g.getPositionOfControl=function(a){var b=Array(2);for(b[0]=b[1]=0;a;)b[0]+=a.offsetLeft,b[1]+=a.offsetTop,a=a.offsetParent;return b};return g},CreateAgentRemoteDesktop=
798
function(b,c){var a={};a.CanvasId=b;"string"===typeof b&&(a.CanvasId=Q(b));a.Canvas=a.CanvasId.getContext("2d");a.scrolldiv=c;a.State=0;a.PendingOperations=[];a.tilesReceived=0;a.TilesDrawn=0;a.KillDraw=0;a.ipad=!1;a.tabletKeyboardVisible=!1;a.LastX=0;a.LastY=0;a.touchenabled=0;a.submenuoffset=0;a.touchtimer=null;a.TouchArray={};a.connectmode=0;a.connectioncount=0;a.rotation=0;a.protocol=2;a.debugmode=0;a.firstUpKeys=[];a.stopInput=!1;a.localKeyMap=!0;a.altPressed=!1;a.ctrlPressed=!1;a.shiftPressed=
799
-!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var r="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
799
+!1;a.sessionid=0;a.username;a.oldie=!1;a.CompressionLevel=50;a.ScalingLevel=1024;a.FrameRateTimer=10;a.FirstDraw=!1;a.ScreenWidth=960;a.ScreenHeight=700;a.width=960;a.height=960;a.onScreenSizeChange=null;a.onMessage=null;a.onConnectCountChanged=null;a.onDebugMessage=null;a.onTouchEnabledChanged=null;a.onDisplayinfo=null;a.accumulator=null;var d=!0,e="default";a.mouseCursorActive=function(b){d!=b&&(d=b,a.CanvasId.style.cursor=1==b?e:"default")};var q="default progress crosshair pointer help text no-drop move nesw-resize ns-resize nwse-resize w-resize alias wait none not-allowed col-resize row-resize copy zoom-in zoom-out".split(" ");
800
a.Start=function(){a.State=0;a.accumulator=null};a.Stop=function(){a.setRotation(0);a.UnGrabKeyInput();a.UnGrabMouseInput();a.touchenabled=0;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.Canvas.clearRect(0,0,a.CanvasId.width,a.CanvasId.height)};a.xxStateChange=function(b){if(a.State!=b)switch(a.State=b,a.CanvasId.style.cursor="default",b){case 0:a.Stop()}};a.send=function(b){1<a.debugmode&&console.log("KSend("+b.length+"): "+rstr2hex(b));null!=a.parent&&
801
a.parent.send(b)};a.ProcessPictureMsg=function(b,c,d){var e=new Image;e.xcount=a.tilesReceived++;var l=a.tilesReceived;e.src="data:image/jpeg;base64,"+btoa(b.substring(4,b.length));e.onload=function(){if(null!=a.Canvas&&a.KillDraw<l&&0!=a.State)for(a.PendingOperations.push([l,2,e,c,d]);a.DoPendingOperations(););};e.error=function(){console.log("DecodeTileError")}};a.DoPendingOperations=function(){if(0==a.PendingOperations.length)return!1;for(var b=0;b<a.PendingOperations.length;b++){var c=a.PendingOperations[b];
802
if(c[0]==a.TilesDrawn+1)return 1==c[1]?a.ProcessCopyRectMsg(c[2]):2==c[1]&&(a.Canvas.drawImage(c[2],a.rotX(c[3],c[4]),a.rotY(c[3],c[4])),delete c[2]),a.PendingOperations.splice(b,1),delete c,a.TilesDrawn++,a.TilesDrawn==a.tilesReceived&&a.KillDraw<a.TilesDrawn&&(a.KillDraw=a.TilesDrawn=a.tilesReceived=0),!0}a.oldie&&0<a.PendingOperations.length&&a.TilesDrawn++;return!1};a.ProcessCopyRectMsg=function(b){var c=((b.charCodeAt(0)&255)<<8)+(b.charCodeAt(1)&255),d=((b.charCodeAt(2)&255)<<8)+(b.charCodeAt(3)&
803
-255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),r=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,r,b,e,l,r,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
803
+255),e=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255),l=((b.charCodeAt(6)&255)<<8)+(b.charCodeAt(7)&255),q=((b.charCodeAt(8)&255)<<8)+(b.charCodeAt(9)&255);b=((b.charCodeAt(10)&255)<<8)+(b.charCodeAt(11)&255);a.Canvas.drawImage(Canvas.canvas,c,d,q,b,e,l,q,b)};a.SendUnPause=function(){a.send(String.fromCharCode(0,8,0,5,0))};a.SendPause=function(){a.send(String.fromCharCode(0,8,0,5,1))};a.SendCompressionLevel=function(b,c,d,e){c&&(a.CompressionLevel=c);d&&(a.ScalingLevel=d);e&&(a.FrameRateTimer=e);
804
a.send(String.fromCharCode(0,5,0,10,b,a.CompressionLevel)+a.shortToStr(a.ScalingLevel)+a.shortToStr(a.FrameRateTimer))};a.SendRefresh=function(){a.send(String.fromCharCode(0,6,0,4))};a.ProcessScreenMsg=function(b,c){0<a.debugmode&&console.log("ScreenSize: "+b+" x "+c);a.Canvas.setTransform(1,0,0,1,0,0);a.rotation=0;a.FirstDraw=!0;a.ScreenWidth=a.width=b;a.ScreenHeight=a.height=c;for(a.KillDraw=a.tilesReceived;0<a.PendingOperations.length;)a.PendingOperations.shift();a.SendCompressionLevel(1);a.SendUnPause();
805
-if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,m=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),B=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
806
-4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);B=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),m=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
807
-m+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,m,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(m,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
808
-4));break;case 11:c=0;m={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var n=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);m[n]=65535==n?"All Displays":"Display "+n}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,m,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
809
-4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>r.length&&(b=0);e=r[b];d&&(a.CanvasId.style.cursor=e)}return x+B}}};a.MouseButton=
805
+if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId)};a.ProcessData=function(b){for(var c=0;c<b.length;)c+=a.ProcessDataEx(b.substring(c))};a.ProcessDataEx=function(b){null!=a.accumulator&&(b=a.accumulator+b,a.accumulator=null);1<a.debugmode&&console.log("KRecv("+b.length+"): "+rstr2hex(b.substring(0,Math.min(b.length,40))));if(!(4>b.length)){var c=null,n=0,p=0,l=ReadShort(b,0),x=ReadShort(b,2),C=0;if(27==l&&8==x){if(12>b.length)return;l=ReadShort(b,8);x=ReadInt(b,
806
+4);if(x+8>b.length){a.accumulator=b;return}b=b.substring(8);C=8}x!=b.length&&0<a.debugmode&&console.log(x,b.length,x==b.length);if(18<=l&&65!=l&&88!=l)console.error("Invalid KVM command "+l+" of size "+x),console.log("Invalid KVM data",b.length,rstr2hex(b.substring(0,40))+"...");else if(x>b.length)a.accumulator=b;else{if(3==l||4==l||7==l)c=b.substring(4,x),n=((c.charCodeAt(0)&255)<<8)+(c.charCodeAt(1)&255),p=((c.charCodeAt(2)&255)<<8)+(c.charCodeAt(3)&255),0<a.debugmode&&console.log("CMD"+l+" at X="+
807
+n+" Y="+p);switch(l){case 3:if(a.FirstDraw)a.onResize();a.ProcessPictureMsg(c,n,p);break;case 4:if(a.FirstDraw)a.onResize();a.TilesDrawn==a.tilesReceived?a.ProcessCopyRectMsg(c):a.PendingOperations.push([++tilesReceived,1,c]);break;case 7:a.ProcessScreenMsg(n,p);a.SendKeyMsgKC(a.KeyAction.UP,16);a.SendKeyMsgKC(a.KeyAction.UP,17);a.SendKeyMsgKC(a.KeyAction.UP,18);a.SendKeyMsgKC(a.KeyAction.UP,91);a.SendKeyMsgKC(a.KeyAction.UP,92);a.SendKeyMsgKC(a.KeyAction.UP,16);a.send(String.fromCharCode(0,14,0,
808
+4));break;case 11:c=0;n={};p=((b.charCodeAt(4)&255)<<8)+(b.charCodeAt(5)&255);if(0<p)for(c=((b.charCodeAt(6+2*p)&255)<<8)+(b.charCodeAt(7+2*p)&255),l=0;l<p;l++){var m=((b.charCodeAt(6+2*l)&255)<<8)+(b.charCodeAt(7+2*l)&255);n[m]=65535==m?"All Displays":"Display "+m}if(null!=a.onDisplayinfo)a.onDisplayinfo(a,n,c);break;case 14:a.touchenabled=1;a.TouchArray={};if(null!=a.onTouchEnabledChanged)a.onTouchEnabledChanged(a.touchenabled);break;case 15:a.TouchArray={};break;case 16:a.connectioncount=ReadInt(b,
809
+4);if(null!=a.onConnectCountChanged)a.onConnectCountChanged(a.connectioncount,a);break;case 17:if(null!=a.onMessage)a.onMessage(b.substring(4,x),a);break;case 65:b=b.substring(4);if("."!=b[0]){if(console.log(b),null!=a.parent&&(a.parent.consoleMessage=b,a.parent.onConsoleMessageChange))a.parent.onConsoleMessageChange(a.parent,b)}else console.log("KVM: "+b.substring(1));break;case 88:if(5!=x)break;b=b.charCodeAt(4);b>q.length&&(b=0);e=q[b];d&&(a.CanvasId.style.cursor=e)}return x+C}}};a.MouseButton=
810
{NONE:0,LEFT:2,RIGHT:8,MIDDLE:32};a.KeyAction={NONE:0,DOWN:1,UP:2,SCROLL:3,EXUP:4,EXDOWN:5,DBLCLICK:6};a.InputType={KEY:1,MOUSE:2,CTRLALTDEL:10,TOUCH:15};a.Alternate=0;var p={Pause:19,CapsLock:20,Space:32,Quote:222,Minus:189,NumpadMultiply:106,NumpadAdd:107,PrintScreen:44,Comma:188,NumpadSubtract:109,NumpadDecimal:110,Period:190,Slash:191,NumpadDivide:111,Semicolon:186,Equal:187,OSLeft:91,BracketLeft:219,OSRight:91,Backslash:220,BracketRight:221,ContextMenu:93,Backquote:192,NumLock:144,ScrollLock:145,
811
Backspace:8,Tab:9,Enter:13,NumpadEnter:13,Escape:27,Delete:46,Home:36,PageUp:33,PageDown:34,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,End:35,Insert:45,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,ShiftLeft:16,ShiftRight:16,ControlLeft:17,ControlRight:17,AltLeft:18,AltRight:18,MetaLeft:91,MetaRight:92,VolumeMute:181};a.SendKeyMsg=function(b,c){if(null!=b)if(c||(c=window.event),c.code&&0==a.localKeyMap){var d;d=c;d=d.code.startsWith("Key")&&4==d.code.length?
812
d.code.charCodeAt(3):d.code.startsWith("Digit")&&6==d.code.length?d.code.charCodeAt(5):d.code.startsWith("Numpad")&&7==d.code.length?d.code.charCodeAt(6)+48:p[d.code];null!=d&&a.SendKeyMsgKC(b,d)}else d=c.keyCode,59==d?d=186:173==d?d=189:61==d&&(d=187),a.SendKeyMsgKC(b,d)};a.SendMessage=function(b){3==a.State&&a.send(String.fromCharCode(0,17)+a.shortToStr(4+b.length)+b)};a.SendKeyMsgKC=function(b,c){if(3==a.State)if("object"==typeof b)for(var d in b)a.SendKeyMsgKC(b[d][0],b[d][1]);else a.send(String.fromCharCode(0,
813
a.InputType.KEY,0,6,b-1,c))};a.sendcad=function(){a.SendCtrlAltDelMsg()};a.SendCtrlAltDelMsg=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.CTRLALTDEL,0,4))};a.SendEscKey=function(){3==a.State&&a.send(String.fromCharCode(0,a.InputType.KEY,0,6,0,27,0,a.InputType.KEY,0,6,1,27))};a.SendStartMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendCharmsMsg=function(){a.SendKeyMsgKC(a.KeyAction.EXDOWN,91);a.SendKeyMsgKC(a.KeyAction.DOWN,67);a.SendKeyMsgKC(a.KeyAction.UP,
814
67);a.SendKeyMsgKC(a.KeyAction.EXUP,91)};a.SendTouchMsg1=function(b,c,d,e){3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(14)+String.fromCharCode(1,b)+a.intToStr(c)+a.shortToStr(d)+a.shortToStr(e))};a.SendTouchMsg2=function(b,c){var d="",e,l;for(l in a.TouchArray)l==b?e=c:1==a.TouchArray[l].f?(e=65542,a.TouchArray[l].f=3):e=2==a.TouchArray[l].f?262144:131078,d+=String.fromCharCode(l)+a.intToStr(e)+a.shortToStr(a.TouchArray[l].x)+a.shortToStr(a.TouchArray[l].y),2==a.TouchArray[l].f&&
815
delete a.TouchArray[l];3==a.State&&a.send(String.fromCharCode(0,a.InputType.TOUCH)+a.shortToStr(5+d.length)+String.fromCharCode(2)+d);0==Object.keys(a.TouchArray).length&&null!=a.touchtimer&&(clearInterval(a.touchtimer),a.touchtimer=null)};a.SendMouseMsg=function(b,c){if(3==a.State&&null!=b&&null!=a.Canvas){c||(c=window.event);var d=a.Canvas.canvas.height/a.CanvasId.clientHeight,e=a.Canvas.canvas.width/a.CanvasId.clientWidth,l=a.GetPositionOfControl(a.Canvas.canvas),e=(c.pageX-l[0])*e,d=(c.pageY-
816
-l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var r=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?r=-120*c.detail:c.wheelDelta&&(r=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
817
-a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,r/256&255,r&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
816
+l[1])*d;c.addx&&(e+=c.addx);c.addy&&(d+=c.addy);if(0<=e&&e<=a.Canvas.canvas.width&&0<=d&&d<=a.Canvas.canvas.height){var q=l=0;b==a.KeyAction.UP||b==a.KeyAction.DOWN?c.which?1==c.which?l=a.MouseButton.LEFT:2==c.which?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT:c.button&&(0==c.button?l=a.MouseButton.LEFT:1==c.button?l=a.MouseButton.MIDDLE:l=a.MouseButton.RIGHT):b==a.KeyAction.SCROLL&&(c.detail?q=-120*c.detail:c.wheelDelta&&(q=3*c.wheelDelta));var p="",p=b==a.KeyAction.DBLCLICK?String.fromCharCode(0,
817
+a.InputType.MOUSE,0,10,0,136,e/256&255,e&255,d/256&255,d&255):b==a.KeyAction.SCROLL?String.fromCharCode(0,a.InputType.MOUSE,0,12,0,0,e/256&255,e&255,d/256&255,d&255,q/256&255,q&255):String.fromCharCode(0,a.InputType.MOUSE,0,10,0,b==a.KeyAction.DOWN?l:2*l&255,e/256&255,e&255,d/256&255,d&255);a.Action==a.KeyAction.NONE?0==a.Alternate||a.ipad?(a.send(p),a.Alternate=1):a.Alternate=0:a.send(p)}}};a.GetDisplayNumbers=function(){a.send(String.fromCharCode(0,11,0,4))};a.SetDisplay=function(b){console.log("Set display",
818
b);a.send(String.fromCharCode(0,12,0,6,b>>8,b&255))};a.intToStr=function(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)};a.shortToStr=function(a){return String.fromCharCode(a>>8&255,a&255)};a.onResize=function(){if(0!=a.ScreenWidth&&0!=a.ScreenHeight&&(a.Canvas.canvas.width!=a.ScreenWidth||a.Canvas.canvas.height!=a.ScreenHeight)){if(a.FirstDraw&&(a.Canvas.canvas.width=a.ScreenWidth,a.Canvas.canvas.height=a.ScreenHeight,a.Canvas.fillRect(0,0,a.ScreenWidth,a.ScreenHeight),null!=a.onScreenSizeChange))a.onScreenSizeChange(a,
819
a.ScreenWidth,a.ScreenHeight,a.CanvasId);a.FirstDraw=!1}};a.xxMouseInputGrab=!1;a.xxKeyInputGrab=!1;a.xxMouseMove=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.NONE,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseUp=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.UP,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDown=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DOWN,b);b.preventDefault&&
820
b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxMouseDblClick=function(b){3==a.State&&a.SendMouseMsg(a.KeyAction.DBLCLICK,b);b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1};a.xxDOMMouseScroll=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxMouseWheel=function(b){return 3==a.State?(a.SendMouseMsg(a.KeyAction.SCROLL,b),!1):!0};a.xxKeyUp=function(b){3==a.State&&a.SendKeyMsg(a.KeyAction.UP,b);b.preventDefault&&
@@ -833,50 +833,50 @@ if(3==a.rotation)return b};a.rotX=function(b,c){if(0==a.rotation||1==a.rotation)
833
3==a.rotation)c=a.Canvas.canvas.height,d=a.Canvas.canvas.width;null==a.tcanvas&&(a.tcanvas=document.createElement("canvas"));var e=a.tcanvas.getContext("2d");e.setTransform(1,0,0,1,0,0);e.canvas.width=c;e.canvas.height=d;e.rotate(-90*a.rotation*Math.PI/180);0==a.rotation&&e.drawImage(a.Canvas.canvas,0,0);1==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,0);2==a.rotation&&e.drawImage(a.Canvas.canvas,-a.Canvas.canvas.width,-a.Canvas.canvas.height);3==a.rotation&&e.drawImage(a.Canvas.canvas,
834
0,-a.Canvas.canvas.height);if(0==a.rotation||2==a.rotation)a.Canvas.canvas.height=c,a.Canvas.canvas.width=d;if(1==a.rotation||3==a.rotation)a.Canvas.canvas.height=d,a.Canvas.canvas.width=c;a.Canvas.setTransform(1,0,0,1,0,0);a.Canvas.rotate(90*b*Math.PI/180);a.rotation=b;a.Canvas.drawImage(a.tcanvas,a.rotX(0,0),a.rotY(0,0));a.ScreenWidth=a.Canvas.canvas.width;a.ScreenHeight=a.Canvas.canvas.height;if(null!=a.onScreenSizeChange)a.onScreenSizeChange(a,a.ScreenWidth,a.ScreenHeight,a.CanvasId);return!0};
835
a.MuchTheSame=function(a,b){return 4>Math.abs(a-b)};a.Debug=function(a){console.log(a)};a.getIEVersion=function(){var a=-1;"Microsoft Internet Explorer"==navigator.appName&&null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a};a.haltEvent=function(a){a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};return a},CreateKvmDataChannel=function(b,c,a){var d={};d.m=c;c.parent=d;d.webchannel=b;d.State=0;d.protocol=c.protocol;
836
-d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,r=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?r=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
837
-0==p.length?r=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==r)p.push(a.data);else if(e.readAsBinaryString)r=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)r=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
836
+d.onStateChanged=null;d.onControlMsg=null;d.debugmode=0;d.keepalive=a;d.rtcKeepAlive=null;d.Start=function(){1==d.debugmode&&console.log("start");d.xxStateChange(3);d.webchannel.onmessage=d.xxOnMessage;d.rtcKeepAlive=setInterval(d.xxSendRtcKeepAlive,3E4)};var e=new FileReader,q=!1,p=[];e.readAsBinaryString?e.onload=function(a){d.xxOnSocketData(a.target.result);0==p.length?q=!1:e.readAsBinaryString(new Blob([p.shift()]))}:e.readAsArrayBuffer&&(e.onloadend=function(a){d.xxOnSocketData(a.target.result);
837
+0==p.length?q=!1:e.readAsArrayBuffer(p.shift())});d.xxOnMessage=function(a){if("string"==typeof a.data){if(null!=d.onControlMsg)d.onControlMsg(a.data)}else if("object"==typeof a.data)if(1==q)p.push(a.data);else if(e.readAsBinaryString)q=!0,e.readAsBinaryString(new Blob([a.data]));else if(f.readAsArrayBuffer)q=!0,e.readAsArrayBuffer(a.data);else{var b="";a=new Uint8Array(a.data);for(var c=a.byteLength,w=0;w<c;w++)b+=String.fromCharCode(a[w]);d.xxOnSocketData(b)}else d.xxOnSocketData(a.data)};d.xxOnSocketData=
838
function(a){if(a){if("object"===typeof a){var b="";a=new Uint8Array(a);for(var c=a.byteLength,e=0;e<c;e++)b+=String.fromCharCode(a[e]);a=b}else if("string"!==typeof a)return;return d.m.ProcessData(a)}};d.sendCtrlMsg=function(a){"string"==typeof a&&(d.webchannel.send(a),urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a),null!=d.keepalive&&d.keepalive.sendKeepAlive())};d.send=function(a){if("string"==typeof a){for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=
839
a.charCodeAt(c);a=b}urlvars&&urlvars.webrtctrace&&console.log("WebRTC-Send("+d.State+"): ",typeof a,a);d.webchannel.send(a)};d.xxStateChange=function(a){if(d.State!=a&&(d.State=a,d.m.xxStateChange(d.State),null!=d.onStateChanged))d.onStateChanged(d,d.State)};d.Stop=function(){1==d.debugmode&&console.log("stop");null!=d.rtcKeepAlive&&(clearInterval(d.rtcKeepAlive),d.rtcKeepAlive=null);d.xxStateChange(0)};d.xxSendRtcKeepAlive=function(){urlvars&&urlvars.webrtctrace&&console.log("WebRTC-SendKeepAlive()");
840
-d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}B>k.width&&(B=k.width);n>k.height-1&&(n=k.height-1);switch(b){case "\b":0<B&&(B--,O&&d(" "));break;case "\t":b=8-B%8;for(c=0;c<
841
-b;c++)a(" ");break;case "\n":n++;n>F[1]&&(k.recordLineTobackBuffer(0),p(1),n=F[1]);k.lineFeed="\r";B=0;break;case "\r":B=0;break;default:B>=k.width&&(B=0,x&&n++,n>=k.height-1&&(p(1),n=k.height-1)),d(b),B++}}}function d(a){z[n][B]=a;C[n][B]=(w<<6)+(l<<12)+m}function e(){for(var a=(w<<6)+(l<<12)+m,b=B;b<k.width;b++)z[n][b]=" ",C[n][b]=a}function r(a){for(var b=(w<<6)+(l<<12)+m,c=0;c<k.width;c++)z[a][c]=" ",C[a][c]=b}function p(a){var b;for(b=F[0];b<=F[1]-a;b++)z[b]=z[b+a],C[b]=C[b+a];for(b=F[1]-a+1;b<=
842
-F[1];b++)for(z[b]=[],C[b]=[],a=0;a<k.width;a++)z[b][a]=" ",C[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var q="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),m=0,w=7,l=0,x=!0,B=0,n=0,g=0,h=0,v=0,J=[],D=0,y=0,C=[],z=[],O=!1,A=!0,F,H=!1,M=[],
843
-G="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];C[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",C[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
844
-decode_utf8(G+b)}catch(c){G+=b;return}G="";for(var d=0;d<b.length;d++){var q=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;J=[];y=D=0;break;default:a(q)}break;case 1:switch(q){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":H=!0;v=0;break;case ">":H=!1;v=0;break;case "7":g=B;h=n;v=0;break;case "8":B=g;n=h;v=0;break;case "M":for(p=F[1];p>=F[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],C[p][u]=C[p-1][u];for(p=
845
-F[0]+1-1;p>F[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",C[p][u]=448;v=0;break;default:console.log("unknown terminal short code",q),v=0}break;case 2:if("0"<=q&&"9">=q){J[D]=J[D]?10*J[D]+(q-0):q-0;break}else if(";"==q){D++;break}else if("?"==q){y=1;break}else{J[0]||(J[0]=0);var p=J,u=D+1,O=y;if(1==O)switch(q){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(q){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?n--:n-=p[0],0>n&&(n=0));break;case "B":1==
846
-u&&(0==p[0]?n++:n+=p[0],n>k.height&&(n=k.height));break;case "C":1==u&&(0==p[0]?B++:B+=p[0],B>k.width&&(B=k.width));break;case "D":1==u&&(0==p[0]?B--:B-=p[0],0>B&&(B=0));break;case "d":1==u&&(n=p[0]-1,n>k.height&&(n=k.height),0>n&&(n=0));break;case "G":1==u&&(B=p[0]-1,0>B&&(B=0),B>k.width-1&&(B=k.width-1));break;case "P":q=1;1==u&&(q=p[0]);for(K=B;K<k.width-q;K++)z[n][K]=z[n][K+q],C[n][K]=C[n][K+q];for(K=k.width-q;K<k.width;K++)z[n][K]=" ",C[n][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
847
-for(p=F[1];p>=n+K;p--)z[p]=z[p-K],C[p]=C[p-K];for(p=n;p<n+K;p++)for(z[p]=[],C[p]=[],q=0;q<k.width;q++)z[p][q]=" ",C[p][q]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),n=B=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=n+1;K<k.height;K++)r(K);else if(1==u&&1==p[0])for(e(),K=0;K<n-1;K++)r(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),n=p[0]-1,B=p[1]-1):B=n=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
848
-8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?m=2:27==p[K]?m=0:30<=p[K]&&37>=p[K]?(q=8<=w,w=p[K]-30,q&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,m=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+m,u=0;u<B;u++)z[n][u]=" ",C[n][u]=p;else 2==p[0]&&r(n)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(F=[p[0]-1,p[1]-1]);0>F[0]&&(F[0]=0);F[0]>k.height-1&&(F[0]=k.height-
849
-1);0>F[1]&&(F[1]=0);F[1]>k.height-1&&(F[1]=k.height-1);F[0]>F[1]&&(F[0]=F[1]);break;case "S":q=1;1==u&&(q=p[0]);for(p=F[0];p<=F[1]-q;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+q][u],C[p][u]=C[p+q][u];for(p=F[1]-q+1;p<F[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",C[p][u]=448;break;case "M":q=1;1==u&&(q=p[0]);for(p=n;p<=F[1]-q;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+q][u],C[p][u]=C[p+q][u];for(p=F[1]-q+1;p<F[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",C[p][u]=448;break;case "T":q=1;1==u&&(q=p[0]);for(p=F[1];p>F[0]+
850
-q;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-q][u],C[p][u]=C[p-q][u];for(p=F[0]+q;p>F[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",C[p][u]=448;break;case "X":q=1;K=B;O=n;for(1==u&&(q=p[0]);0<q&&O<k.height;)z[O][K]=" ",K++,q--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",q,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=q.charCodeAt(0),";"==q)D++;else if(7==p){p=J;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
851
-k.title=p[1]);v=0}else J[D]=J[D]?J[D]+q:q}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
840
+d.sendCtrlMsg(JSON.stringify({action:"ping"}))};return d},CreateAmtRemoteTerminal=function(b,c){function a(b){if("\x00"!=b&&7!=b.charCodeAt()){var c=b.charCodeAt();1==k.terminalEmulation?0!=(c&128)&&(b=String.fromCharCode(u[c&127])):2==k.terminalEmulation&&0!=(c&128)&&(b=String.fromCharCode(R[c&127]));switch(c){case 16:b=" ";break;case 24:b="\u2191";break;case 25:b="\u2193"}C>k.width&&(C=k.width);m>k.height-1&&(m=k.height-1);switch(b){case "\b":0<C&&(C--,O&&d(" "));break;case "\t":b=8-C%8;for(c=0;c<
841
+b;c++)a(" ");break;case "\n":m++;m>G[1]&&(k.recordLineTobackBuffer(0),p(1),m=G[1]);k.lineFeed="\r";C=0;break;case "\r":C=0;break;default:C>=k.width&&(C=0,x&&m++,m>=k.height-1&&(p(1),m=k.height-1)),d(b),C++}}}function d(a){z[m][C]=a;B[m][C]=(w<<6)+(l<<12)+n}function e(){for(var a=(w<<6)+(l<<12)+n,b=C;b<k.width;b++)z[m][b]=" ",B[m][b]=a}function q(a){for(var b=(w<<6)+(l<<12)+n,c=0;c<k.width;c++)z[a][c]=" ",B[a][c]=b}function p(a){var b;for(b=G[0];b<=G[1]-a;b++)z[b]=z[b+a],B[b]=B[b+a];for(b=G[1]-a+1;b<=
842
+G[1];b++)for(z[b]=[],B[b]=[],a=0;a<k.width;a++)z[b][a]=" ",B[b][a]=448}var k={};k.DivId=b;k.DivElement=document.getElementById(b);k.protocol=1;c&&c.protocol&&(k.protocol=c.protocol);k.terminalEmulation=1;k.fxEmulation=0;k.lineFeed="\r\n";k.debugmode=0;k.width=80;k.height=25;k.heightLock=0;var r="000000 BB0000 00BB00 BBBB00 0000BB BB00BB 00BBBB BBBBBB 555555 FF5555 55FF55 FFFF55 5555FF FF55FF 55FFFF FFFFFF".split(" "),n=0,w=7,l=0,x=!0,C=0,m=0,h=0,g=0,v=0,F=[],D=0,y=0,B=[],z=[],O=!1,A=!0,G,I=!1,M=[],
843
+H="";k.title=null;k.onTitleChange=null;k.Start=function(){};k.Init=function(a,b){k.width=a?a:80;k.height=b?b:25;for(var c=0;c<k.height;c++){z[c]=[];B[c]=[];for(var d=0;d<k.width;d++)z[c][d]=" ",B[c][d]=448}k.TermInit();k.TermDraw()};k.xxStateChange=function(a){3==a&&null!=c&&1==c.xterm&&k.TermSendKeys("stty rows "+k.height+" cols "+k.width+"\nclear\n")};k.ProcessData=function(b){2==k.debugmode&&console.log("TRecv("+b.length+"): "+rstr2hex(b));null!=k.capture&&(k.capture+=b);if(0==k.terminalEmulation)try{b=
844
+decode_utf8(H+b)}catch(c){H+=b;return}H="";for(var d=0;d<b.length;d++){var r=String.fromCharCode(b.charCodeAt(d)),p=b.charCodeAt(d);switch(v){case 0:switch(p){case 27:v=1;F=[];y=D=0;break;default:a(r)}break;case 1:switch(r){case "[":v=2;break;case "(":v=4;break;case ")":v=5;break;case "]":v=6;break;case "=":I=!0;v=0;break;case ">":I=!1;v=0;break;case "7":h=C;g=m;v=0;break;case "8":C=h;m=g;v=0;break;case "M":for(p=G[1];p>=G[0]+1;p--)for(var u=0;u<k.width;u++)z[p][u]=z[p-1][u],B[p][u]=B[p-1][u];for(p=
845
+G[0]+1-1;p>G[0]-1;p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;v=0;break;default:console.log("unknown terminal short code",r),v=0}break;case 2:if("0"<=r&&"9">=r){F[D]=F[D]?10*F[D]+(r-0):r-0;break}else if(";"==r){D++;break}else if("?"==r){y=1;break}else{F[0]||(F[0]=0);var p=F,u=D+1,O=y;if(1==O)switch(r){case "l":25==p[0]&&(A=!1);break;case "h":25==p[0]&&(A=!0)}else if(0==O){var K=void 0;switch(r){case "c":k.TermResetScreen();break;case "A":1==u&&(0==p[0]?m--:m-=p[0],0>m&&(m=0));break;case "B":1==
846
+u&&(0==p[0]?m++:m+=p[0],m>k.height&&(m=k.height));break;case "C":1==u&&(0==p[0]?C++:C+=p[0],C>k.width&&(C=k.width));break;case "D":1==u&&(0==p[0]?C--:C-=p[0],0>C&&(C=0));break;case "d":1==u&&(m=p[0]-1,m>k.height&&(m=k.height),0>m&&(m=0));break;case "G":1==u&&(C=p[0]-1,0>C&&(C=0),C>k.width-1&&(C=k.width-1));break;case "P":r=1;1==u&&(r=p[0]);for(K=C;K<k.width-r;K++)z[m][K]=z[m][K+r],B[m][K]=B[m][K+r];for(K=k.width-r;K<k.width;K++)z[m][K]=" ",B[m][K]=448;break;case "L":K=1;1==u&&(K=p[0]);0==K&&(K=1);
847
+for(p=G[1];p>=m+K;p--)z[p]=z[p-K],B[p]=B[p-K];for(p=m;p<m+K;p++)for(z[p]=[],B[p]=[],r=0;r<k.width;r++)z[p][r]=" ",B[p][r]=448;break;case "J":if(1==u&&2==p[0])k.TermClear((l<<12)+(w<<6)),m=C=0,M=[];else if(0==u||1==u&&0==p[0])for(e(),K=m+1;K<k.height;K++)q(K);else if(1==u&&1==p[0])for(e(),K=0;K<m-1;K++)q(K);break;case "H":2==u?(1>p[0]&&(p[0]=1),1>p[1]&&(p[1]=1),p[0]>k.height&&(p[0]=k.height),p[1]>k.width&&(p[1]=k.width),m=p[0]-1,C=p[1]-1):C=m=0;break;case "m":for(K=0;K<u;K++)p[K]&&0!=p[K]?1==p[K]?
848
+8>w&&(w+=8):2==p[K]||22==p[K]?8<=w&&(w-=8):7==p[K]?n=2:27==p[K]?n=0:30<=p[K]&&37>=p[K]?(r=8<=w,w=p[K]-30,r&&8>=w&&(w+=8)):40<=p[K]&&47>=p[K]?l=p[K]-40:90<=p[K]&&99>=p[K]?w=p[K]-82:100<=p[K]&&109>=p[K]&&(l=p[K]-92):(l=0,w=7,n=0);break;case "K":if(0!=u&&(1!=u||p[0]&&0!=p[0])){if(1==u)if(1==p[0])for(p=(w<<6)+(l<<12)+n,u=0;u<C;u++)z[m][u]=" ",B[m][u]=p;else 2==p[0]&&q(m)}else e();break;case "h":x=!0;break;case "l":x=!1;break;case "r":2==u&&(G=[p[0]-1,p[1]-1]);0>G[0]&&(G[0]=0);G[0]>k.height-1&&(G[0]=k.height-
849
+1);0>G[1]&&(G[1]=0);G[1]>k.height-1&&(G[1]=k.height-1);G[0]>G[1]&&(G[0]=G[1]);break;case "S":r=1;1==u&&(r=p[0]);for(p=G[0];p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "M":r=1;1==u&&(r=p[0]);for(p=m;p<=G[1]-r;p++)for(u=0;u<k.width;u++)z[p][u]=z[p+r][u],B[p][u]=B[p+r][u];for(p=G[1]-r+1;p<G[1];p++)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "T":r=1;1==u&&(r=p[0]);for(p=G[1];p>G[0]+
850
+r;p--)for(u=0;u<k.width;u++)z[p][u]=z[p-r][u],B[p][u]=B[p-r][u];for(p=G[0]+r;p>G[0];p--)for(u=0;u<k.width;u++)z[p][u]=" ",B[p][u]=448;break;case "X":r=1;K=C;O=m;for(1==u&&(r=p[0]);0<r&&O<k.height;)z[O][K]=" ",K++,r--,K>=k.width&&(K=0,O++);break;default:console.log("unknown terminal code",r,p,O)}}v=0}break;case 4:v=0;break;case 5:v=0;break;case 6:if(p=r.charCodeAt(0),";"==r)D++;else if(7==p){p=F;if(0!=p.length&&(u=parseInt(p[0]),(0==u||2==u)&&1<p.length&&"?"!=p[1]&&k.onTitleChange))k.onTitleChange(k,
851
+k.title=p[1]);v=0}else F[D]=F[D]?F[D]+r:r}}k.TermDraw()};k.ProcessVt100String=function(b){for(var c=0;c<b.length;c++)a(String.fromCharCode(b.charCodeAt(c)))};var u=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,171,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,
852
9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160],R=[199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,201,230,198,244,246,242,251,249,255,214,220,162,163,165,8359,402,225,237,243,250,241,209,170,218,191,8976,172,189,188,161,174,187,9619,9618,9617,9474,9508,9569,9570,9558,9557,9571,9553,9559,9565,9564,
853
-9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",C[b][c]=a;M=[]};k.TermResetScreen=function(){m=0;w=7;l=0;x=A=!0;B=n=0;O=!1;F=[0,k.height-1];H=!1;k.TermClear(448);
854
-G=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
855
-k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==H){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
853
+9563,9488,9492,9524,9516,9500,9472,9532,9566,9567,9562,9556,9577,9574,9568,9552,9580,9575,9576,9572,9573,9576,9560,9554,9555,9579,9578,9496,9484,9608,9604,9611,9616,9600,945,223,915,960,931,963,181,964,966,952,8486,948,8734,248,949,8719,8801,177,8805,8806,8992,8993,247,8776,176,8226,183,8730,8319,178,8718,160];k.TermClear=function(a){for(var b=0;b<k.height;b++)for(var c=0;c<k.width;c++)z[b][c]=" ",B[b][c]=a;M=[]};k.TermResetScreen=function(){n=0;w=7;l=0;x=A=!0;C=m=0;O=!1;G=[0,k.height-1];I=!1;k.TermClear(448);
854
+H=""};k.TermSendKeys=function(a){2==k.debugmode&&console.log("TSend("+a.length+"): "+rstr2hex(a),a);k.parent&&k.parent.Send(a)};k.TermSendKey=function(a){2==k.debugmode&&console.log("TSend(1): "+rstr2hex(String.fromCharCode(a)),a);k.parent&&k.parent.Send(String.fromCharCode(a))};k.TermHandleKeys=function(a){if(!a.ctrlKey)return 127==a.which?k.TermSendKey(8):13==a.which?k.TermSendKeys(k.lineFeed):0!=a.which&&k.TermSendKey(a.which),!1;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation()};
855
+k.TermHandleKeyUp=function(a){if(8!=a.which&&32!=a.which&&9!=a.which)return!0;a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1};k.TermHandleKeyDown=function(a){if(65<=a.which&&90>=a.which&&1==a.ctrlKey)k.TermSendKey(a.which-64),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation();else{if(27==a.which)return k.TermSendKeys(String.fromCharCode(27)),!0;if(1==I){if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,79,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,
856
79,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,79,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,79,66)),!0}else{if(37==a.which)return k.TermSendKeys(String.fromCharCode(27,91,68)),!0;if(38==a.which)return k.TermSendKeys(String.fromCharCode(27,91,65)),!0;if(39==a.which)return k.TermSendKeys(String.fromCharCode(27,91,67)),!0;if(40==a.which)return k.TermSendKeys(String.fromCharCode(27,91,66)),!0}if(33==a.which)return k.TermSendKeys(String.fromCharCode(27,
857
91,53,126)),!0;if(34==a.which)return k.TermSendKeys(String.fromCharCode(27,91,54,126)),!0;if(35==a.which)return k.TermSendKeys(String.fromCharCode(27,91,70)),!0;if(36==a.which)return k.TermSendKeys(String.fromCharCode(27,91,72)),!0;if(45==a.which)return k.TermSendKeys(String.fromCharCode(27,91,50,126)),!0;if(46==a.which)return k.TermSendKeys(String.fromCharCode(27,91,51,126)),!0;if(9==a.which)return k.TermSendKeys("\t"),a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),!0;
858
var b=[80,81,119,120,116,117,113,114,112,77],c=[49,50,51,52,53,54,55,56,57,48,33,64],d=[80,81,82,83,84,85,86,87,88,89,90,91];if(111<a.which&124>a.which&&0==a.repeat){if(0==k.fxEmulation&&122>a.which)return k.TermSendKeys(String.fromCharCode(27,91,79,b[a.which-112])),!0;if(1==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,c[a.which-112])),!0;if(2==k.fxEmulation)return k.TermSendKeys(String.fromCharCode(27,79,d[a.which-112])),!0}if(8!=a.which&&32!=a.which&&9!=a.which)return!0;k.TermSendKey(a.which);
859
-a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=C[b][h],B==h&&n==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+q[d>>e&63]+";background-color:#"+q[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
859
+a.preventDefault&&a.preventDefault();a.stopPropagation&&a.stopPropagation();return!1}};k.recordLineTobackBuffer=function(a){var b;b=k.TermDrawLine("",a,"");a=b[0];b=b[1];M.push(a+b+"<br>")};k.TermDrawLine=function(a,b,c){for(var d,e=1,g,h=0;h<k.width;++h)switch(d=B[b][h],C==h&&m==b&&A&&(d|=2),d!=e&&(a+=c,c="",e=6,g=12,d&2&&(e=12,g=6),a+='<span style="color:#'+r[d>>e&63]+";background-color:#"+r[d>>g&63],d&1&&(a+=";text-decoration:underline"),a+=';">',c="</span>"+c,e=d),d=z[b][h],d){case "&":a+="&";
860
break;case "<":a+="<";break;case ">":a+=">";break;case " ":a+=" ";break;default:a+=d}return[a,c]};k.TermDraw=function(){for(var a="",b="",c=0;c<k.height;++c)a=k.TermDrawLine(b,c,a),b=a[0],a=a[1],c!=k.height-1&&(b+="<br>");800<M.length&&(M=M.slice(M.length-800));c=M.join("");k.DivElement.innerHTML='<font size="4"><b>'+c+b+a+"</b></font>";k.DivElement.scrollTop=k.DivElement.scrollHeight};k.TermInit=function(){k.TermResetScreen()};null!=c&&null!=c.width&&null!=c.height?k.Init(c.width,c.height):
861
k.Init();return k},ZLIB=ZLIB||{};
862
"undefined"===typeof ZLIB.common_initialized&&(ZLIB.Z_NO_FLUSH=0,ZLIB.Z_PARTIAL_FLUSH=1,ZLIB.Z_SYNC_FLUSH=2,ZLIB.Z_FULL_FLUSH=3,ZLIB.Z_FINISH=4,ZLIB.Z_BLOCK=5,ZLIB.Z_TREES=6,ZLIB.Z_OK=0,ZLIB.Z_STREAM_END=1,ZLIB.Z_NEED_DICT=2,ZLIB.Z_ERRNO=-1,ZLIB.Z_STREAM_ERROR=-2,ZLIB.Z_DATA_ERROR=-3,ZLIB.Z_MEM_ERROR=-4,ZLIB.Z_BUF_ERROR=-5,ZLIB.Z_VERSION_ERROR=-6,ZLIB.Z_DEFLATED=8,ZLIB.z_stream=function(){this.total_out=this.avail_out=this.next_out=this.total_in=this.avail_in=this.next_in=0;this.state=this.msg=null;
863
this.adler=this.data_type=0;this.output_data=this.input_data="";this.error=0;this.checksum_function=null},ZLIB.gz_header=function(){this.xflags=this.time=this.text=0;this.os=255;this.extra=null;this.extra_max=this.extra_len=0;this.name=null;this.name_max=0;this.comment=null;this.done=this.hcrc=this.comm_max=0},ZLIB.common_initialized=!0);"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-inflate.js");
864
-(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,B,C,D,X,I,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
865
-(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=g;da=-257;fa=h;ga=-257;U=256;break;default:aa=v,fa=J,ga=da=0,U=-1}q=C=0;p=d;T=c;n=w;x=0;X=-1;B=1<<w;I=B-1;if(1==b&&852<=B||2==b&&592<=B)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(C>>>x)+D]=E;while(0!=D);for(y=1<<p-1;C&y;)y>>>=
866
-1;0!=y?(C&=y-1,C+=y):C=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(C&I)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}B+=1<<n;if(1==b&&852<=B||2==b&&592<=B)return a.next=c,1;X=C&I;m[c+X]={op:n,bits:w,val:T-c}}}0!=C&&(m[T+C]={op:64,bits:p-x,val:0});a.next=c+B;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
867
-this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function r(a,b){a.state.check=a.checksum_function(a.state.check,
868
-[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function q(a){a.hold=0;a.bits=0}function m(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!m(a))return!1;return!0}function l(a,b){return a.hold&
869
-(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function B(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function n(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var g=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],h=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],J=[16,16,16,
864
+(function(){function b(a,b){var c=a.next,d=2==b?a.distbits:a.lenbits,e=a.work,k=a.lens,l=2==b?a.nlen:0,m=a.codes,n;n=1==b?a.nlen:2==b?a.ndist:19;var p,q,r,w,x,y,C,B,D,X,J,E,T,aa,da,fa,ga,U,N=Array(16);x=Array(16);for(p=0;15>=p;p++)N[p]=0;for(q=0;q<n;q++)N[k[l+q]]++;w=d;for(r=15;1<=r&&0==N[r];r--);w>r&&(w=r);if(0==r)return E={op:64,bits:1,val:0},m[c++]=E,m[c++]=E,2==b?a.distbits=1:a.lenbits=1,a.next=c,0;for(d=1;d<r&&0==N[d];d++);w<d&&(w=d);for(p=y=1;15>=p;p++)if(y<<=1,y-=N[p],0>y)return-1;if(0<y&&
865
+(0==b||1!=r))return a.next=c,-1;x[1]=0;for(p=1;15>p;p++)x[p+1]=x[p]+N[p];for(q=0;q<n;q++)0!=k[l+q]&&(e[x[k[l+q]]++]=q);switch(b){case 0:aa=fa=e;ga=da=0;U=19;break;case 1:aa=h;da=-257;fa=g;ga=-257;U=256;break;default:aa=v,fa=F,ga=da=0,U=-1}q=B=0;p=d;T=c;n=w;x=0;X=-1;C=1<<w;J=C-1;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;for(;;){E={op:0,bits:p-x,val:0};e[q]<U?E.val=e[q]:e[q]>U?(E.op=fa[ga+e[q]],E.val=aa[da+e[q]]):E.op=96;y=1<<p-x;d=D=1<<n;do D-=y,m[T+(B>>>x)+D]=E;while(0!=D);for(y=1<<p-1;B&y;)y>>>=
866
+1;0!=y?(B&=y-1,B+=y):B=0;q++;if(0==--N[p]){if(p==r)break;p=k[l+e[q]]}if(p>w&&(B&J)!=X){0==x&&(x=w);T+=d;n=p-x;for(y=1<<n;n+x<r;){y-=N[n+x];if(0>=y)break;n++;y<<=1}C+=1<<n;if(1==b&&852<=C||2==b&&592<=C)return a.next=c,1;X=B&J;m[c+X]={op:n,bits:w,val:T-c}}}0!=B&&(m[T+B]={op:64,bits:p-x,val:0});a.next=c+C;2==b?a.distbits=w:a.lenbits=w;return 0}function c(a){var b,c=Array(a);for(b=0;b<a;b++)c[b]=0;return c}function a(a,b,c){return a&&b in a?a[b]:c}function d(){return 0}function e(){var a;this.total=this.check=
867
+this.dmax=this.flags=this.havedict=this.wrap=this.last=this.mode=0;this.head=null;this.wnext=this.whave=this.wsize=this.wbits=0;this.window=null;this.next=this.have=this.ndist=this.nlen=this.ncode=this.distbits=this.lenbits=this.distcode=this.lencode=this.extra=this.offset=this.length=this.bits=this.hold=0;this.lens=c(320);this.work=c(288);this.codes=Array(1444);var b={op:0,bits:0,val:0};for(a=0;1444>a;a++)this.codes[a]=b;this.was=this.back=this.sane=0}function q(a,b){a.state.check=a.checksum_function(a.state.check,
868
+[b&255,b>>>8&255],0,2)}function p(a,b){b.strm=a;b.left=a.avail_out;b.next=a.next_in;b.have=a.avail_in;b.hold=a.state.hold;b.bits=a.state.bits;return b}function k(a){var b=a.strm;b.next_in=a.next;b.avail_out=a.left;b.avail_in=a.have;b.state.hold=a.hold;b.state.bits=a.bits}function r(a){a.hold=0;a.bits=0}function n(a){if(0==a.have)return!1;a.have--;a.hold+=(a.strm.input_data.charCodeAt(a.next++)&255)<<a.bits;a.bits+=8;return!0}function w(a,b){for(;a.bits<b;)if(!n(a))return!1;return!0}function l(a,b){return a.hold&
869
+(1<<b)-1}function x(a,b){a.hold>>>=b;a.bits-=b}function C(a){a.hold>>>=a.bits&7;a.bits-=a.bits&7}function m(a){return(a>>>24&255)+(a>>>8&65280)+((a&65280)<<8)+((a&255)<<24)}var h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],g=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,203,69],v=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],F=[16,16,16,
870
16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ZLIB.inflate_copyright=" inflate 1.2.6 Copyright 1995-2012 Mark Adler ";ZLIB.inflateResetKeep=function(a){var b;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;b=a.state;a.total_in=a.total_out=b.total=0;a.msg=null;b.wrap&&(a.adler=b.wrap&1);b.mode=0;b.last=0;b.havedict=0;b.dmax=32768;b.head=null;b.hold=0;b.bits=0;b.lencode=0;b.distcode=0;b.next=0;b.sane=1;b.back=-1;return ZLIB.Z_OK};ZLIB.inflateReset=function(a,b){var c,
871
e;if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;e=a.state;"undefined"===typeof b&&(b=15);0>b?(c=0,b=-b):(c=(b>>>4)+1,48>b&&(b&=15));a.checksum_function=1==c&&"function"===typeof ZLIB.adler32?ZLIB.adler32:2==c&&"function"===typeof ZLIB.crc32?ZLIB.crc32:d;if(b&&(8>b||15<b))return ZLIB.Z_STREAM_ERROR;e.window&&e.wbits!=b&&(e.window=null);e.wrap=c;e.wbits=b;e.wsize=0;e.whave=0;e.wnext=0;return ZLIB.inflateResetKeep(a)};ZLIB.inflateInit=function(a){var b=new ZLIB.z_stream;b.state=new e;ZLIB.inflateReset(b,
872
-a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,C=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,J=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
873
-S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);r(a,e.hold);q(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
874
-29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;q(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&r(a,e.hold);q(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
875
-[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));q(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&r(a,e.hold);q(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&r(a,e.hold);q(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
872
+a);return b};ZLIB.inflatePrime=function(a,b,c){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a=a.state;if(0>b)return a.hold=0,a.bits=0,ZLIB.Z_OK;if(16<b||32<a.bits+b)return ZLIB.Z_STREAM_ERROR;a.hold+=(c&(1<<b)-1)<<a.bits;a.bits+=b;return ZLIB.Z_OK};var D=null,y=null,B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];ZLIB.inflate=function(a,c){var d,e,g,h,v,u=-1,F=-1,S;if(!a||!a.state||!a.input_data&&0!=a.avail_in)return ZLIB.Z_STREAM_ERROR;d=a.state;11==d.mode&&(d.mode=12);e={};p(a,e);g=e.have;h=e.left;
873
+S=ZLIB.Z_OK;a:for(;;)switch(d.mode){case 0:if(0==d.wrap){d.mode=12;break}if(!w(e,16))break a;if(d.wrap&2&&35615==e.hold){d.check=a.checksum_function(0,null,0,0);q(a,e.hold);r(e);d.mode=1;break}d.flags=0;null!==d.head&&(d.head.done=-1);if(!(d.wrap&1)||((l(e,8)<<8)+(e.hold>>>8))%31){a.msg="incorrect header check";d.mode=29;break}if(l(e,4)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}x(e,4);u=l(e,4)+8;if(0==d.wbits)d.wbits=u;else if(u>d.wbits){a.msg="invalid window size";d.mode=
874
+29;break}d.dmax=1<<u;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=e.hold&512?9:11;r(e);break;case 1:if(!w(e,16))break a;d.flags=e.hold;if((d.flags&255)!=ZLIB.Z_DEFLATED){a.msg="unknown compression method";d.mode=29;break}if(d.flags&57344){a.msg="unknown header flags set";d.mode=29;break}null!==d.head&&(d.head.text=e.hold>>>8&1);d.flags&512&&q(a,e.hold);r(e);d.mode=2;case 2:if(!w(e,32))break a;null!==d.head&&(d.head.time=e.hold);d.flags&512&&(v=e.hold,a.state.check=a.checksum_function(a.state.check,
875
+[v&255,v>>>8&255,v>>>16&255,v>>>24&255],0,4));r(e);d.mode=3;case 3:if(!w(e,16))break a;null!==d.head&&(d.head.xflags=e.hold&255,d.head.os=e.hold>>>8);d.flags&512&&q(a,e.hold);r(e);d.mode=4;case 4:if(d.flags&1024){if(!w(e,16))break a;d.length=e.hold;null!==d.head&&(d.head.extra_len=e.hold);d.flags&512&&q(a,e.hold);r(e);d.head.extra=""}else null!==d.head&&(d.head.extra=null);d.mode=5;case 5:if(d.flags&1024&&(v=d.length,v>e.have&&(v=e.have),v&&(null!==d.head&&null!==d.head.extra&&(u=d.head.extra_len-
876
d.length,d.head.extra+=a.input_data.substring(e.next,e.next+(u+v>d.head.extra_max?d.head.extra_max-u:v))),d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v)),e.have-=v,e.next+=v,d.length-=v),d.length))break a;d.length=0;d.mode=6;case 6:if(d.flags&2048){if(0==e.have)break a;null!==d.head&&null===d.head.name&&(d.head.name="");v=0;do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.name_max&&(d.head.name+=u,d.length++)}while(v<e.have);d.flags&
877
512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.name=null);d.length=0;d.mode=7;case 7:if(d.flags&4096){if(0==e.have)break a;v=0;null!==d.head&&null===d.head.comment&&(d.head.comment="");do{u=a.input_data.charAt(e.next+v);v++;if("\x00"===u)break;null!==d.head&&d.length<d.head.comm_max&&(d.head.comment+=u,d.length++)}while(v<e.have);d.flags&512&&(d.check=a.checksum_function(d.check,a.input_data,e.next,v));e.have-=
878
-v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}q(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=n(e.hold);q(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
879
-11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){B(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
878
+v;e.next+=v;if("\x00"!==u)break a}else null!==d.head&&(d.head.comment=null);d.mode=8;case 8:if(d.flags&512){if(!w(e,16))break a;if(e.hold!=(d.check&65535)){a.msg="header crc mismatch";d.mode=29;break}r(e)}null!==d.head&&(d.head.hcrc=d.flags>>>9&1,d.head.done=1);a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=11;break;case 9:if(!w(e,32))break a;a.adler=d.check=m(e.hold);r(e);d.mode=10;case 10:if(0==d.havedict)return k(e),ZLIB.Z_NEED_DICT;a.adler=d.check=a.checksum_function(0,null,0,0);d.mode=
879
+11;case 11:if(c==ZLIB.Z_BLOCK||c==ZLIB.Z_TREES)break a;case 12:if(d.last){C(e);d.mode=26;break}if(!w(e,3))break a;d.last=l(e,1);x(e,1);switch(l(e,2)){case 0:d.mode=13;break;case 1:v=d;u=void 0;D||(D=[{op:96,bits:7,val:0},{op:0,bits:8,val:80},{op:0,bits:8,val:16},{op:20,bits:8,val:115},{op:18,bits:7,val:31},{op:0,bits:8,val:112},{op:0,bits:8,val:48},{op:0,bits:9,val:192},{op:16,bits:7,val:10},{op:0,bits:8,val:96},{op:0,bits:8,val:32},{op:0,bits:9,val:160},{op:0,bits:8,val:0},{op:0,bits:8,val:128},
880
{op:0,bits:8,val:64},{op:0,bits:9,val:224},{op:16,bits:7,val:6},{op:0,bits:8,val:88},{op:0,bits:8,val:24},{op:0,bits:9,val:144},{op:19,bits:7,val:59},{op:0,bits:8,val:120},{op:0,bits:8,val:56},{op:0,bits:9,val:208},{op:17,bits:7,val:17},{op:0,bits:8,val:104},{op:0,bits:8,val:40},{op:0,bits:9,val:176},{op:0,bits:8,val:8},{op:0,bits:8,val:136},{op:0,bits:8,val:72},{op:0,bits:9,val:240},{op:16,bits:7,val:4},{op:0,bits:8,val:84},{op:0,bits:8,val:20},{op:21,bits:8,val:227},{op:19,bits:7,val:43},{op:0,
881
bits:8,val:116},{op:0,bits:8,val:52},{op:0,bits:9,val:200},{op:17,bits:7,val:13},{op:0,bits:8,val:100},{op:0,bits:8,val:36},{op:0,bits:9,val:168},{op:0,bits:8,val:4},{op:0,bits:8,val:132},{op:0,bits:8,val:68},{op:0,bits:9,val:232},{op:16,bits:7,val:8},{op:0,bits:8,val:92},{op:0,bits:8,val:28},{op:0,bits:9,val:152},{op:20,bits:7,val:83},{op:0,bits:8,val:124},{op:0,bits:8,val:60},{op:0,bits:9,val:216},{op:18,bits:7,val:23},{op:0,bits:8,val:108},{op:0,bits:8,val:44},{op:0,bits:9,val:184},{op:0,bits:8,
882
val:12},{op:0,bits:8,val:140},{op:0,bits:8,val:76},{op:0,bits:9,val:248},{op:16,bits:7,val:3},{op:0,bits:8,val:82},{op:0,bits:8,val:18},{op:21,bits:8,val:163},{op:19,bits:7,val:35},{op:0,bits:8,val:114},{op:0,bits:8,val:50},{op:0,bits:9,val:196},{op:17,bits:7,val:11},{op:0,bits:8,val:98},{op:0,bits:8,val:34},{op:0,bits:9,val:164},{op:0,bits:8,val:2},{op:0,bits:8,val:130},{op:0,bits:8,val:66},{op:0,bits:9,val:228},{op:16,bits:7,val:7},{op:0,bits:8,val:90},{op:0,bits:8,val:26},{op:0,bits:9,val:148},
@@ -900,44 +900,44 @@ bits:8,val:35},{op:0,bits:9,val:167},{op:0,bits:8,val:3},{op:0,bits:8,val:131},{
900
val:87},{op:0,bits:8,val:23},{op:64,bits:8,val:0},{op:19,bits:7,val:51},{op:0,bits:8,val:119},{op:0,bits:8,val:55},{op:0,bits:9,val:207},{op:17,bits:7,val:15},{op:0,bits:8,val:103},{op:0,bits:8,val:39},{op:0,bits:9,val:175},{op:0,bits:8,val:7},{op:0,bits:8,val:135},{op:0,bits:8,val:71},{op:0,bits:9,val:239},{op:16,bits:7,val:9},{op:0,bits:8,val:95},{op:0,bits:8,val:31},{op:0,bits:9,val:159},{op:20,bits:7,val:99},{op:0,bits:8,val:127},{op:0,bits:8,val:63},{op:0,bits:9,val:223},{op:18,bits:7,val:27},
901
{op:0,bits:8,val:111},{op:0,bits:8,val:47},{op:0,bits:9,val:191},{op:0,bits:8,val:15},{op:0,bits:8,val:143},{op:0,bits:8,val:79},{op:0,bits:9,val:255}]);y||(y=[{op:16,bits:5,val:1},{op:23,bits:5,val:257},{op:19,bits:5,val:17},{op:27,bits:5,val:4097},{op:17,bits:5,val:5},{op:25,bits:5,val:1025},{op:21,bits:5,val:65},{op:29,bits:5,val:16385},{op:16,bits:5,val:3},{op:24,bits:5,val:513},{op:20,bits:5,val:33},{op:28,bits:5,val:8193},{op:18,bits:5,val:9},{op:26,bits:5,val:2049},{op:22,bits:5,val:129},{op:64,
902
bits:5,val:0},{op:16,bits:5,val:2},{op:23,bits:5,val:385},{op:19,bits:5,val:25},{op:27,bits:5,val:6145},{op:17,bits:5,val:7},{op:25,bits:5,val:1537},{op:21,bits:5,val:97},{op:29,bits:5,val:24577},{op:16,bits:5,val:4},{op:24,bits:5,val:769},{op:20,bits:5,val:49},{op:28,bits:5,val:12289},{op:18,bits:5,val:13},{op:26,bits:5,val:3073},{op:22,bits:5,val:193},{op:64,bits:5,val:0}]);v.lencode=0;v.distcode=512;for(u=0;512>u;u++)v.codes[u]=D[u];for(u=0;32>u;u++)v.codes[u+512]=y[u];v.lenbits=9;v.distbits=5;
903
-d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:B(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;q(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
904
-v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[C[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[C[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
905
-case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!m(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
906
-"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=J=u=void 0,Z=void 0,L=void 0,
907
-W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,I=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,J=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,I=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(I+=(J.charCodeAt(P++)&255)<<E,E+=8,I+=(J.charCodeAt(P++)&255)<<E,
908
-E+=8),U=T[aa+(I&fa)];;){N=U.bits;I>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(I+=(J.charCodeAt(P++)&255)<<E,E+=8),Y+=I&(1<<N)-1,I>>>=N,E-=N;15>E&&(I+=(J.charCodeAt(P++)&255)<<E,E+=8,I+=(J.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(I&ga)];d:for(;;){N=U.bits;I>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(I+=(J.charCodeAt(P++)&255)<<E,E+=8,E<N&&(I+=(J.charCodeAt(P++)&255)<<E,E+=8));ha+=I&(1<<N)-1;I>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
903
+d.mode=19;if(c==ZLIB.Z_TREES){x(e,2);break a}break;case 2:d.mode=16;break;case 3:a.msg="invalid block type",d.mode=29}x(e,2);break;case 13:C(e);if(!w(e,32))break a;if((e.hold&65535)!=(e.hold>>>16&65535^65535)){a.msg="invalid stored block lengths";d.mode=29;break}d.length=e.hold&65535;r(e);d.mode=14;if(c==ZLIB.Z_TREES)break a;case 14:d.mode=15;case 15:if(v=d.length){v>e.have&&(v=e.have);v>e.left&&(v=e.left);if(0==v)break a;a.output_data+=a.input_data.substring(e.next,e.next+v);a.next_out+=v;e.have-=
904
+v;e.next+=v;e.left-=v;d.length-=v;break}d.mode=11;break;case 16:if(!w(e,14))break a;d.nlen=l(e,5)+257;x(e,5);d.ndist=l(e,5)+1;x(e,5);d.ncode=l(e,4)+4;x(e,4);if(286<d.nlen||30<d.ndist){a.msg="too many length or distance symbols";d.mode=29;break}d.have=0;d.mode=17;case 17:for(;d.have<d.ncode;){if(!w(e,3))break a;v=l(e,3);d.lens[B[d.have++]]=v;x(e,3)}for(;19>d.have;)d.lens[B[d.have++]]=0;d.next=0;d.lencode=0;d.lenbits=7;if(S=b(d,0)){a.msg="invalid code lengths set";d.mode=29;break}d.have=0;d.mode=18;
905
+case 18:for(;d.have<d.nlen+d.ndist;){for(;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(16>v.val)x(e,v.bits),d.lens[d.have++]=v.val;else{if(16==v.val){if(!w(e,v.bits+2))break a;x(e,v.bits);if(0==d.have){a.msg="invalid bit length repeat";d.mode=29;break}u=d.lens[d.have-1];v=3+l(e,2);x(e,2)}else if(17==v.val){if(!w(e,v.bits+3))break a;x(e,v.bits);u=0;v=3+l(e,3);x(e,3)}else{if(!w(e,v.bits+7))break a;x(e,v.bits);u=0;v=11+l(e,7);x(e,7)}if(d.have+v>d.nlen+d.ndist){a.msg=
906
+"invalid bit length repeat";d.mode=29;break}for(;v--;)d.lens[d.have++]=u}}if(29==d.mode)break;if(0==d.lens[256]){a.msg="invalid code -- missing end-of-block";d.mode=29;break}d.next=0;d.lencode=d.next;d.lenbits=9;if(S=b(d,1)){a.msg="invalid literal/lengths set";d.mode=29;break}d.distcode=d.next;d.distbits=6;if(S=b(d,2)){a.msg="invalid distances set";d.mode=29;break}d.mode=19;if(c==ZLIB.Z_TREES)break a;case 19:d.mode=20;case 20:if(6<=e.have&&258<=e.left){k(e);v=a;var P=F=u=void 0,Z=void 0,L=void 0,
907
+W=void 0,V=void 0,K=void 0,ba=void 0,ca=void 0,X=void 0,J=void 0,E=void 0,T=void 0,aa=void 0,da=void 0,fa=void 0,ga=void 0,U=void 0,N=void 0,Y=void 0,ha=void 0,ea=-1,U=-1,u=v.state,F=v.input_data,P=v.next_in,Z=P+v.avail_in-5,L=v.next_out,W=L-(h-v.avail_out),V=L+(v.avail_out-257),K=u.wsize,ba=u.whave,ca=u.wnext,X=u.window,J=u.hold,E=u.bits,T=u.codes,aa=u.lencode,da=u.distcode,fa=(1<<u.lenbits)-1,ga=(1<<u.distbits)-1;b:do c:for(15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,
908
+E+=8),U=T[aa+(J&fa)];;){N=U.bits;J>>>=N;E-=N;N=U.op;if(0==N)v.output_data+=String.fromCharCode(U.val),L++;else if(N&16){Y=U.val;if(N&=15)E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8),Y+=J&(1<<N)-1,J>>>=N,E-=N;15>E&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,J+=(F.charCodeAt(P++)&255)<<E,E+=8);U=T[da+(J&ga)];d:for(;;){N=U.bits;J>>>=N;E-=N;N=U.op;if(N&16){ha=U.val;N&=15;E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8,E<N&&(J+=(F.charCodeAt(P++)&255)<<E,E+=8));ha+=J&(1<<N)-1;J>>>=N;E-=N;N=L-W;if(ha>N){N=ha-N;if(N>ba&&
909
u.sane){v.msg="invalid distance too far back";u.mode=29;break b}ea=0;U=-1;ea=0==ca?ea+(K-N):ea+(ca-N);N<Y&&(Y-=N,v.output_data+=X.substring(ea,ea+N),L+=N,ea=-1,U=L-ha)}else ea=-1,U=L-ha;if(0<=ea)v.output_data+=X.substring(ea,ea+Y),L+=Y;else{N=Y;N>L-U&&(N=L-U);v.output_data+=v.output_data.substring(U,U+N);L+=N;Y-=N;U+=N;for(L+=Y;2<Y;)v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),v.output_data+=v.output_data.charAt(U++),Y-=3;Y&&(v.output_data+=v.output_data.charAt(U++),
910
-1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(I&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(I&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;I&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=I;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
911
-break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!m(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!m(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
912
-d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!m(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!m(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
913
-d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;J=-1;v>d.length&&(v=d.length)}else u=-1,J=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(J++);while(--v)}0==
914
-d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:n(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}q(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
915
-d.mode=29;break}q(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
910
+1<Y&&(v.output_data+=v.output_data.charAt(U++)))}}else if(0==(N&64)){U=T[da+(U.val+(J&(1<<N)-1))];continue d}else{v.msg="invalid distance code";u.mode=29;break b}break d}}else if(0==(N&64)){U=T[aa+(U.val+(J&(1<<N)-1))];continue c}else{N&32?u.mode=11:(v.msg="invalid literal/length code",u.mode=29);break b}break c}while(P<Z&&L<V);Y=E>>>3;P-=Y;E-=Y<<3;J&=(1<<E)-1;v.next_in=P;v.next_out=L;v.avail_in=P<Z?5+(Z-P):5-(P-Z);v.avail_out=L<V?257+(V-L):257-(L-V);u.hold=J;u.bits=E;p(a,e);11==d.mode&&(d.back=-1);
911
+break}for(d.back=0;;){v=d.codes[d.lencode+l(e,d.lenbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(v.op&&0==(v.op&240)){for(u=v;;){v=d.codes[d.lencode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;d.length=v.val;if(0==v.op){d.mode=25;break}if(v.op&32){d.back=-1;d.mode=11;break}if(v.op&64){a.msg="invalid literal/length code";d.mode=29;break}d.extra=v.op&15;d.mode=21;case 21:if(d.extra){if(!w(e,d.extra))break a;
912
+d.length+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.was=d.length;d.mode=22;case 22:for(;;){v=d.codes[d.distcode+l(e,d.distbits)];if(v.bits<=e.bits)break;if(!n(e))break a}if(0==(v.op&240)){for(u=v;;){v=d.codes[d.distcode+u.val+(l(e,u.bits+u.op)>>>u.bits)];if(u.bits+v.bits<=e.bits)break;if(!n(e))break a}x(e,u.bits);d.back+=u.bits}x(e,v.bits);d.back+=v.bits;if(v.op&64){a.msg="invalid distance code";d.mode=29;break}d.offset=v.val;d.extra=v.op&15;d.mode=23;case 23:if(d.extra){if(!w(e,d.extra))break a;
913
+d.offset+=l(e,d.extra);x(e,d.extra);d.back+=d.extra}d.mode=24;case 24:if(0==e.left)break a;v=h-e.left;if(d.offset>v){v=d.offset-v;if(v>d.whave&&d.sane){a.msg="invalid distance too far back";d.mode=29;break}v>d.wnext?(v-=d.wnext,u=d.wsize-v):u=d.wnext-v;F=-1;v>d.length&&(v=d.length)}else u=-1,F=a.next_out-d.offset,v=d.length;v>e.left&&(v=e.left);e.left-=v;d.length-=v;if(0<=u)a.output_data+=d.window.substring(u,u+v),a.next_out+=v;else{a.next_out+=v;do a.output_data+=a.output_data.charAt(F++);while(--v)}0==
914
+d.length&&(d.mode=20);break;case 25:if(0==e.left)break a;a.output_data+=String.fromCharCode(d.length);a.next_out++;e.left--;d.mode=20;break;case 26:if(d.wrap){if(!w(e,32))break a;h-=e.left;a.total_out+=h;d.total+=h;h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,a.output_data.length-h,h));h=e.left;if((d.flags?e.hold:m(e.hold))!=d.check){a.msg="incorrect data check";d.mode=29;break}r(e)}d.mode=27;case 27:if(d.wrap&&d.flags){if(!w(e,32))break a;if(e.hold!=(d.total&4294967295)){a.msg="incorrect length check";
915
+d.mode=29;break}r(e)}d.mode=28;case 28:S=ZLIB.Z_STREAM_END;break a;case 29:S=ZLIB.Z_DATA_ERROR;break a;case 30:return ZLIB.Z_MEM_ERROR;default:return ZLIB.Z_STREAM_ERROR}k(e);if(d.wsize||h!=a.avail_out&&29>d.mode&&(26>d.mode||c!=ZLIB.Z_FINISH))e=a.state,v=a.output_data.length,null===e.window&&(e.window=""),0==e.wsize&&(e.wsize=1<<e.wbits),e.window=v>=e.wsize?a.output_data.substring(v-e.wsize):e.whave+v<e.wsize?e.window+a.output_data:e.window.substring(e.whave-(e.wsize-v))+a.output_data,e.whave=e.window.length,
916
e.wnext=e.whave<e.wsize?e.whave:0;g-=a.avail_in;h-=a.avail_out;a.total_in+=g;a.total_out+=h;d.total+=h;d.wrap&&h&&(a.adler=d.check=a.checksum_function(d.check,a.output_data,0,a.output_data.length));a.data_type=d.bits+(d.last?64:0)+(11==d.mode?128:0)+(19==d.mode||14==d.mode?256:0);(0==g&&0==h||c==ZLIB.Z_FINISH)&&S==ZLIB.Z_OK&&(S=ZLIB.Z_BUF_ERROR);return S};ZLIB.inflateEnd=function(a){if(!a||!a.state)return ZLIB.Z_STREAM_ERROR;a.state.window=null;a.state=null;return ZLIB.Z_OK};ZLIB.z_stream.prototype.inflate=
917
function(b,c){var d,e;this.input_data=b;this.next_in=a(c,"next_in",0);this.avail_in=a(c,"avail_in",b.length-this.next_in);d=a(c,"flush",ZLIB.Z_SYNC_FLUSH);e=a(c,"avail_out",-1);var g="";do{this.avail_out=0<=e?e:16384;this.output_data="";this.next_out=0;this.error=ZLIB.inflate(this,d);if(0<=e)return this.output_data;g+=this.output_data;if(0<this.avail_out)break}while(this.error==ZLIB.Z_OK);return g};ZLIB.z_stream.prototype.inflateReset=function(a){return ZLIB.inflateReset(this,a)}})();
918
"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-adler32.js");
919
-(function(){function b(a,b,c,r){var p,k;p=a>>>16&65535;a&=65535;if(1==r)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>r){for(;r--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=r;){r-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
920
-255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(r){for(;16<=r;)r-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
921
-255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;r--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,r){var p,k;p=a>>>16&65535;a&=65535;if(1==r)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
922
-a|p<<16;if(null===b)return 1;if(16>r){for(;r--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=r;){r-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(r){for(;16<=r;)r-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
923
-a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;r--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,r){return"string"===typeof d?b(a,d,e,r):c(a,d,e,r)};ZLIB.adler32_combine=function(a,b,c){var r,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;r=p*c%65521;c+=(b&65535)+65521-1;r+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
924
-65521);131042<=r&&(r-=131042);65521<=r&&(r-=65521);return c|r<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
925
-(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var r;for(r=0;32>r;r++)a[r]=b(c,c[r])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
919
+(function(){function b(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b.charCodeAt(c)&255,65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
920
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&
921
+255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a,a+=b.charCodeAt(c++)&255,p+=a;for(;q--;)a+=b.charCodeAt(c++)&255,p+=a;a%=65521;p%=65521}return a|p<<16}function c(a,b,c,q){var p,k;p=a>>>16&65535;a&=65535;if(1==q)return a+=b[c],65521<=a&&(a-=65521),p+=a,65521<=p&&(p-=65521),
922
+a|p<<16;if(null===b)return 1;if(16>q){for(;q--;)a+=b[c++],p+=a;65521<=a&&(a-=65521);return a|p%65521<<16}for(;5552<=q;){q-=5552;k=347;do a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;while(--k);a%=65521;p%=65521}if(q){for(;16<=q;)q-=16,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=
923
+a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a,a+=b[c++],p+=a;for(;q--;)a+=b[c++],p+=a;a%=65521;p%=65521}return a|p<<16}ZLIB.adler32=function(a,d,e,q){return"string"===typeof d?b(a,d,e,q):c(a,d,e,q)};ZLIB.adler32_combine=function(a,b,c){var q,p;if(0>c)return 4294967295;p=c%65521;c=a&65535;q=p*c%65521;c+=(b&65535)+65521-1;q+=(a>>16&65535)+(b>>16&65535)+65521-p;65521<=c&&(c-=65521);65521<=c&&(c-=
924
+65521);131042<=q&&(q-=131042);65521<=q&&(q-=65521);return c|q<<16}})();"undefined"===typeof ZLIB&&alert("ZLIB is not defined. SRC zlib.js before zlib-crc32.js");
925
+(function(){function b(a,b){var c,p=0;for(c=0;b;)b&1&&(c^=a[p]),b>>=1,p++;return c}function c(a,c){var q;for(q=0;32>q;q++)a[q]=b(c,c[q])}var a=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,
926
3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,
927
476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,
928
3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,
929
1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,
930
-1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,r,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(r++))&255]^b>>>8,b=
931
-a[(b^c.charCodeAt(r++))&255]^b>>>8,b=a[(b^c.charCodeAt(r++))&255]^b>>>8,b=a[(b^c.charCodeAt(r++))&255]^b>>>8,b=a[(b^c.charCodeAt(r++))&255]^b>>>8,b=a[(b^c.charCodeAt(r++))&255]^b>>>8,b=a[(b^c.charCodeAt(r++))&255]^b>>>8,b=a[(b^c.charCodeAt(r++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(r++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[r++])&255]^b>>>8,b=a[(b^c[r++])&255]^b>>>8,b=a[(b^c[r++])&255]^b>>>8,b=a[(b^c[r++])&255]^b>>>8,b=a[(b^c[r++])&
932
-255]^b>>>8,b=a[(b^c[r++])&255]^b>>>8,b=a[(b^c[r++])&255]^b>>>8,b=a[(b^c[r++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[r++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,r){var p,k,q,m;if(0>=r)return a;q=Array(32);m=Array(32);m[0]=3988292384;for(p=k=1;32>p;p++)m[p]=k,k<<=1;c(q,m);c(m,q);do{c(q,m);r&1&&(a=b(q,a));r>>=1;if(0==r)break;c(m,q);r&1&&(a=b(m,a));r>>=1}while(0!=r);return a^e}})();
933
-var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,r=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,q=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
934
-b.chrome?c():setTimeout(c,500)},m=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,n,g){g||(l=w(l));var h=this;g=l.type;var p=!1,x,D,y=function(){m(h,["writestart","progress","write","writeend"])},C=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
935
-new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));h.readyState=h.DONE;y()};a.readAsDataURL(l);h.readyState=h.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);h.readyState=h.DONE;y();q(x)}},z=function(a){return function(){if(h.readyState!==h.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;h.readyState=h.INIT;n||(n="download");if(a)x=
936
-(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=n,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();q(x);h.readyState=h.DONE});else{b.chrome&&g&&"application/octet-stream"!==g&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==n&&(n+=".download");if("application/octet-stream"===g||e)D=b;r?(k+=l.size,r(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(n,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
937
-function(b){D.location.href=a.toURL();h.readyState=h.DONE;m(h,"writeend",b);q(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&C()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=h["on"+a]});b.write(l);h.abort=function(){b.abort();h.readyState=h.DONE};h.readyState=h.WRITING}),C)}),C)};a.getFile(n,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():C()}))}),C)}),C)):C()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
938
-b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;m(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
930
+1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];ZLIB.crc32=function(b,c,q,p){if("string"===typeof c){if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=
931
+a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,b=a[(b^c.charCodeAt(q++))&255]^b>>>8,p-=8;if(p){do b=a[(b^c.charCodeAt(q++))&255]^b>>>8;while(--p)}c=b^4294967295}return c}if(null==c)c=0;else{for(b^=4294967295;8<=p;)b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&
932
+255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,b=a[(b^c[q++])&255]^b>>>8,p-=8;if(p){do b=a[(b^c[q++])&255]^b>>>8;while(--p)}c=b^4294967295}return c};ZLIB.crc32_combine=function(a,e,q){var p,k,r,n;if(0>=q)return a;r=Array(32);n=Array(32);n[0]=3988292384;for(p=k=1;32>p;p++)n[p]=k,k<<=1;c(r,n);c(n,r);do{c(r,n);q&1&&(a=b(r,a));q>>=1;if(0==q)break;c(n,r);q&1&&(a=b(n,a));q>>=1}while(0!=q);return a^e}})();
933
+var saveAs=saveAs||function(b){if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var c=b.document.createElementNS("http://www.w3.org/1999/xhtml","a"),a="download"in c,d=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),e=b.webkitRequestFileSystem,q=b.requestFileSystem||e||b.mozRequestFileSystem,p=function(a){(b.setImmediate||b.setTimeout)(function(){throw a;},0)},k=0,r=function(a){var c=function(){"string"===typeof a?(b.URL||b.webkitURL||b).revokeObjectURL(a):a.remove()};
934
+b.chrome?c():setTimeout(c,500)},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"===typeof e)try{e.call(a,c||a)}catch(k){p(k)}}},w=function(a){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\ufeff",a],{type:a.type}):a},l=function(l,m,h){h||(l=w(l));var g=this;h=l.type;var p=!1,x,D,y=function(){n(g,["writestart","progress","write","writeend"])},B=function(){if(D&&d&&"undefined"!==typeof FileReader){var a=
935
+new FileReader;a.onloadend=function(){var b=a.result;D.location.href="data:attachment/file"+b.slice(b.search(/[,;]/));g.readyState=g.DONE;y()};a.readAsDataURL(l);g.readyState=g.INIT}else{if(p||!x)x=(b.URL||b.webkitURL||b).createObjectURL(l);D?D.location.href=x:void 0==b.open(x,"_blank")&&d&&(b.location.href=x);g.readyState=g.DONE;y();r(x)}},z=function(a){return function(){if(g.readyState!==g.DONE)return a.apply(this,arguments)}},O={create:!0,exclusive:!1},A;g.readyState=g.INIT;m||(m="download");if(a)x=
936
+(b.URL||b.webkitURL||b).createObjectURL(l),c.href=x,c.download=m,setTimeout(function(){var a=new MouseEvent("click");c.dispatchEvent(a);y();r(x);g.readyState=g.DONE});else{b.chrome&&h&&"application/octet-stream"!==h&&(A=l.slice||l.webkitSlice,l=A.call(l,0,l.size,"application/octet-stream"),p=!0);e&&"download"!==m&&(m+=".download");if("application/octet-stream"===h||e)D=b;q?(k+=l.size,q(b.TEMPORARY,k,z(function(a){a.root.getDirectory("saved",O,z(function(a){var b=function(){a.getFile(m,O,z(function(a){a.createWriter(z(function(b){b.onwriteend=
937
+function(b){D.location.href=a.toURL();g.readyState=g.DONE;n(g,"writeend",b);r(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&B()};["writestart","progress","write","abort"].forEach(function(a){b["on"+a]=g["on"+a]});b.write(l);g.abort=function(){b.abort();g.readyState=g.DONE};g.readyState=g.WRITING}),B)}),B)};a.getFile(m,{create:!1},z(function(a){a.remove();b()}),z(function(a){a.code===a.NOT_FOUND_ERR?b():B()}))}),B)}),B)):B()}},x=l.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(a,
938
+b,c){c||(a=w(a));return navigator.msSaveOrOpenBlob(a,b||"download")};x.abort=function(){this.readyState=this.DONE;n(this,"abort")};x.readyState=x.INIT=0;x.WRITING=1;x.DONE=2;x.error=x.onwritestart=x.onprogress=x.onwrite=x.onabort=x.onerror=x.onwriteend=null;return function(a,b,c){return new l(a,b,c)}}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);
939
"undefined"!==typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
940
-var version="0.8.8",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
940
+var version="0.9.0",urlvars={},amtstack,wsstack=null,AllWsman="AMT_8021xCredentialContext AMT_8021XProfile AMT_ActiveFilterStatistics AMT_AgentPresenceCapabilities AMT_AgentPresenceInterfacePolicy AMT_AgentPresenceService AMT_AgentPresenceWatchdog AMT_AgentPresenceWatchdogAction AMT_AlarmClockService IPS_AlarmClockOccurrence AMT_AssetTable AMT_AssetTableService AMT_AuditLog AMT_AuditPolicyRule AMT_AuthorizationService AMT_BootCapabilities AMT_BootSettingData AMT_ComplexFilterEntryBase AMT_CRL AMT_CryptographicCapabilities AMT_EACCredentialContext AMT_EndpointAccessControlService AMT_EnvironmentDetectionInterfacePolicy AMT_EnvironmentDetectionSettingData AMT_EthernetPortSettings AMT_EventLogEntry AMT_EventManagerService AMT_EventSubscriber AMT_FilterEntryBase AMT_FilterInSystemDefensePolicy AMT_GeneralSettings AMT_GeneralSystemDefenseCapabilities AMT_Hdr8021Filter AMT_HeuristicPacketFilterInterfacePolicy AMT_HeuristicPacketFilterSettings AMT_HeuristicPacketFilterStatistics AMT_InterfacePolicy AMT_IPHeadersFilter AMT_KerberosSettingData AMT_ManagementPresenceRemoteSAP AMT_MessageLog AMT_MPSUsernamePassword AMT_NetworkFilter AMT_NetworkPortDefaultSystemDefensePolicy AMT_NetworkPortSystemDefenseCapabilities AMT_NetworkPortSystemDefensePolicy AMT_PCIDevice AMT_PETCapabilities AMT_PETFilterForTarget AMT_PETFilterSetting AMT_ProvisioningCertificateHash AMT_PublicKeyCertificate AMT_PublicKeyManagementCapabilities AMT_PublicKeyManagementService AMT_PublicPrivateKeyPair AMT_RedirectionService AMT_RemoteAccessCapabilities AMT_RemoteAccessCredentialContext AMT_RemoteAccessPolicyAppliesToMPS AMT_RemoteAccessPolicyRule AMT_RemoteAccessService AMT_SetupAndConfigurationService AMT_SNMPEventSubscriber AMT_StateTransitionCondition AMT_SystemDefensePolicy AMT_SystemDefensePolicyInService AMT_SystemDefenseService AMT_SystemPowerScheme AMT_ThirdPartyDataStorageAdministrationService AMT_ThirdPartyDataStorageService AMT_TimeSynchronizationService AMT_TLSCredentialContext AMT_TLSProtocolEndpoint AMT_TLSProtocolEndpointCollection AMT_TLSSettingData AMT_TrapTargetForService AMT_UserInitiatedConnectionService AMT_WebUIService AMT_WiFiPortConfigurationService CIM_AbstractIndicationSubscription CIM_Account CIM_AccountManagementCapabilities CIM_AccountManagementService CIM_AccountOnSystem CIM_AdminDomain CIM_AlertIndication CIM_AssignedIdentity CIM_AssociatedPowerManagementService CIM_AuthenticationService CIM_AuthorizationService CIM_BIOSElement CIM_BIOSFeature CIM_BIOSFeatureBIOSElements CIM_BootConfigSetting CIM_BootService CIM_BootSettingData CIM_BootSourceSetting CIM_Capabilities CIM_Card CIM_Chassis CIM_Chip CIM_Collection CIM_Component CIM_ComputerSystem CIM_ComputerSystemPackage CIM_ConcreteComponent CIM_ConcreteDependency CIM_Controller CIM_CoolingDevice CIM_Credential CIM_CredentialContext CIM_CredentialManagementService CIM_Dependency CIM_DeviceSAPImplementation CIM_ElementCapabilities CIM_ElementConformsToProfile CIM_ElementLocation CIM_ElementSettingData CIM_ElementSoftwareIdentity CIM_ElementStatisticalData CIM_EnabledLogicalElement CIM_EnabledLogicalElementCapabilities CIM_EthernetPort CIM_Fan CIM_FilterCollection CIM_FilterCollectionSubscription CIM_HostedAccessPoint CIM_HostedDependency CIM_HostedService CIM_Identity CIM_IEEE8021xCapabilities CIM_IEEE8021xSettings CIM_Indication CIM_IndicationService CIM_InstalledSoftwareIdentity CIM_KVMRedirectionSAP CIM_LANEndpoint CIM_ListenerDestination CIM_ListenerDestinationWSManagement CIM_Location CIM_Log CIM_LogEntry CIM_LogicalDevice CIM_LogicalElement CIM_LogicalPort CIM_LogicalPortCapabilities CIM_LogManagesRecord CIM_ManagedCredential CIM_ManagedElement CIM_ManagedSystemElement CIM_MediaAccessDevice CIM_MemberOfCollection CIM_Memory CIM_MessageLog CIM_NetworkPort CIM_NetworkPortCapabilities CIM_NetworkPortConfigurationService CIM_OrderedComponent CIM_OwningCollectionElement CIM_OwningJobElement CIM_PCIController CIM_PhysicalComponent CIM_PhysicalElement CIM_PhysicalElementLocation CIM_PhysicalFrame CIM_PhysicalMemory CIM_PhysicalPackage CIM_Policy CIM_PolicyAction CIM_PolicyCondition CIM_PolicyInSystem CIM_PolicyRule CIM_PolicyRuleInSystem CIM_PolicySet CIM_PolicySetAppliesToElement CIM_PolicySetInSystem CIM_PowerManagementCapabilities CIM_PowerManagementService CIM_PowerSupply CIM_Privilege CIM_PrivilegeManagementCapabilities CIM_PrivilegeManagementService CIM_ProcessIndication CIM_Processor CIM_ProtocolEndpoint CIM_ProvidesServiceToElement CIM_Realizes CIM_RecordForLog CIM_RecordLog CIM_RedirectionService CIM_ReferencedProfile CIM_RegisteredProfile CIM_RemoteAccessAvailableToElement CIM_RemoteIdentity CIM_RemotePort CIM_RemoteServiceAccessPoint CIM_Role CIM_RoleBasedAuthorizationService CIM_RoleBasedManagementCapabilities CIM_RoleLimitedToTarget CIM_SAPAvailableForElement CIM_SecurityService CIM_Sensor CIM_Service CIM_ServiceAccessBySAP CIM_ServiceAccessPoint CIM_ServiceAffectsElement CIM_ServiceAvailableToElement CIM_ServiceSAPDependency CIM_ServiceServiceDependency CIM_SettingData CIM_SharedCredential CIM_SoftwareElement CIM_SoftwareFeature CIM_SoftwareFeatureSoftwareElements CIM_SoftwareIdentity CIM_StatisticalData CIM_StorageExtent CIM_System CIM_SystemBIOS CIM_SystemComponent CIM_SystemDevice CIM_SystemPackaging CIM_UseOfLog CIM_Watchdog CIM_WiFiEndpoint CIM_WiFiEndpointCapabilities CIM_WiFiEndpointSettings CIM_WiFiPort CIM_WiFiPortCapabilities IPS_AdminProvisioningRecord IPS_ClientProvisioningRecord IPS_HostBasedSetupService IPS_HostIPSettings IPS_HTTPProxyService IPS_HTTPProxyAccessPoint IPS_IderSessionUsingPort IPS_IPv6PortSettings IPS_KVMRedirectionSettingData IPS_KvmSessionUsingPort IPS_ManualProvisioningRecord IPS_OptInService IPS_PowerManagementService IPS_ProvisioningAuditRecord IPS_ProvisioningRecordLog IPS_RasSessionUsingPort IPS_ScreenConfigurationService IPS_ScreenSettingData IPS_SecIOService IPS_SessionUsingPort IPS_SolSessionUsingPort IPS_TLSProvisioningRecord IPS_WatchDogAction".split(" "),disconnecturl=
941
null,terminal,currentView=0,LoadingHtml="<div style=text-align:center;padding-top:20px>Loading...<div>",amtversion=0,amtversionmin=0,amtFirstPull=0,amtwirelessif=-1,desktop,desktopsettings={encflags:1,showfocus:!1,showmouse:!0,showcad:!0,limitFrameRate:!1,noMouseRotate:!1},currentMeshNode=null,webcompilerfeatures="AgentPresence Alarms AuditLog Certificates ComputerSelectorToolbar Desktop DesktopInband DesktopInbandFiles Desktop-Multi DesktopRotation Desktop-Settings DesktopType EventLog EventSubscriptions FileSaver HardwareInfo IDER IDERDebug IDERStats Inflate Look-MeshCentral Mode-MeshCentral2 NetworkSettings PowerControl PowerControl-Advanced RemoteAccess Scripting Scripting-Editor Storage SystemDefense Terminal Terminal-Enumation-All Terminal-FxEnumation-All TerminalSize VersionWarning Wireless WsmanBrowser".split(" "),
942
StatusStrs=["Disconnected","Connecting...","Setup...","Connected"],scriptstate,t,t2,rsepass=null;
943
function startup(){var b=document.getElementsByTagName("input");for(t=0;t<b.length;t++)b[t].id&&(window[b[t].id]=b[t]);urlvars=getUrlVars();for(var c in AllWsman)b=document.createElement("option"),b.text=AllWsman[c],b.id="WSB-"+AllWsman[c],Q(24).add(b);desktop=CreateAmtRedirect(CreateAmtRemoteDesktop("Desk",Q(8)));desktop.onStateChanged=onDesktopStateChange;QE("c10",!0);try{t=localStorage.getItem("desktopsettings")}catch(a){}t&&(desktopsettings=JSON.parse(t));
@@ -948,13 +948,13 @@ function documentFileSelectHandler(b){haltEvent(b);for(var c=!0,a=0;a<b.dataTran
948
(c=b.dataTransfer.files[0]),2==b.dataTransfer.files.length&&(b.dataTransfer.files[1].name.toLowerCase().endsWith(".iso")&&(a=b.dataTransfer.files[1]),b.dataTransfer.files[1].name.toLowerCase().endsWith(".img")&&(c=b.dataTransfer.files[1])),null==c&&null==a||iderStart3(c,a,1)):null!=b.dataTransfer&&1==b.dataTransfer.files.length&&(c=null,a=b.dataTransfer.files[0].name.toLowerCase(),21==currentView?UploadToStorage(b.dataTransfer.files[0],a):(null!=wsstack&&(a.endsWith(".mescript")||a.endsWith(".meblocks"))&&
949
(c=script_onScriptRead),null!=c&&(a=new FileReader,a.onload=c,a.readAsBinaryString(b.dataTransfer.files[0]))))}function connectButtonfunction(){wsstack&&0!=wsstack.socketState?disconnect():meshcentral2credCallback()}function connectButtonfunctionEx(){currentMeshNode=parent.getCurrentNode();connect(currentMeshNode._id,16992,null,null,0);Q("xconnectbutton1").value="Disconnect"}function getCurrentMeshNode(){return currentMeshNode}
950
function setConnectionState(b){QE("xconnectbutton1",b);0==b&&disconnect()}function setFrameHeight(b){}function setAuthCallback(b){meshcentral2credCallback=b}function setUrlVar(b,c){urlvars||(urlvars={});urlvars[b]=c}function cleanup(){c3.value="Start Capture";terminal.m.capture&&delete terminal.m.capture;terminal.Stop();desktop.disconnectCode=0;desktop.Stop()}
951
-function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
952
-function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
953
-function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(54).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
954
-function connect(b,c,a,d,e,r,p){go(0);fullscreenonly=!1;connectFunc=r;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(45,"");amtversion=amtversionmin=amtFirstPull=
955
-0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(55,"");
956
-QH(56,LoadingHtml);xxCertificates=null;QH(57,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(58,LoadingHtml);QH(60,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
957
-!1;QH(59,LoadingHtml);QE(49,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(54,!1),Q(54).checked=!0);QE(50,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
951
+function handleKeyUp(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(50).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyUp(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyUp(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyUp(b)}}
952
+function handleKeyDown(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(50).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeyDown(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeyDown(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeyDown(b)}}
953
+function handleKeyPress(b){if(!xxdialogMode){if(14==currentView&&3==desktop.State){if(Q(50).checked)return;if(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop)webRtcDesktop.softdesktop.m.handleKeys(b),desktop.m.sendKeepAlive();else return desktop.m.handleKeys(b)}if(13==currentView&&3==terminal.State)return terminal.m.TermHandleKeys(b)}}var connectFunc=null,connectFuncTag=null;
954
+function connect(b,c,a,d,e,q,p){go(0);fullscreenonly=!1;connectFunc=q;connectFuncTag=p;1==urlvars.kvm&&go(14);if(1==urlvars.kvmfull||1==urlvars.kvmonly)go(14),deskToggleFull(1==urlvars.kvmonly);1==urlvars.sol&&go(13);wsstack=WsmanStackCreateService(b,c,a,d,e);amtstack=AmtStackCreateService(wsstack);amtstack.onProcessChanged=onProcessChanged;for(b=2;25>b;b++)QV("go"+b,!1);QV("go8",!0);QV("go13",!1);QV("go12",!0);QV("go20",!0);QH(30,"");QH(41,"");amtversion=amtversionmin=amtFirstPull=
955
+0;amtsysstate=amtdeltatime=amtlogicalelements=HardwareInventory=void 0;amtPowerBootCapabilities=null;xxAccountFetch=999;QH(17,LoadingHtml);QH(21,LoadingHtml);amtwirelessif=-1;xxWireless=void 0;QH(22,"");QH(18,LoadingHtml);xxAccountAdminName=null;xxAccountRealmInfo={};QH(23,LoadingHtml);eventmessages=null;QH(19,"");QH(20,LoadingHtml);auditLog=null;QH(51,"");
956
+QH(52,LoadingHtml);xxCertificates=null;QH(53,LoadingHtml);QH(26,"");iderStop();xxPolicies=xxMPSUserPass=xxRemoteAccessCredentiaLinks=xxUserInitiatedCira=xxCiraServers=xxEnvironementDetection=xxRemoteAccess=null;QH(54,LoadingHtml);QH(56,LoadingHtml);xxSystemDefense=null;xxSystemDefenceLinkedPolicy={};xxUpdatingDefenseStats=!1;xxFilterStatistics=[{},{}];xxFilterStatisticsTimer=null;xxFilterStatisticsTimerActive=
957
+!1;QH(55,LoadingHtml);QE(45,!1);QE("DeskWD",!1);QE("deskkeys",!1);urlvars.kvmviewonly&&(QE(50,!1),Q(50).checked=!0);QE(46,!1);desktopScreenInfo=null;amtstack.BatchEnum("",["CIM_SoftwareIdentity","*AMT_SetupAndConfigurationService"],processSystemVersion);QV(13,!1);fupdatescript()}
958
function disconnect(){null!=desktopPollTimer&&(clearInterval(desktopPollTimer),desktopPollTimer=null);fullscreen&&deskToggleFull();iderStop();StopDefenseStatsTimer();script_Stop();breakScriptButton();dialogclose(0);amtstack&&(amtstack.onProcessChanged=null,amtstack.CancelAllQueries(999),amtstack=null);cleanup();wsstack=null;delete amtstack;onProcessChanged(0,1);go(101);Q("xconnectbutton1").value="Connect";QH(5,"Disconnected");go(100)}
959
function onProcessChanged(b,c){QS(3).width=100*b/c+"%";0==b&&refreshButtons(!0);0==b&&amtstack&&(0<amtversion&&0==(amtFirstPull&64)?(amtFirstPull|=64,PullPowerPolicy(),subscriptionsFilters=null,PullEventSubscriptions(),PullWatchdog(),scriptViewButton(script_BuildingBlocks?1:0),5<amtversion&&(PullCertificates(),PullRemoteAccess())):0==(amtFirstPull&1)?PullHardware():0==(amtFirstPull&16)?PullEventLog():0==(amtFirstPull&32)&&PullAuditLog())}
960
function checkAmtVersion(b){var c=b.split(".");b=parseInt(c[0]);var a=parseInt(c[1]),c=parseInt(c[2]),c=1E3*a+c,d=0;5>=b||12<=b?d=1:6==b&&2061<=c?d=1:7==b&&1091<=c?d=1:8==b&&1071<=c?d=1:9==b?5>a&&1041<=c?d=1:5061<=c&&(d=1):10==b&&55<=c?d=1:11==b&&(5>a&&25<=c?d=1:6027<=c&&(d=1));return 0==d}
@@ -964,29 +964,28 @@ function processSystemVersion(b,c,a,d){if(200==d||400==d){if(200==d){amtlogicale
964
function PullPowerState(){amtstack&&0==amtstack.GetPendingActions()&&amtsysstate&&amtsysstate.CIM_ServiceAvailableToElement&&amtstack.Enum("CIM_ServiceAvailableToElement",function(b,c,a,d){200==d&&(amtsysstate.CIM_ServiceAvailableToElement.responses=a,9<amtversion&&null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?
965
amtstack.Get("IPS_PowerManagementService",function(a,b,c,d){200==d&&(amtsysstate.IPS_PowerManagementService.response=c.Body,updateSystemStatus())}):updateSystemStatus())})}
966
function PullSystemStatus(b){refreshButtons(!1);amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime);var c=["CIM_ServiceAvailableToElement","*AMT_GeneralSettings","AMT_EthernetPortSettings","*AMT_RedirectionService","CIM_ElementSettingData"];5<amtversion&&c.push("IPS_IPv6PortSettings","*CIM_KVMRedirectionSAP","*IPS_OptInService","*IPS_KVMRedirectionSettingData");9<amtversion&&c.push("*IPS_ScreenConfigurationService","*IPS_PowerManagementService");amtstack.BatchEnum("",
967
-c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0+6E4*b.getTimezoneOffset()),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
967
+c,processSystemStatus,!0);1==b&&PullWireless()}function processSystemTime(b,c,a,d){errcheck(d,b)||200!=d||(b=new Date,c=new Date,b.setTime(1E3*a.Body.Ta0),amtdeltatime=b-c,updateSystemStatus())}var amtdeltatime,amtsysstate,amtlogicalelements,amtfeatures={};
968
function processSystemStatus(b,c,a,d){if(void 0==a.IPS_ScreenConfigurationService||400==a.IPS_ScreenConfigurationService.status)a.IPS_ScreenConfigurationService=null;if(void 0==a.IPS_KVMRedirectionSettingData||400==a.IPS_KVMRedirectionSettingData.status)a.IPS_KVMRedirectionSettingData=null;if(void 0==a.CIM_KVMRedirectionSAP||400==a.CIM_KVMRedirectionSAP.status)a.CIM_KVMRedirectionSAP=null;if(void 0==a.IPS_OptInService||400==a.IPS_OptInService.status)a.IPS_OptInService=null;void 0!=a.AMT_RedirectionService&&
969
200==a.AMT_RedirectionService.status&&QV("go13",!0);d=0;for(var e in a)null!=a[e]&&a[e].status>d&&(d=a[e].status);400!=d&&errcheck(d,b)||(amtsysstate=a,updateSystemStatus())}function syncClock(){xxdialogMode||setDialogMode(11,"Synchronize Clock",3,syncClockEx,"Synchronize Intel AMT clock with this computer?")}
970
-function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","Failed to set time, status = "+d):0!=a.Body.ReturnValue?messagebox("","Failed to set time, error: "+a.Body.ReturnValueStr):(b=new Date,b=Math.round((b.getTime()-6E4*b.getTimezoneOffset())/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}
971
-var DMTFPowerStates=";;Power on;Light sleep;Deep sleep;Power cycle (Soft off);Off - Hard;Hibernate (Off soft);Soft off;Power cycle (Off-hard);Main bus reset;Diagnostic interrupt (NMI);Not applicable;Off - Soft graceful;Off - Hard graceful;Master bus reset graceful;Power cycle (Off - Soft graceful);Power cycle (Off - Hard graceful);Diagnostic interrupt (INIT)".split(";");
972
-function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",r=amtsysstate.AMT_GeneralSettings.response;a="<i>Unknown</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"Power on"==a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&
973
-3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(45,a));r.PowerSource&&(a+=[", Plugged-in",", On Battery"][r.PowerSource]);d+=TableEntry("Power",addLink(a,"showPowerActionDlg()"));c=r.HostName;a=r.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>None</i>":EscapeHtml(c);d+=TableEntry("Name & Domain",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?d+=
970
+function syncClockEx(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(b,c,a,d){200!=d?messagebox("","Failed to set time, status = "+d):0!=a.Body.ReturnValue?messagebox("","Failed to set time, error: "+a.Body.ReturnValueStr):(b=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(a.Body.Ta0,b,b,function(){amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}))})}var DMTFPowerStates=";;Power on;Light sleep;Deep sleep;Power cycle (Soft off);Off - Hard;Hibernate (Off soft);Soft off;Power cycle (Off-hard);Main bus reset;Diagnostic interrupt (NMI);Not applicable;Off - Soft graceful;Off - Hard graceful;Master bus reset graceful;Power cycle (Off - Soft graceful);Power cycle (Off - Hard graceful);Diagnostic interrupt (INIT)".split(";");
971
+function updateSystemStatus(){if(amtsysstate&&!(99<currentView)){var b=0,c,a,d=TableStart(),e="",q=amtsysstate.AMT_GeneralSettings.response;a="<i>Unknown</i>";null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(a=DMTFPowerStates[amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState],9<amtversion&&"Power on"==a&&amtsysstate.IPS_PowerManagementService&&amtsysstate.IPS_PowerManagementService.response&&
972
+3==amtsysstate.IPS_PowerManagementService.response.OSPowerSavingState&&(a="Standby (Connected)"),QH(30,a),QH(41,a));q.PowerSource&&(a+=[", Plugged-in",", On Battery"][q.PowerSource]);d+=TableEntry("Power",addLink(a,"showPowerActionDlg()"));c=q.HostName;a=q.DomainName;null!=a&&0<a.length&&(c+="."+a);c=0==c.length?"<i>None</i>":EscapeHtml(c);d+=TableEntry("Name & Domain",addLinkConditional(c,"showEditNameDlg()",xxAccountAdminName));amtstack.amtauth&&amtstack.amtauth.uuidStr?d+=
973
TableEntry("System ID",amtstack.amtauth.uuidStr):HardwareInventory&&(d+=TableEntry("System ID",guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));if(amtlogicalelements){var p="",k=getItem(amtlogicalelements,"CreationClassName","AMT_SetupAndConfigurationService");2==k.ProvisioningState&&5<amtversion&&(p=" activated in Admin Control Mode (ACM)",4==k.ProvisioningMode&&(p=" activated in Client Control Mode (CCM)",b=9));d+=TableEntry("Intel® ME","v"+getItem(amtlogicalelements,
975
-"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(44,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var q=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,
976
-m=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);
977
-q&&(e+=", Redirection Port");m&&(e+=", Serial-over-LAN");p&&(e+=", IDE-Redirect");w&&(e+=", KVM");""==e&&(e=" None");d+=TableEntry("Active Features",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="Primary display",7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["Primary display","Secondary display",
974
+"InstanceID","AMT").VersionString+p)}null!=amtsysstate.CIM_ServiceAvailableToElement&&null!=amtsysstate.CIM_ServiceAvailableToElement.responses&&0<amtsysstate.CIM_ServiceAvailableToElement.responses.length&&(QV(29,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState),QV(40,2!=amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState));if(200==amtsysstate.AMT_RedirectionService.status){var r=amtfeatures[0]=1==amtsysstate.AMT_RedirectionService.response.ListenerEnabled,
975
+n=amtfeatures[1]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&2),p=amtfeatures[2]=0!=(amtsysstate.AMT_RedirectionService.response.EnabledState&1),w=amtfeatures[3]=void 0;5<amtversion&&null!=amtsysstate.CIM_KVMRedirectionSAP&&(QV("go14",!0),w=amtfeatures[3]=6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState&&2==amtsysstate.CIM_KVMRedirectionSAP.response.RequestedState||2==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState||6==amtsysstate.CIM_KVMRedirectionSAP.response.EnabledState);
976
+r&&(e+=", Redirection Port");n&&(e+=", Serial-over-LAN");p&&(e+=", IDE-Redirect");w&&(e+=", KVM");""==e&&(e=" None");d+=TableEntry("Active Features",addLinkConditional(e.substring(2),"showFeaturesDlg()",xxAccountAdminName))}null!=amtsysstate.IPS_KVMRedirectionSettingData&&amtsysstate.IPS_KVMRedirectionSettingData.response&&(p=amtsysstate.IPS_KVMRedirectionSettingData.response,e="Primary display",7<amtversion&&void 0!==p.DefaultScreen&&255>p.DefaultScreen&&(e=["Primary display","Secondary display",
977
"3rd display"][p.DefaultScreen]),e='<span title="'+format("The default remote display is {0}",e.toLowerCase())+'">'+e+"</span>",1==p.Is5900PortEnabled&&(e+=", Port 5900 enabled"),1==p.OptInPolicy&&(e+=", "+p.OptInPolicyTimeout+" "+(0<p.OptInPolicyTimeout?"seconds opt-in":"second opt-in")),e+=", "+p.SessionTimeout+" minute"+(0<p.SessionTimeout?"s":"")+" session timeout",9<amtversion&&null!=amtsysstate.IPS_ScreenConfigurationService?((p=0!=(amtsysstate.IPS_ScreenConfigurationService.response.EnabledState&
979
-1))&&(e+=", Blanking Allowed"),QV(51,p),Q(52).checked=!1):QV(51,!1),d+=TableEntry("Remote Desktop",addLinkConditional(e,"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!q||!m);QV(28,xxAccountAdminName);QV(42,!q||!w);QV(43,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="Unknown state",q=amtsysstate.IPS_OptInService.response.OptInRequired,
980
-0==q&&(e="Not Required"),1==q&&(e="Required for KVM only"),4294967295==q&&(e="Always Required"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("User Consent",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(q=
981
-e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,m=0;m<AmtSystemPowerSchemes.length;m++)AmtSystemPowerSchemes[m].SchemeGUID==q&&(d+=TableEntry("Power Policy",addLinkConditional(AmtSystemPowerSchemes[m].Description.split(":")[1],'showPowerPolicyDlg("'+q+'")',xxAccountAdminName)));amtdeltatime&&(d+=TableEntry("Date & Time",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";
978
+1))&&(e+=", Blanking Allowed"),QV(47,p),Q(48).checked=!1):QV(47,!1),d+=TableEntry("Remote Desktop",addLinkConditional(e,"showDesktopSettingsDlg()",xxAccountAdminName)));QV(27,!r||!n);QV(28,xxAccountAdminName);QV(38,!r||!w);QV(39,xxAccountAdminName);5<amtversion&&null!=amtsysstate&&null!=amtsysstate.IPS_OptInService&&void 0!=amtsysstate.IPS_OptInService.response&&(e="Unknown state",r=amtsysstate.IPS_OptInService.response.OptInRequired,
979
+0==r&&(e="Not Required"),1==r&&(e="Required for KVM only"),4294967295==r&&(e="Always Required"),1==amtsysstate.IPS_OptInService.response.CanModifyOptInPolicy&&(e=addLinkConditional(e,"showConsentDlg()",xxAccountAdminName)),d+=TableEntry("User Consent",e));if(null!=AmtSystemPowerSchemes)for(var e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)if(e[l].SettingData&&1==e[l].IsCurrent&&"http://intel.com/wbem/wscim/1/amt-schema/1/AMT_SystemPowerScheme"==e[l].SettingData.ReferenceParameters.ResourceURI)for(r=
980
+e[l].SettingData.ReferenceParameters.SelectorSet.Selector[1].Value,n=0;n<AmtSystemPowerSchemes.length;n++)AmtSystemPowerSchemes[n].SchemeGUID==r&&(d+=TableEntry("Power Policy",addLinkConditional(AmtSystemPowerSchemes[n].Description.split(":")[1],'showPowerPolicyDlg("'+r+'")',xxAccountAdminName)));amtdeltatime&&(d+=TableEntry("Date & Time",addLinkConditional((new Date((new Date).getTime()+amtdeltatime)).toLocaleString(),"syncClock()",xxAccountAdminName)));e=AddRefreshButton("PullSystemStatus()")+" ";
981
e+=AddButton("Power Actions...","showPowerActionDlg()")+" ";e+=AddButton("Save State...","saveEntireAmtState()")+" ";e+=AddButton("Run Script...","script_runScriptDlg()")+" ";d+=TableEnd(e);amtstack.amtauth&&(d+="<div style=position:absolute;top:10px;right:20px;cursor:pointer onclick=showAuthCsme()><img src=authcsme.png width=100 height=100 /></div>");QH(17,d);d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+TableEnd("<div> "+AddRefreshButton("PullSystemStatus(1)")+
983
-" Changing network settings may cause this page to becaume unavailable.");d=d+"<br><h2>General Settings</h2>"+TableStart();e="";"<i>None</i>"!=c&&(1==r.SharedFQDN&&(e=", shared with OS"),0==r.SharedFQDN&&(e=", different from OS"));d+=TableEntry("Name & Domain",addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));c="Disabled";1==r.DDNSUpdateEnabled?c="Enabled each "+r.DDNSPeriodicUpdateInterval+" minutes, TTL is "+r.DDNSTTL+" minutes":1==r.DDNSUpdateByDHCPServerEnabled&&(c="Update by DHCP server");
982
+" Changing network settings may cause this page to becaume unavailable.");d=d+"<br><h2>General Settings</h2>"+TableStart();e="";"<i>None</i>"!=c&&(1==q.SharedFQDN&&(e=", shared with OS"),0==q.SharedFQDN&&(e=", different from OS"));d+=TableEntry("Name & Domain",addLinkConditional(c+e,"showEditNameDlg(1)",xxAccountAdminName));c="Disabled";1==q.DDNSUpdateEnabled?c="Enabled each "+q.DDNSPeriodicUpdateInterval+" minutes, TTL is "+q.DDNSTTL+" minutes":1==q.DDNSUpdateByDHCPServerEnabled&&(c="Update by DHCP server");
983
d+=TableEntry("Dynamic DNS",addLinkConditional(c,"showEditDnsDlg()",xxAccountAdminName));d+=TableEnd();for(a in amtsysstate.AMT_EthernetPortSettings.responses){c=amtsysstate.AMT_EthernetPortSettings.responses[a];if(c.WLANLinkProtectionLevel||1==a)amtwirelessif=a;if(0!=a||amtwirelessif==a||"00-00-00-00-00-00"!=c.MACAddress){0==a&&b++;d+="<br><h2>"+(amtwirelessif==a?"Wireless Interface":"Wired Interface")+"</h2>";d+=TableStart();d+=TableEntry("Link state",1==c.LinkIsUp?"Link is up":"Link is down");
984
if(c.LinkPolicy){c.LinkPolicy=MakeToArray(c.LinkPolicy);e=[];for(l in c.LinkPolicy)1==c.LinkPolicy[l]&&e.push("S0/AC"),14==c.LinkPolicy[l]&&e.push("Sx/AC"),16==c.LinkPolicy[l]&&e.push("S0/DC"),224==c.LinkPolicy[l]&&e.push("Sx/DC");0==e.length&&e.push("");d+=TableEntry("Link policy",addLinkConditional(0==e.length?"Not available":"Available in: "+e.join(", "),"showLinkPolicyDlg("+a+")",xxAccountAdminName))}"00-00-00-00-00-00"!=c.MACAddress&&(d+=TableEntry("MAC address",c.MACAddress));amtwirelessif==
986
-a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("State",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("Radio State",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+", SSID: "+(s?s:"<i>None</i>")));amtwirelessif!=a&&(d+=TableEntry("Respond to ping",addLinkConditional(["Disabled","ICMP response","RMCP response","ICMP & RMCP response"][r.PingResponseEnabled+
987
-(r.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"Automatic using DHCP server":"Static IP address",1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("IPv4 state",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("IPv4 address",isIpAddress(c.IPAddress,"None"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("IPv4 gateway / Mask",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"None")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&
988
-(e+=" / "+c.SecondaryDNS),d+=TableEntry("IPv4 domain name server",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];for(var q="Disabled",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(q=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||
989
-isIpAddress(c.SecondaryDNS))?"Enabled, Automatic & manual addresses":"Enabled, Automatic addresses");d+=TableEntry("IPv6 state",addLinkConditional(q,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=", "),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("IPv6 address",addLink(ipv6addr,
985
+a&&xxWireless&&xxWireless.CIM_WiFiPortCapabilities.response&&(d+=TableEntry("State",addLinkConditional(xxWifiState[xxWireless.CIM_WiFiPort.response.EnabledState],"showWifiStateDlg()",xxAccountAdminName)),s=xxWireless.CIM_WiFiEndpoint.response.LANID,d+=TableEntry("Radio State",xxRadioState[xxWireless.CIM_WiFiEndpoint.response.EnabledState]+", SSID: "+(s?s:"<i>None</i>")));amtwirelessif!=a&&(d+=TableEntry("Respond to ping",addLinkConditional(["Disabled","ICMP response","RMCP response","ICMP & RMCP response"][q.PingResponseEnabled+
986
+(q.RmcpPingResponseEnabled<<1)],"showPingActionDlg()",xxAccountAdminName)),e=1==c.DHCPEnabled?"Automatic using DHCP server":"Static IP address",1==c.IpSyncEnabled&&(e+=", IP sync with OS"),d+=TableEntry("IPv4 state",addLinkConditional(e,"showIPSetupDlg()",xxAccountAdminName)));d+=TableEntry("IPv4 address",isIpAddress(c.IPAddress,"None"));isIpAddress(c.DefaultGateway)&&(d+=TableEntry("IPv4 gateway / Mask",c.DefaultGateway+" / "+isIpAddress(c.SubnetMask,"None")));e=c.PrimaryDNS;isIpAddress(e)&&(c.SecondaryDNS&&
987
+(e+=" / "+c.SecondaryDNS),d+=TableEntry("IPv4 domain name server",e));if(200==amtsysstate.IPS_IPv6PortSettings.status&&5<amtversion){c=amtsysstate.IPS_IPv6PortSettings.responses[a];for(var r="Disabled",x,e=amtsysstate.CIM_ElementSettingData.responses,l=0;l<e.length;l++)e[l].SettingData&&e[l].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+a&&(x=1==e[l].IsCurrent);1==x&&(r=(e=isIpAddress(c.IPv6Address)||isIpAddress(c.DefaultRouter)||isIpAddress(c.PrimaryDNS)||
988
+isIpAddress(c.SecondaryDNS))?"Enabled, Automatic & manual addresses":"Enabled, Automatic addresses");d+=TableEntry("IPv6 state",addLinkConditional(r,"showIPv6StateDlg("+a+","+x+")",xxAccountAdminName));if(1==x){if(c.CurrentAddressInfo&&0<c.CurrentAddressInfo.length){c.CurrentAddressInfo=MakeToArray(c.CurrentAddressInfo);ipv6addr="";for(l=0;l<c.CurrentAddressInfo.length;l++)0<ipv6addr.length&&(ipv6addr+=", "),ipv6addr+=c.CurrentAddressInfo[l].split(",")[0];d+=TableEntry("IPv6 address",addLink(ipv6addr,
989
"showIPv6AddrDlg("+a+',"'+c.CurrentAddressInfo+'")'))}else d+=TableEntry("IPv6 address","None");isIpAddress(c.CurrentDefaultRouter)&&(d+=TableEntry("IPv6 default router",c.CurrentDefaultRouter));isIpAddress(c.CurrentPrimaryDNS)&&(e=c.CurrentPrimaryDNS,isIpAddress(c.CurrentSecondaryDNS)&&(e+=" / "+c.CurrentSecondaryDNS),d+=TableEntry("IPv6 domain name server",e))}}d+=TableEnd()}}1!=urlvars.kvmonly&&0==fullscreenonly&&(-1!=amtwirelessif&&0==(amtFirstPull&2)&&PullWireless(),QH(21,
990
d),1==b&&0==(amtFirstPull&4)&&PullSystemDefense(),0==(amtFirstPull&8)&&(11<amtversion||11==amtversion&&5<amtversionmin)&&PullStorage());0==currentView&&go(1,1)}}function isIpAddress(b,c){return b&&null!=b&&0<b.length&&"::"!=b&&"::0"!=b?b:c}
991
function showLinkPolicyDlg(b){if(!xxdialogMode){var c=amtsysstate.AMT_EthernetPortSettings.responses[b],a;a=""+("<label><input type=checkbox id=d11p1 value=1 "+(0<=c.LinkPolicy.indexOf(1)?"checked":"")+">Available in S0/AC - Powered on & plugged in</label><br>");a+="<label><input type=checkbox id=d11p2 value=14 "+(0<=c.LinkPolicy.indexOf(14)?"checked":"")+">Available in Sx/AC - Sleeping & plugged in</label><br>";a+="<label><input type=checkbox id=d11p3 value=16 "+(0<=c.LinkPolicy.indexOf(16)?"checked":
@@ -998,7 +997,7 @@ for(var c in amtstack.amtauth.Certificates){var a=amtstack.amtauth.Certificates[
997
c+")>Download</a>";a.xCrl&&(b+="<br />CRL "+a.xCrl.length+" bytes, <a style=cursor:pointer;color:blue onclick=downloadCertCrl("+c+")>Download</a>")}setDialogMode(11,"Authentic CSME",1,null,b+"</table><div>")}}function downloadCertCrl(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.Certificates[b].xCrl),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".crl")}
998
function downloadAuthCert(b){b=parseInt(b);saveAs(data2blob(amtstack.amtauth.CertificatesDer[b]),amtstack.amtauth.Certificates[b].subject.getField("CN").value+".cer")}var IntelAmtEntireState,IntelAmtEntireStateCalls;
999
function saveEntireAmtState(){if(!xxdialogMode){var b="",c=new Date;amtsysstate&&(b="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);c29.value="amtstate"+b+".json";setDialogMode(19,"Save Entire Intel® AMT State",3,saveEntireAmtStateOk)}}
1001
-function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(66,"Fetching entire state, please wait...");setDialogMode(1,"Save Entire Intel® AMT State",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1000
+function saveEntireAmtStateOk(){IntelAmtEntireState={webappversion:version,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()};QH(62,"Fetching entire state, please wait...");setDialogMode(1,"Save Entire Intel® AMT State",0,null);IntelAmtEntireStateCalls=3;amtstack.BatchEnum(null,AllWsman,saveEntireAmtStateOk2,null,!0);amtstack.GetAuditLog(saveEntireAmtStateOk3);amtstack.GetMessageLog(saveEntireAmtStateOk4)}
1001
function saveEntireAmtStateOk2(b,c,a,d){IntelAmtEntireState.wsmanenums=a;saveEntireAmtStateDone()}function saveEntireAmtStateOk3(b,c){IntelAmtEntireState.auditlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateOk4(b,c){IntelAmtEntireState.eventlog=c;saveEntireAmtStateDone()}function saveEntireAmtStateDone(){0==--IntelAmtEntireStateCalls&&(setDialogMode(),saveAs(data2blob(JSON.stringify(IntelAmtEntireState,null," ").replace(/\n/g,"\r\n")),c29.value))}
1002
function showDesktopSettingsDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_KVMRedirectionSettingData.response,c;c="<div style=text-align:left><div style=height:26px;margin-top:4px><select id=subddisplay style=float:right;width:200px><option value=0>Primary display</option><option value=1>Secondary display</option>";9<amtversion&&(c+="<option value=2>3rd display</option>");c+='</select><div style=padding-top:4px>Default display</div></div><div style=height:26px;margin-top:4px><input id=subsessiontimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Session timeout (Minutes)</div></div>';
1003
1==b.OptInPolicy&&(c+='<div style=height:26px;margin-top:4px><input id=suboptintimeout style=float:right;width:200px maxlength=5 onkeypress="return numbersOnly(event)"><div style=padding-top:4px>Opt-in timeout (Seconds)</div></div>');c+="<div style=height:26px;margin-top:4px><select id=subdlegacy style=float:right;width:200px onchange=showDesktopSettingsDlgUpdate()><option value=0>Disabled, Recommended</option><option value=1>Enabled, Legacy KVM viewers</option></select><div style=padding-top:4px>Port 5900</div></div>";
@@ -1011,16 +1010,16 @@ function showDesktopSettingsDlgOk3(b,c,a,d){200!=d?messagebox("Error",format("Sc
1010
var processMessageLog0responses=null;
1011
function processMessageLog0(b,c,a,d){200==d&&(d&&QV("go6",!0),a&&(processMessageLog0responses=a),b="",c="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>",null!=processMessageLog0responses&&(b=1==processMessageLog0responses[0].IsFrozen?AddButton("Un-freeze Log","FreezeLog(0)"):AddButton("Freeze Log","FreezeLog(1)")),c+=TableEnd('<div style=float:right><input id=eventFilter placeholder="Filter" style=margin:4px onkeyup=eventFilter()> </div><div> '+AddRefreshButton("PullEventLog(1)")+
1012
AddButton("Clear Log","ClearLog()")+AddButton("Save...","SaveEventLog()")+b),QH(19,c+"<br>"))}function SaveEventLog(){xxdialogMode||null==eventmessages||SaveJsonFile("IntelAmtEventlog","events","Intel AMT Event Log",eventmessages)}var eventmessages=null;
1014
-function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>Source</b><td class=r1><b>Description</b>";for(a in c){d++;var r=1,p=c[a];8<=p.EventSeverity&&(r=2);16<=p.EventSeverity&&(r=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1015
-a+")><td class=r1><p><div class=icon"+r+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1016
-function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(66,"Clear event log?"),setDialogMode(1,"Event Log",3,ClearLogEx))}function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("Event Log","Unable to clear, Error: "+d):PullEventLog()})}
1013
+function processMessageLog1(b,c){eventmessages=c;var a,d=0,e;e="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:90px><b> Event</b><td class=r1 style=width:110px><b>Time</b><td class=r1 style=width:160px><b>Source</b><td class=r1><b>Description</b>";for(a in c){d++;var q=1,p=c[a];8<=p.EventSeverity&&(q=2);16<=p.EventSeverity&&(q=3);e+="<tr id=xamtevent"+a+" class=r3 onclick=showEventDetails("+
1014
+a+")><td class=r1><p><div class=icon"+q+" style=display:block;float:left;margin-left:5px;margin-right:5px></div>"+(parseInt(a)+1)+'<td class=r1 title="'+p.Time.toLocaleString()+'">'+p.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br>"+p.Time.toLocaleTimeString("en",{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+p.EntityStr.replace("(r)","®")+"<td class=r1>"+p.Desc}e+=TableEnd(0==d?" ":"");QH(20,e+"<br>");processMessageLog0()}
1015
+function FreezeLog(b){xxdialogMode||amtstack.AMT_MessageLog_FreezeLog(b,function(){amtstack.Enum("AMT_MessageLog",processMessageLog0)})}function ClearLog(b){xxdialogMode||(QH(62,"Clear event log?"),setDialogMode(1,"Event Log",3,ClearLogEx))}function ClearLogEx(){amtstack.AMT_MessageLog_ClearLog(function(b,c,a,d){200!=d?messagebox("Event Log","Unable to clear, Error: "+d):PullEventLog()})}
1016
function showEventDetails(b){if(!xxdialogMode){var c=eventmessages[b],a;a="<div style=text-align:left>"+addHtmlValue("Time",c.Time.toLocaleString());a+=addHtmlValue("Source",c.EntityStr.replace("(r)","®"));a+=addHtmlValue("Description",c.Desc);a+=MoreStart();a+=addHtmlValue("Device Address",c.DeviceAddress);a+=addHtmlValue("Entity",c.Entity);a+=addHtmlValue("Entity Instance",c.EntityInstance);var d="",e;for(e in c.EventData)0<d.length&&(d+=","),d+=c.EventData[e];a+=addHtmlValue("Data",d);a+=addHtmlValue("Offset",
1017
c.EventOffset);a+=addHtmlValue("Sensor Type",c.EventSensorType);a+=addHtmlValue("Severity",c.EventSeverity);a+=addHtmlValue("Source Type",c.EventSourceType);a+=addHtmlValue("Type",c.EventType);a+=addHtmlValue("Sensor Number",c.SensorNumber);a+=MoreEnd();a+="</div>";messagebox(format("Event #{0} Details",b+1),a)}}
1018
function eventFilter(){var b=Q("eventFilter").value.toLowerCase(),c;for(c in eventmessages)QV("xamtevent"+c,""==b||0<=eventmessages[c].Desc.toLowerCase().indexOf(b)||0<=eventmessages[c].EntityStr.toLowerCase().indexOf(b))}var subscriptionsFilters=null,subscriptionsListeners=null;
1019
function PullEventSubscriptions(){null==subscriptionsFilters&&amtstack.Enum("CIM_FilterCollection",processEventSubscriptions0);amtstack.BatchEnum(null,["CIM_ListenerDestination","CIM_FilterCollectionSubscription"],processEventSubscriptions1)}function processEventSubscriptions0(b,c,a,d){408!=d&&400!=d&&(d&&errcheck(d,b)||(subscriptionsFilters=a))}
1020
function processEventSubscriptions1(b,c,a,d){if(!(408==d||400==d||d&&errcheck(d,b))){d&&QV("go22",!0);a&&(subscriptionsListeners=a);c=0;b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Manage event subscribers.<br><br>";for(var e in subscriptionsListeners.CIM_ListenerDestination.responses)a=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[e].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),d=subscriptionsListeners.CIM_ListenerDestination.responses[e],
1021
b+='<div class=itemBar onclick="showSubscriptionDetails('+e+')"><div style=float:right></div><div style=padding-top:3px;overflow-x:hidden title="'+a+" - "+d.Destination+'"><b>'+a+"</b> - "+d.Destination+"</div><div style=padding-top:3px></div></div>",c++;0==c&&(b+="<div style=padding-left:15px><br><i>No subscriptions found.</i></div><br>");e="<div> "+AddRefreshButton("PullEventSubscriptions()");xxAccountAdminName&&(e+=AddButton("New Subscription","newSubscriptionButton()"));b+="<br><td class=r1>"+
1023
-TableEnd(e+"</div>");QH(62,b)}}var subscriptionDeliveryModes={2:"Push",3:"Push with ACK",4:"Events",5:"Pull"};
1022
+TableEnd(e+"</div>");QH(58,b)}}var subscriptionDeliveryModes={2:"Push",3:"Push with ACK",4:"Events",5:"Pull"};
1023
function showSubscriptionDetails(b){if(!xxdialogMode){var c=subscriptionsListeners.CIM_FilterCollectionSubscription.responses[b].Filter.ReferenceParameters.SelectorSet.Selector.Value.replace("(r)","®"),a=subscriptionsListeners.CIM_ListenerDestination.responses[b],d;d="<div style=text-align:left>"+addHtmlValue("Destination",a.Destination);d+=addHtmlValue("Filter",c);d+=addHtmlValue("Delivery Mode",subscriptionDeliveryModes[a.DeliveryMode]);setDialogMode(11,"Subscription "+(b+1),xxAccountAdminName?
1024
5:1,deleteSubscriptionButton,d+"</div>",b)}}
1025
function deleteSubscriptionButton(b,c){2==b&&amtstack.UnSubscribe("CIM_FilterCollectionSubscription",PullEventSubscriptions,null,1,{Filter:'<a:EndpointReference><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_FilterCollection</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+subscriptionsListeners.CIM_FilterCollectionSubscription.responses[c].Filter.ReferenceParameters.SelectorSet.Selector.Value+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference>",
@@ -1031,11 +1030,11 @@ b+="<div style=height:26px;margin-top:4px id=subxuser><input id=subuser style=fl
1030
setDialogMode(11,"Add Event Subscription",3,newSubscriptionButtonOk,b);newSubscriptionUpdate()}}function newSubscriptionUpdate(){QE("c49",0<Q("suburl").value.length&&Q("suburl").value.startsWith("http://")&&(0==Q("subauth").value||0<Q("subuser").value.length&&0<Q("subpass").value.length));QV("subxuser",1==Q("subauth").value);QV("subxpass",1==Q("subauth").value)}
1031
function newSubscriptionButtonOk(){var b=0==Q("subuser").value.length?void 0:Q("subuser").value,c=0==Q("subpass").value.length?void 0:Q("subpass").value;amtstack.Subscribe("CIM_FilterCollection",Q("subtype").value,Q("suburl").value,newSubscriptionButtonOk2,null,1,{InstanceID:Q("subfilter").value},0<Q("subargs").value.length?Q("subargs").value:null,b,c)}function newSubscriptionButtonOk2(b,c,a,d){200==d&&PullEventSubscriptions()}
1032
function PullAuditLog(b){1==b&&xxdialogMode||(amtFirstPull|=32,amtstack.Enum("AMT_AuditLog",processAuditLog0))}var auditLog=null,auditLogEnabledStates="Unknown;Other;Enabled;Disabled;Shutting Down;Not Applicable;Enabled but Offline;In Test;Deferred;Quiesce;Starting".split(";");
1034
-function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"Disabled":"Enabled",c&2&&(b+=", Locked"),c&4&&(b+=", Almost Full"),c&8&&(b+=", Full"),c&16&&(b+=", NoKey"),c="<h1>Audit Log Settings</h1>"+TableStart(),c+=TableEntry("State",b),c+=TableEntry("Storage",a[0].CurrentNumberOfRecords+" record(s), "+a[0].PercentageFree+"% free"),c+=TableEntry("Overwrite policy",2==a[0].OverwritePolicy?"Wraps when full":"Never overwrites"),c+=TableEnd(),QH(55,c),amtstack.GetAuditLog(processAuditLog1))}
1033
+function processAuditLog0(b,c,a,d){200==d&&(QV("go15",!0),c=a[0].AuditState,b=c&1?"Disabled":"Enabled",c&2&&(b+=", Locked"),c&4&&(b+=", Almost Full"),c&8&&(b+=", Full"),c&16&&(b+=", NoKey"),c="<h1>Audit Log Settings</h1>"+TableStart(),c+=TableEntry("State",b),c+=TableEntry("Storage",a[0].CurrentNumberOfRecords+" record(s), "+a[0].PercentageFree+"% free"),c+=TableEntry("Overwrite policy",2==a[0].OverwritePolicy?"Wraps when full":"Never overwrites"),c+=TableEnd(),QH(51,c),amtstack.GetAuditLog(processAuditLog1))}
1034
function processAuditLog1(b,c){auditLog=c;var a,d;d="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>"+(TableEnd('<div style=float:right><input id=auditFilter placeholder="Filter" style=margin:4px onkeyup=auditFilter()> </div><div> '+AddRefreshButton("PullAuditLog(1)")+AddButton("Save...","SaveAuditLog()")+AddButton("Clear Log","ClearAuditLog()"))+"<br>");if(0==c.length)d="No audit log events found.";else{var e=0;d+="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=80px><p><td><td><td><tr><td class=r1 style=width:110px> <b>Time</b><td class=r1 style=width:260px><b>Initiator</b><td class=r1><b>Action</b>";
1036
-for(a in c){var r=c[a],p=r.AuditApp,k=r.Initiator;e++;var q="";0<r.NetAddress.length&&(q=r.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));r.Event&&(p+=", "+r.Event);null!=r.ExStr&&(p+=", "+r.ExStr);""!=k&&""!=q&&(k+=", ");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+r.Time.toLocaleString()+'"> '+r.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+r.Time.toLocaleTimeString("en",
1037
-{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+q+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(56,d)}function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","Intel AMT Audit Log",auditLog)}
1038
-function ClearAuditLog(b){QH(66,"Clear audit log?");setDialogMode(1,"Audit Log",3,ClearAuditLogEx)}function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}
1035
+for(a in c){var q=c[a],p=q.AuditApp,k=q.Initiator;e++;var r="";0<q.NetAddress.length&&(r=q.NetAddress.replace("0000:0000:0000:0000:0000:0000:0000:0001","::1"));q.Event&&(p+=", "+q.Event);null!=q.ExStr&&(p+=", "+q.ExStr);""!=k&&""!=r&&(k+=", ");d+="<tr id=xamtaudit"+a+" class=r3 onclick=showAuditDetails("+a+')><td class=r1 title="'+q.Time.toLocaleString()+'"> '+q.Time.toLocaleDateString("en",{year:"numeric",month:"2-digit",day:"numeric"})+"<br> "+q.Time.toLocaleTimeString("en",
1036
+{hour:"2-digit",minute:"2-digit",second:"2-digit"})+"<td class=r1>"+k+r+"<td class=r1>"+p}d+=TableEnd(0==e?" ":"")+"<br>"}QH(52,d)}function auditFilter(){var b=Q("auditFilter").value.toLowerCase(),c;for(c in auditLog)QV("xamtaudit"+c,""==b||0<=JSON.stringify(auditLog[c]).toLowerCase().indexOf(b))}function SaveAuditLog(){xxdialogMode||null==auditLog||SaveJsonFile("IntelAmtAuditlog","auditevents","Intel AMT Audit Log",auditLog)}
1037
+function ClearAuditLog(b){QH(62,"Clear audit log?");setDialogMode(1,"Audit Log",3,ClearAuditLogEx)}function ClearAuditLogEx(){var b=amtstack.AMT_AuditLog_SetAuditLock(1,0,b,function(){amtstack.AMT_AuditLog_ClearLog(function(){amtstack.AMT_AuditLog_SetAuditLock(0,2,b,function(){setTimeout(PullAuditLog,1E3)})})})}function ShowAuditLogSettings(){xxdialogMode||amtstack.AMT_AuditLog_RequestStateChange(2,0,AuditLogSettingsCompleted)}
1038
function AuditLogSettingsCompleted(b,c,a,d){200==d?PullAuditLog():messagebox("Audit Log","Error: "+d)}
1039
function showAuditDetails(b){if(!xxdialogMode){var c,a=auditLog[b],d;d="<div style=text-align:left>"+addHtmlValue("Time",a.Time.toLocaleString());""!=a.Initiator&&(d+=addHtmlValue("Initiator",a.Initiator));""!=a.NetAddress&&(d+=addHtmlValue("Address",a.NetAddress));d+=addHtmlValue("Application",a.AuditApp);d+=addHtmlValue("Event",a.Event);if(null!=a.ExStr)d+=addHtmlValue("Extended Data",a.ExStr);else if(0<a.Ex.length){var e="";for(c in a.Ex)0<e.length&&(e+=","),e+=a.Ex.charCodeAt(c);""!=e&&(d+=addHtmlValue("Data Values",
1040
e));2<a.Ex.length&&ReadShort(a.Ex,0)==a.Ex.length-2&&(d+=addHtmlValue("Data String",a.Ex.substring(2)))}messagebox("Audit Event #"+(b+1)+" Details",d+"</div>")}}var xxCertificates=null,xxCertPrivateKeys=null,xxTlsSettings=null,xxTlsCurrentCert=null,xxTLSCredentialContext=null,xxCaPrivateKey=null,xxCaSubjectAttributes=null;function PullCertificates(){amtstack.BatchEnum(null,["AMT_PublicKeyCertificate","AMT_PublicPrivateKeyPair","AMT_TLSSettingData","AMT_TLSCredentialContext"],processCerts1)}
@@ -1045,7 +1044,7 @@ function parseCertName(b){var c={},a=b.split(","),d;for(d in a)b=a[d].indexOf("=
1044
function getTlsSecurityState(b){if(0==xxTlsSettings[b].Enabled)return"Disabled";var c=(1==xxTlsSettings[b].MutualAuthentication?"Mutual-auth TLS":"Server-auth TLS")+(1==xxTlsSettings[b].AcceptNonSecureConnections?" and non-TLS":"");1==xxTlsSettings[b].MutualAuthentication&&xxTlsSettings[b].TrustedCN&&(b=MakeToArray(xxTlsSettings[b].TrustedCN),0<b.length&&(c+=", "+(1<b.length?"Trusted names":"Trusted name")+": "+b.join(", ")+"."));return c}
1045
function updateCertificates(){if(null!=xxCertificates){var b="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,c=1-b,a=TableStart(),a=a+TableEntry("Remote TLS security",addLinkConditional(getTlsSecurityState(c),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEntry("Local TLS security",addLinkConditional(getTlsSecurityState(b),"showSetTlsSecurityDlg()",xxAccountAdminName)),a=a+TableEnd(),a=a+("<br>"+TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Manage Intel® AMT certificates for this computer.<br><br>");
1046
if(0==xxCertificates.length&&0==xxCertPrivateKeys.length)a+="<div style=padding-left:15px><br><i>No certificates found.</i></div><br>";else{for(var d in xxCertificates)b="",xxCertificates[d].TrustedRootCertficate&&(b=", Trusted Root"),xxCertificates[d].XPrivateKey&&(b=", Private Key"),d==xxTlsCurrentCert&&(b+=", TLS cert"),a+="<div class=itemBar onclick=showCertDetails("+d+")><div style=padding-top:3px><b>"+EscapeHtml(xxCertificates[d].XSubject.CN)+"</b><i>"+b+"</i></div></div>";for(d in xxCertPrivateKeys)xxCertPrivateKeys[d].XCert||
1048
-(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>Unassigned Private Key Pair #"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("Add Certificate...","addCertButton()")+AddButton("Issue Certificate...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(57,a)}}
1047
+(a+="<div class=itemBar onclick=showKeyPairDetails("+d+")><div style=padding-top:3px><i>Unassigned Private Key Pair #"+d+"</i></div></div>")}d=AddRefreshButton("PullCertificates()");xxAccountAdminName&&(d+=AddButton("Add Certificate...","addCertButton()")+AddButton("Issue Certificate...","issueCertButton()"));a+="<br><td class=r1>"+TableEnd(d);QH(53,a)}}
1048
function showKeyPairDetails(b){setDialogMode(11,"Key Pair #"+b,5,function(c){2==c&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertPrivateKeys[b].InstanceID},PullCertificates,0,1)},"This is a public/private certificate key pair that does not belong to any certificates. This entry should be temporary.")}var xxCertSubjectNames={CN:"Common Name",O:"Organization",OU:"Org Unit",S:"State/Province",ST:"State/Province",L:"Locality",C:"Country",SN:"Surname",GN:"Given name"};
1049
function showCertDetails(b){if(!xxdialogMode){var c=xxCertificates[b],a;a="<br>"+addHtmlValue("Certificate",c.X509Certificate.length+" bytes, <a style=cursor:pointer;color:blue onclick=downloadCert("+b+")>Download</a>");a+=addHtmlValue("Trusted root",c.TrustedRootCertficate?"Yes":"No");0==c.TrustedRootCertficate&&c.XPrivateKey&&(a+=addHtmlValue("Private key","Present"));a+='<br><div style="border-bottom:1px solid gray"><i>Certificate Subject</i></div><br>';for(var d in c.XSubject)c.XSubject[d]&&(a+=
1050
addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XSubject[d])));a+='<br><div style="border-bottom:1px solid gray"><i>Issuer Certificate</i></div><br>';for(d in c.XIssuer)c.XIssuer[d]&&(a+=addHtmlValue(xxCertSubjectNames[d]?xxCertSubjectNames[d]:d,EscapeHtml(c.XIssuer[d])));setDialogMode(11,"Certificate - "+EscapeHtml(c.XSubject.CN),5,function(a){2==a&&(xxCertificates[b].XPrivateKey&&amtstack.Delete("AMT_PublicPrivateKeyPair",{InstanceID:xxCertificates[b].XPrivateKey.InstanceID},
@@ -1061,8 +1060,8 @@ function issueCertButtonUpdate(){var b=getInputElement("certopen");QE("certopenp
1060
function issueCertButtonOk(){var b=getInputElement("certopen"),c=xxDragDropCertFiles;b&&(c=b.files);c&&1==c.length?(b=new FileReader,b.onload=issueCertButtonOk2,b.readAsBinaryString(c[0])):issueCertButtonOk3(null)}function issueCertButtonOk2(b){0==amtcert_loadP12File(b.target.result,Q("certopenpass").value,issueCertButtonOk3)&&messagebox("Issue Certificate","Unable to decrypt/decode certificate.")}
1061
function issueCertButtonOk3(b,c,a){xxCaPrivateKey=b;xxCaSubjectAttributes=c;amtstack.AMT_PublicKeyManagementService_GenerateKeyPair(0,2048,GenerateKeyPairResponse)}
1062
function GenerateKeyPairResponse(b,c,a,d){200!=d?messagebox("Issue Certificate","Failed to generate key pair. Status: "+d):0!=a.Body.ReturnValue?messagebox("Issue Certificate","Failed to generate key pair, "+a.Body.ReturnValueStr):amtstack.Enum("AMT_PublicPrivateKeyPair",GenerateKeyPairResponse2,a.Body.KeyPair.ReferenceParameters.SelectorSet.Selector.Value)}
1064
-function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("Issue Certificate","Failed to generate key pair. Status: "+d);else{b=null;for(var r in a)a[r].InstanceID==e&&(b=a[r].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"Untrusted Root Certificate"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(r in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[r].shortName]=xxCaSubjectAttributes[r].value;
1065
-r={name:"extKeyUsage"};Q("d11_cu4").checked&&(r.serverAuth=!0);Q("d11_cu5").checked&&(r.clientAuth=!0);Q("d11_cu6").checked&&(r.emailProtection=!0);Q("d11_cu7").checked&&(r.codeSigning=!0);Q("d11_cu8").checked&&(r.timeStamping=!0);r=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,r);null==r?messagebox("Issue Certificate","Unable to sign certificate."):(r=forge.pki.certificateToPem(r).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(r.substring(27,r.length-25),GenerateKeyPairResponse4))}}
1063
+function GenerateKeyPairResponse2(b,c,a,d,e){if(200!=d)messagebox("Issue Certificate","Failed to generate key pair. Status: "+d);else{b=null;for(var q in a)a[q].InstanceID==e&&(b=a[q].DERKey);a={CN:getInputElement("certcn").value,O:getInputElement("certo").value,ST:getInputElement("certst").value,C:getInputElement("certc").value};e={CN:"Untrusted Root Certificate"};if(null!=xxCaPrivateKey&&xxCaSubjectAttributes)for(q in e={},xxCaSubjectAttributes)e[xxCaSubjectAttributes[q].shortName]=xxCaSubjectAttributes[q].value;
1064
+q={name:"extKeyUsage"};Q("d11_cu4").checked&&(q.serverAuth=!0);Q("d11_cu5").checked&&(q.clientAuth=!0);Q("d11_cu6").checked&&(q.emailProtection=!0);Q("d11_cu7").checked&&(q.codeSigning=!0);Q("d11_cu8").checked&&(q.timeStamping=!0);q=amtcert_signWithCaKey(b,xxCaPrivateKey,a,e,q);null==q?messagebox("Issue Certificate","Unable to sign certificate."):(q=forge.pki.certificateToPem(q).replace(/(\r\n|\n|\r)/gm,""),amtstack.AMT_PublicKeyManagementService_AddCertificate(q.substring(27,q.length-25),GenerateKeyPairResponse4))}}
1065
function GenerateKeyPairResponse4(b,c,a,d){200!=d?messagebox("Issue Certificate","Failed to generate key pair. Status: "+d):PullCertificates()}function certificateAdded(b,c,a,d){200!=d||0!=a.Body.ReturnValue?messagebox("Add Certificate","Unable to add certificate, error "+(200!=d?d:a.Body.ReturnValueStr)):PullCertificates()}function certificateRemoved(b,c,a,d){200!=d?messagebox("Remove Certificate","Unable to remove certificate, error "+d):PullCertificates()}
1066
function getInputElement(b){var c=document.getElementsByTagName("input");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}function getSelectElement(b){var c=document.getElementsByTagName("select");for(t=0;t<c.length;t++)if(c[t].id==b)return c[t]}
1067
function showSetTlsSecurityDlg(b){if(!xxdialogMode){b="<div style=height:26px;margin-top:4px><select onchange=showSetTlsSecurityDlgUpdate() id=tlscert style=float:right;width:260px><option value=-1>No Certificate, TLS Disabled</option>";for(var c in xxCertificates)0!=xxCertificates[c].TrustedRootCertficate||!xxCertificates[c].XPrivateKey||null!=xxTlsCurrentCert&&xxTlsCurrentCert!=c||(b+="<option value="+c+">"+xxCertificates[c].XSubject.CN+"</option>");b+="</select><div style=padding-top:4px>Certificate</div></div><div style=height:26px;margin-top:4px><select id=tlsremote style=float:right;width:260px onchange=showSetTlsSecurityDlgUpdate()><option value=0>Server-auth TLS only</option><option value=1>Server-auth, non-TLS allowed</option>";
@@ -1072,9 +1071,8 @@ b);if(0==xxTLSCredentialContext.length||0==xxTlsSettings[0].Enabled||0==xxTlsSet
1071
function showSetTlsSecurityDlgOk(){var b=getSelectElement("tlscert").value,c=getSelectElement("tlsremote").value,a=Clone(xxTlsSettings);setTlsSecurityPendingCalls=0;setTlsSecurityDeleteCredentialContext=null;if(-1!=b){if(0<xxTLSCredentialContext.length){var d=Clone(xxTLSCredentialContext[0]);d.ElementInContext.ReferenceParameters.SelectorSet.Selector.Value=xxCertificates[b].InstanceID;amtstack.Put("AMT_TLSCredentialContext",d,setTlsSecurityResponse,0,1)}else amtstack.Create("AMT_TLSCredentialContext",
1072
{ElementInContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_PublicKeyCertificate")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">'+xxCertificates[b].InstanceID+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",ElementProvidingContext:"<a:Address>/wsman</a:Address><a:ReferenceParameters><w:ResourceURI>"+amtstack.CompleteName("AMT_TLSProtocolEndpointCollection")+'</w:ResourceURI><w:SelectorSet><w:Selector Name="ElementName">TLSProtocolEndpointInstances Collection</w:Selector></w:SelectorSet></a:ReferenceParameters>'},
1073
setTlsSecurityResponse);setTlsSecurityPendingCalls++}else 0<xxTLSCredentialContext.length&&(setTlsSecurityDeleteCredentialContext=Clone(xxTLSCredentialContext[0]));var d="Intel(r) AMT LMS TLS Settings"==xxTlsSettings[0].InstanceID?0:1,e=1-d;a[e].Enabled=-1!=b;a[e].MutualAuthentication=2<=c;a[e].AcceptNonSecureConnections=1==c%2;a[e].TrustedCN=splitDomains(Q("d11_rcn").value);a[d].Enabled=-1!=b;a[d].TrustedCN=splitDomains(Q("d11_rcn").value);2<=c&&(setTlsSecurityPendingCalls++,amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(function(a,
1075
-b,c,d){200!=d?messagebox("","Failed to set time, status = "+d):0!=c.Body.ReturnValue?messagebox("","Failed to set time, error: "+c.Body.ReturnValueStr):(a=new Date,a=Math.round((a.getTime()-6E4*a.getTimezoneOffset())/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,
1076
-0,1,a[1]);statusbox("TLS Settings","Applying new security settings...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}
1077
-function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","Failed to set TLS security, status = "+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1074
+b,c,d){200!=d?messagebox("","Failed to set time, status = "+d):0!=c.Body.ReturnValue?messagebox("","Failed to set time, error: "+c.Body.ReturnValueStr):(a=Math.round((new Date).getTime()/1E3),amtstack.AMT_TimeSynchronizationService_SetHighAccuracyTimeSynch(c.Body.Ta0,a,a,function(){setTlsSecurityResponse()}))}));setTlsSecurityPendingCalls+=2;amtstack.Put("AMT_TLSSettingData",a[0],setTlsSecurityResponse,0,1,a[0]);amtstack.Put("AMT_TLSSettingData",a[1],setTlsSecurityResponse,0,1,a[1]);statusbox("TLS Settings",
1075
+"Applying new security settings...")}function splitDomains(b){b=b.split(",");if(0!=b.length){for(var c in b)if(b[c]=b[c].trim(),0<=b[c].indexOf(" ")||0==b[c].length)return;if(!(4<b.length))return b}}function setTlsSecurityResponse(b,c,a,d){if(b){if(200!=d){messagebox("","Failed to set TLS security, status = "+d);return}if(a.Body.ReturnValueStr&&!methodcheck(a))return}0==--setTlsSecurityPendingCalls&&amtstack.AMT_SetupAndConfigurationService_CommitChanges(null,setTlsSecurityResponse2)}
1076
function setTlsSecurityResponse2(b,c,a,d){200!=d?messagebox("","Failed to set TLS security, status = "+d):0!=a.Body.ReturnValue?messagebox("","Failed to set TLS security, error: "+a.Body.ReturnValueStr):setTimeout(setTlsSecurityResponse3,2E3)}
1077
function setTlsSecurityResponse3(){null!=setTlsSecurityDeleteCredentialContext&&amtstack.Delete("AMT_TLSCredentialContext",setTlsSecurityDeleteCredentialContext,function(){});PullCertificates();setDialogMode();amtstack.AMT_TimeSynchronizationService_GetLowAccuracyTimeSynch(processSystemTime)}var xxWatchdog=null;
1078
function PullWatchdog(){amtstack.BatchEnum(null,["*AMT_AgentPresenceCapabilities","AMT_AgentPresenceWatchdog","AMT_AgentPresenceWatchdogAction","AMT_StateTransitionCondition","CIM_ConcreteDependency"],PullWatchdogResponse)}
@@ -1083,8 +1081,8 @@ function PullWatchdogResponse(b,c,a,d){if(200==d&&200==a.AMT_AgentPresenceCapabi
1081
"PolicyConditionName",a),b=getItem(xxWatchdog.AMT_AgentPresenceWatchdogAction.responses,"PolicyActionName",b),a.actions||(a.actions=[]),a.actions.push(b));updateWatchdog();QV("go19",!0)}}var watchdogEnabledStates="Unknown;Other;Enabled;Disabled;Shutting Down;Not Applicable;Enabled but Offline;In Test;Deferred;Quiesce;Starting".split(";"),watchdogMonitoredEntity="Unknown;Other;Operating System;Operating System Boot Process;Operating System Shutdown Process;Firmware Boot Process;BIOS Boot Process;Application;Service Processor".split(";");
1082
function updateWatchdog(){if(null!=xxWatchdog){var b;b=""+TableStart();b+=TableEntry("Maximum Watchdogs",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalAgents+" watchdogs");b+=TableEntry("Maximum Total Actions",xxWatchdog.AMT_AgentPresenceCapabilities.response.MaxTotalActions+" actions");b+=TableEnd()+"<br>";b+=TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Manage Intel® AMT agent presence watchdogs.<br><br>";if(null==xxWatchdog.AMT_AgentPresenceWatchdog.responses||
1083
0==xxWatchdog.AMT_AgentPresenceWatchdog.responses.length)b+="<div style=padding-left:15px><i>No agent presence watchdog found.</i></div><br>";else for(var c in xxWatchdog.AMT_AgentPresenceWatchdog.responses){var a=xxWatchdog.AMT_AgentPresenceWatchdog.responses[c],d=guidToStr(rstr2hex(atob(a.DeviceID)));a.MonitoredEntityDescription&&""!=a.MonitoredEntityDescription&&(d=EscapeHtml(a.MonitoredEntityDescription));b+="<div class=itemBar onclick=showWatchdogDetails("+c+')><input type=button style=float:right value="Add Action..." onclick=addWatchdogAction(event,'+
1086
-c+")>";a.transitions&&(b+='<input type=button style=float:right value="Delete Actions..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var r=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(r.OldState)+" → "+getWatchdogTransitionStr(r.NewState);r.actions&&1==r.actions[0].EventOnTransition&&(d+=" : Event to log")}""!=d&&(b+="<div style=padding:12px>"+
1087
-d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("Add Watchdog...","AddWatchdog()"));b+="<br>";QH(60,b)}}function getWatchdogTransitionStr(b){if(31==b)return"Any State";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1084
+c+")>";a.transitions&&(b+='<input type=button style=float:right value="Delete Actions..." onclick=deleteWatchdogActions(event,'+c+")>");b+="<div style=padding-top:3px><b>"+d+"</b>, "+amtstack.WatchdogCurrentStates[a.CurrentState]+"</div>";var d="",e;for(e in a.transitions){var q=a.transitions[e];""!=d&&(d+="<br>");d+=getWatchdogTransitionStr(q.OldState)+" → "+getWatchdogTransitionStr(q.NewState);q.actions&&1==q.actions[0].EventOnTransition&&(d+=" : Event to log")}""!=d&&(b+="<div style=padding:12px>"+
1085
+d+"</div>");b+="</div>"}b=b+"<br>"+TableEnd(AddRefreshButton("PullWatchdog()")+AddButton("Add Watchdog...","AddWatchdog()"));b+="<br>";QH(56,b)}}function getWatchdogTransitionStr(b){if(31==b)return"Any State";var c="",a;for(a in amtstack.WatchdogCurrentStates)0!=(b&a)&&(c+=", "+amtstack.WatchdogCurrentStates[a]);return c.substring(2)}
1086
function showWatchdogDetails(b){b=xxWatchdog.AMT_AgentPresenceWatchdog.responses[b];var c="";b.MonitoredEntityDescription&&""!=b.MonitoredEntityDescription&&(c+=addHtmlValue("Description",EscapeHtml(b.MonitoredEntityDescription)));c+=addHtmlValue("Monitored Entity",watchdogMonitoredEntity[b.MonitoredEntity]);c+=addHtmlValue("Current State",amtstack.WatchdogCurrentStates[b.CurrentState]);c+=addHtmlValue("Enabled State",watchdogEnabledStates[b.EnabledState]);c+=addHtmlValue("Startup Interval",b.StartupInterval+
1087
" second(s)");c+=addHtmlValue("Timeout Interval",b.TimeoutInterval+" second(s)");setDialogMode(11,format("Watchdog {0}",guidToStr(rstr2hex(atob(b.DeviceID)))),5,showWatchdogDetailsOk,c,b)}function showWatchdogDetailsOk(b,c){2==b&&amtstack.Delete("AMT_AgentPresenceWatchdog",{DeviceID:c.DeviceID},PullWatchdog)}
1088
function AddWatchdog(){var b;b="<div style=height:26px;margin-top:4px><input id=wgname style=float:right;width:240px maxlength=16 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Name</div></div>"+('<div style=height:26px;margin-top:4px><input id=wgguid style=float:right;width:240px maxlength=36 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px title="Generate random DeviceID">'+addLink("DeviceID","GenerateWatchdogGuid()")+"</div></div>");b+="<div style=height:26px;margin-top:4px><input id=wgstart style=float:right;width:240px maxlength=8 placeholder=3600 onkeyup=AddWatchdogUpdate()><div style=padding-top:4px>Startup (seconds)</div></div>";
@@ -1105,11 +1103,11 @@ a}b+=TableStart();c="<i>None</i>";xxSystemDefenceLinkedPolicy[0]&&(c=xxSystemDef
1103
"<div style=padding-left:15px><i>No system defense policies found.</i></div><br>";else for(c in xxSystemDefense.AMT_SystemDefensePolicy.responses)a=xxSystemDefense.AMT_SystemDefensePolicy.responses[c],d="",a.FilterCreationHandles&&(a.FilterCreationHandles=MakeToArray(a.FilterCreationHandles),d=a.FilterCreationHandles.length,d=", "+d+" filter"+(1<d?"s":"")),b+="<div class=itemBar onclick=showPolicyDetails("+c+")><div style=padding-top:3px><b>"+EscapeHtml(a.PolicyName)+"</b>"+d+"</div></div>";b+="<tr><td class=r1 style=padding-left:15px><br>Manage Intel® AMT system defense filters.<br><br>";
1104
if(0==xxSystemDefense.AMT_Hdr8021Filter.responses.length&&0==xxSystemDefense.AMT_IPHeadersFilter.responses.length)b+="<div style=padding-left:15px><i>No system defense filters found.</i></div><br>";else{for(c in xxSystemDefense.AMT_Hdr8021Filter.responses)a=xxSystemDefense.AMT_Hdr8021Filter.responses[c],(d=xxSystemDefenceFilterEthernetTypes[a.HdrProtocolID8021])||(d="All Ethernet Protocol "+a.HdrProtocolID8021),d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile],2==a.FilterProfile&&(d+=" at "+a.FilterProfileData+
1105
" packet / sec"),1==a.ActionEventOnMatch&&(d+=", Event on match"),b+="<div class=itemBar onclick=showFilterDetails(0,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>";for(c in xxSystemDefense.AMT_IPHeadersFilter.responses){a=xxSystemDefense.AMT_IPHeadersFilter.responses[c];(d=xxSystemDefenceFilterIPTypes[a.HdrIPVersion])||(d="All Ethernet Protocol "+a.HdrIPVersion);d+=", "+xxSystemDefenceFilterDesc[a.FilterProfile];2==
1108
-a.FilterProfile&&(d+=" at "+a.FilterProfileData+" packet / sec");1==a.ActionEventOnMatch&&(d+=", Event on match");var r=0;for(e in xxSystemDefenceFilters)a[e]&&r++;0<r&&(d+=", "+r+" filter"+(1<r?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("Add Filter...","AddDefenseFilter()")+
1109
-AddButton("Add Policy...","AddDefensePolicy()"));QH(59,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1106
+a.FilterProfile&&(d+=" at "+a.FilterProfileData+" packet / sec");1==a.ActionEventOnMatch&&(d+=", Event on match");var q=0;for(e in xxSystemDefenceFilters)a[e]&&q++;0<q&&(d+=", "+q+" filter"+(1<q?"s":""));b+="<div class=itemBar onclick=showFilterDetails(1,"+c+")><div style=padding-top:3px><b>"+(0==a.FilterDirection?"← ":"→ ")+EscapeHtml(a.Name)+"</b>, "+d+"</div></div>"}}b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullSystemDefense()")+AddButton("Add Filter...","AddDefenseFilter()")+
1107
+AddButton("Add Policy...","AddDefensePolicy()"));QH(55,b);null==xxFilterStatisticsTimer&&(xxFilterStatisticsTimerActive=!1,urlvars.norefresh||(UpdateDefenseStats(),xxFilterStatisticsTimer=setInterval(UpdateDefenseStats,5E3)))}}function StopDefenseStatsTimer(){null!=xxFilterStatisticsTimer&&(clearInterval(xxFilterStatisticsTimer),xxFilterStatisticsTimer=null);xxFilterStatisticsTimerActive=!1}
1108
function UpdateDefenseStats(b){if(b||1!=xxFilterStatisticsTimerActive)xxFilterStatisticsTimerActive=!0,b=b?b:0,xxSystemDefenceLinkedPolicy[b]?amtstack.AMT_SystemDefensePolicy_UpdateStatistics('<a:Address></a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters>",!1,UpdateDefenseStats2,b,0,{InstanceID:xxSystemDefenceLinkedPolicy[b].InstanceID}):
1109
(xxFilterStatistics[b]={},StopDefenseStatsTimer())}function UpdateDefenseStats2(b,c,a,d,e){200==d?amtstack.Enum("AMT_ActiveFilterStatistics",UpdateDefenseStats3,e):StopDefenseStatsTimer()}
1112
-function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var r in a)d=a[r].ReadCount,c=getItem(a[r].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1110
+function UpdateDefenseStats3(b,c,a,d,e){b=0;if(200==d){xxFilterStatistics[e]={};for(var q in a)d=a[q].ReadCount,c=getItem(a[q].Dependent.ReferenceParameters.SelectorSet.Selector[1].Value.EndpointReference.ReferenceParameters.SelectorSet.Selector,"@Name","Name").Value,xxFilterStatistics[e][c]=d,b++;updateSystemDefense()}xxFilterStatisticsTimerActive=!1;0==b&&StopDefenseStatsTimer()}
1111
function changeDefaultPolicy(b){if(!xxdialogMode){var c;c="<div style=height:26px;margin-top:4px><select id=policySelection style=float:right;width:266px><option value=-1>None";for(var a in xxSystemDefense.AMT_SystemDefensePolicy.responses)c+="<option value="+a+(xxSystemDefenceLinkedPolicy[b]&&xxSystemDefense.AMT_SystemDefensePolicy.responses[a].InstanceID==xxSystemDefenceLinkedPolicy[b].InstanceID?" selected":"")+">"+xxSystemDefense.AMT_SystemDefensePolicy.responses[a].PolicyName;setDialogMode(11,
1112
"Default System Defense Policy",3,changeDefaultPolicyOk,c+"</select><div style=padding-top:4px>Default Policy</div></div>",b)}}
1113
function changeDefaultPolicyOk(b,c){var a=Q("policySelection").value,d=xxSystemDefenceLinkedPolicy[c];d&&amtstack.Delete("AMT_NetworkPortSystemDefensePolicy",'<w:SelectorSet><w:Selector Name="Antecedent"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_EthernetPort</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">CIM_EthernetPort</w:Selector><w:Selector Name="DeviceID">Intel(r) AMT Ethernet Port '+c+
@@ -1122,12 +1120,12 @@ function AddDefenseFilter(){if(!xxdialogMode){var b;b="<div style=height:26px;ma
1120
b+="<div style=height:26px;margin-top:4px id=filterdatadiv><input id=filterdata style=float:right;width:260px maxlength=8 onkeyup=AddDefenseFilterUpdate()><div style=padding-top:4px>Packets / second</div></div>";b+="<div style=height:26px;margin-top:4px><select id=filteraction style=float:right;width:266px onchange=AddDefenseFilterUpdate()><option value=false>Do Nothing<option value=1>Event on match</select><div style=padding-top:4px>Event Log</div></div>";setDialogMode(11,"Add System Defense Filter",
1121
3,AddDefenseFilterOk,b);AddDefenseFilterUpdate()}}
1122
function AddDefenseFilterOk(){if(1>=Q("filtertype").value){var b=0==Q("filtertype").value?2048:2054,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrProtocolID8021:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value};2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_Hdr8021Filter",c,AddDefenseFilterOk2)}else{var b=2==Q("filtertype").value?
1125
-4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),r=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[r];p||(r="Hdr"+r,p=xxSystemDefenceFilters[r]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[r]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1126
-parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[r]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1123
+4:6,c={"InstanceID ":0,Name:Q("filtername").value,CreationClassName:0,SystemName:0,SystemCreationClassName:0,HdrIPVersion:b,FilterProfile:Q("filterprofile").value,FilterDirection:Q("filterdir").value,ActionEventOnMatch:Q("filteraction").value},a=Q("ipfilter").value.split(","),d;for(d in a){var e=a[d].indexOf("="),q=a[d].substring(0,e),e=a[d].substring(e+1),p=xxSystemDefenceFilters[q];p||(q="Hdr"+q,p=xxSystemDefenceFilters[q]);p&&(2==p&&4==b?(e=e.split("."),4==e.length&&(c[q]=rstr2hex(String.fromCharCode(parseInt(e[0]),
1124
+parseInt(e[1]),parseInt(e[2]),parseInt(e[3]))))):c[q]=e)}2==Q("filterprofile").value&&(c.FilterProfileData=Q("filterdata").value);amtstack.Create("AMT_IPHeadersFilter",c,AddDefenseFilterOk2)}}function AddDefenseFilterUpdate(){var b=0<Q("filtername").value.length;b&&2==Q("filterprofile").value&&(b=parseInt(Q("filterdata").value),b=0<b&&4294967295>b);QE("c49",b);QV("filterdatadiv",2==Q("filterprofile").value);QV("ipfilterdiv",2<=Q("filtertype").value)}
1125
function AddDefenseFilterOk2(b,c,a,d){200!=d?messagebox("Add System Defense Filter","Unable to add filter, error #"+d):PullSystemDefense()}
1128
-function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,r;0==b?(r="AMT_Hdr8021Filter",e="Ethernet Traffic",d=xxSystemDefense[r].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="All Ethernet Protocol "+d.HdrProtocolID8021)):(r="AMT_IPHeadersFilter",e="IP Traffic",d=xxSystemDefense[r].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="All IP Protocol "+d.HdrIPVersion));var p;p=""+addHtmlValue("Name",EscapeHtml(d.Name));p+=addHtmlValue("Type",e);p+=addHtmlValue("Matching Traffic",
1126
+function showFilterDetails(b,c){if(!xxdialogMode){var a,d,e,q;0==b?(q="AMT_Hdr8021Filter",e="Ethernet Traffic",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterEthernetTypes[d.HdrProtocolID8021])||(a="All Ethernet Protocol "+d.HdrProtocolID8021)):(q="AMT_IPHeadersFilter",e="IP Traffic",d=xxSystemDefense[q].responses[c],(a=xxSystemDefenceFilterIPTypes[d.HdrIPVersion])||(a="All IP Protocol "+d.HdrIPVersion));var p;p=""+addHtmlValue("Name",EscapeHtml(d.Name));p+=addHtmlValue("Type",e);p+=addHtmlValue("Matching Traffic",
1127
a);p+=addHtmlValue("Direction",0==d.FilterDirection?"Outbound / Transmit":"Inbound / Receive");if(1==b)for(var k in xxSystemDefenceFilters)d[k]&&(a=k,e=d[k],b=xxSystemDefenceFilters[k],2==b&&4==e.length&&(e=hex2rstr(e),e=e.charCodeAt(0)+"."+e.charCodeAt(1)+"."+e.charCodeAt(2)+"."+e.charCodeAt(3)),a.startsWith("Hdr")&&(a=a.substring(3)),p+=addHtmlValue("Filter "+a,e));p+=addHtmlValue("Event on match",1==d.ActionEventOnMatch?"Yes":"No");setDialogMode(11,"Ethernet Filter #"+d.InstanceID,5,showFilterDetailsOk,
1130
-p,[r,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("Remove Filter","Unable to remove filter, make sure it's not in use."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1128
+p,[q,d])}}function showFilterDetailsOk(b,c){2==b&&amtstack.Delete(c[0],c[1],deleteDefenseFilter)}function deleteDefenseFilter(b,c,a,d){200!=d?messagebox("Remove Filter","Unable to remove filter, make sure it's not in use."):PullSystemDefense()}var xxAddDefensePolicyFilters;
1129
function AddDefensePolicy(){if(!xxdialogMode){xxAddDefensePolicyFilters=[];var b;b='<div style=height:26px;margin-top:4px><input id=policyname title="<policy name>:<policy precedence number>" style=float:right;width:260px maxlength=16 onkeyup=AddDefensePolicyUpdate()><div style=padding-top:4px>Name</div></div><div style=height:26px;margin-top:4px><select id=policytx title="Default action to take for outbound traffic" style=float:right;width:133px><option value=0>Allow<option value=1>Drop<option value=2>Allow,Count<option value=3>Drop,Count<option value=4>Allow,Count,Event<option value=5>Drop,Count,Event</select><select id=policyrx style=float:right;width:133px title="Default action to take for inbound traffic"><option value=0>Allow<option value=1>Drop<option value=2>Allow,Count<option value=3>Drop,Count<option value=4>Allow,Count,Event<option value=5>Drop,Count,Event</select><div style=padding-top:4px>Default TX / RX</div></div>';b+=
1130
"<div id=policyFilters></div>";if(0<xxSystemDefense.AMT_Hdr8021Filter.responses.length||0<xxSystemDefense.AMT_IPHeadersFilter.responses.length){b+="<div style=height:26px;margin-top:4px><div style=float:right><select id=xfilter style=width:186px>";for(var c in xxSystemDefense.AMT_Hdr8021Filter.responses){var a=xxSystemDefense.AMT_Hdr8021Filter.responses[c];b+="<option value="+a.InstanceID+">"+a.Name}for(c in xxSystemDefense.AMT_IPHeadersFilter.responses)a=xxSystemDefense.AMT_IPHeadersFilter.responses[c],
1131
b+="<option value="+a.InstanceID+">"+a.Name;b+="</select><input id=addFilterButton type=button value=Add style=width:80px onclick=addFilterButton()></div><div style=padding-top:4px>Add Filter</div></div>"}setDialogMode(11,"Add System Defense Policy",3,AddDefensePolicyOk,b);AddDefensePolicyUpdate()}}function addFilterButton(){0<=xxAddDefensePolicyFilters.indexOf(Q("xfilter").value)||(xxAddDefensePolicyFilters.push(Q("xfilter").value),AddDefensePolicyUpdate())}
@@ -1145,17 +1143,17 @@ c+")><div style=float:right>"+EscapeHtml(d.SSID)+", "+xxWifiAuthenticationMethod
1143
QH(22,e+"<br>")}}}function showWifiStateDlg(){if(!xxdialogMode){var b="",c;for(c in xxWifiState)b+="<label><input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxWireless.CIM_WiFiPort.response.EnabledState==c?"checked":"")+">"+xxWifiState[c]+"</label><br>";setDialogMode(11,"Wireless State",3,wifiStateDlg,b)}}
1144
function wifiStateDlg(){amtstack.CIM_WiFiPort_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,function(){amtstack.Get("CIM_WiFiPort",function(b,c,a,d){200==d&&(xxWireless.CIM_WiFiPort.response=a.Body,showWirelessInfo())})})}
1145
function showWifiDetails(b){if(!xxdialogMode){b=xxWireless.CIM_WiFiEndpointSettings.responses[b];var c;c="<div style=text-align:left>"+addHtmlValue("Profile Name",EscapeHtml(b.ElementName));c+=addHtmlValue("SSID",b.SSID);c+=addHtmlValue("Authentication",xxWifiAuthenticationMethod[b.AuthenticationMethod]);c+=addHtmlValue("Encryption",xxWifiEncryptionMethod[b.EncryptionMethod]);c+=addHtmlValue("Priority",b.Priority);messagebox("Wireless Profile",c+"</div>")}}
1148
-function wifiRemoveButton(b){xxdialogMode||(QH(66,format('Remove wireless profile "{0}"?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"Wireless Profile",3,function(){removeWifiButtonEx(b)}))}function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}
1146
+function wifiRemoveButton(b){xxdialogMode||(QH(62,format('Remove wireless profile "{0}"?',xxWireless.CIM_WiFiEndpointSettings.responses[b].ElementName)),setDialogMode(1,"Wireless Profile",3,function(){removeWifiButtonEx(b)}))}function removeWifiButtonEx(b){amtstack.Delete("CIM_WiFiEndpointSettings",{InstanceID:xxWireless.CIM_WiFiEndpointSettings.responses[b].InstanceID},removeWifiEntryResponse,0,1)}
1147
function removeWifiEntryResponse(b,c,a,d,e){methodcheck(a)||amtstack.Enum("CIM_WiFiEndpointSettings",function(a,b,c,d){200==d&&(xxWireless.CIM_WiFiEndpointSettings.responses=c,showWirelessInfo())})}
1148
function showWifiNewProfile(){if(!xxdialogMode){var b="";for(i=1;256>i;i++){var c=1;for(j in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[j].Priority==i&&(c=0);c&&(b+="<option value="+i+">"+i)}QH("c24",b);c25.value=6;c26.value=4;c22.value=c23.value=c27.value=c28.value="";setDialogMode(12,"Add Wireless Profile",3,function(){addWifiProfile()});updateWifiDialog()}}
1149
function addWifiProfile(){amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings({__parameterType:"reference",__resourceUri:amtstack.CompleteName("CIM_WiFiEndpoint"),Name:"WiFi Endpoint 0"},{__parameterType:"instance",__namespace:amtstack.CompleteName("CIM_WiFiEndpointSettings"),ElementName:c22.value,InstanceID:"Intel(r) AMT:WiFi Endpoint Settings "+c22.value,AuthenticationMethod:c25.value,EncryptionMethod:c26.value,SSID:c23.value,Priority:c24.value,
1150
PSKPassPhrase:c27.value},null,null,null,removeWifiEntryResponse)}
1153
-function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(72,4>c);QV(71,3<c);QV(70,3<c);QV(73,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1151
+function updateWifiDialog(){var b=!0,c=c25.value,a=c26.value;QV(68,4>c);QV(67,3<c);QV(66,3<c);QV(69,4>c);4>c&&(3==a||4==a)&&(c26.value=2);3<c&&(2==a||5==a)&&(c26.value=3);for(var d in xxWireless.CIM_WiFiEndpointSettings.responses)xxWireless.CIM_WiFiEndpointSettings.responses[d].ElementName==c22.value&&(b=!1);QE("c49",1==b&&0<c22.value.length&&0<c23.value.length&&7<c27.value.length&&c27.value==
1152
c28.value)}function PullHardware(){amtstack.BatchEnum("","*CIM_ComputerSystemPackage CIM_SystemPackaging *CIM_Chassis CIM_Chip *CIM_Card *CIM_BIOSElement CIM_Processor CIM_PhysicalMemory CIM_MediaAccessDevice CIM_PhysicalPackage".split(" "),processHardware);amtFirstPull|=1}
1153
var DMTFCPUStatus="Unknown;Enabled;Disabled by User;Disabled By BIOS (POST Error);Idle;Other".split(";"),DMTFMemType="Unknown;Other;DRAM;Synchronous DRAM;Cache DRAM;EDO;EDRAM;VRAM;SRAM;RAM;ROM;Flash;EEPROM;FEPROM;EPROM;CDRAM;3DRAM;SDRAM;SGRAM;RDRAM;DDR;DDR-2;BRAM;FB-DIMM;DDR3;FBD2;DDR4;LPDDR;LPDDR2;LPDDR3;LPDDR4".split(";"),DMTFMemFormFactor=";Other;Unknown;SIMM;SIP;Chip;DIP;ZIP;Proprietary Card;DIMM;TSOP;Row of chips;RIMM;SODIMM;SRIMM;FB-DIM".split(";"),DMTFProcFamilly={191:"Intel® Core™ 2 Duo Processor",
1154
192:"Intel® Core™ 2 Solo processor",193:"Intel® Core™ 2 Extreme processor",194:"Intel® Core™ 2 Quad processor",195:"Intel® Core™ 2 Extreme mobile processor",196:"Intel® Core™ 2 Duo mobile processor",197:"Intel® Core™ 2 Solo mobile processor",198:"Intel® Core™ i7 processor",199:"Dual-Core Intel® Celeron® processor"},HardwareInventory;
1157
-function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("Save...","SaveHardwareLog()")+" Hardware information is gathered at system boot time.");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var r=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>Platform</h2>"+FullTable({"Computer model":c.Model,Manufacturer:c.Manufacturer,
1158
-Version:c.Version,"Serial number":c.SerialNumber,"System ID":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>Baseboard</h2>";b+=FullTable({Manufacturer:d.Manufacturer,"Product name":d.Model,Version:d.Version,"Serial number":d.SerialNumber,"Asset tag":d.Tag,"Replaceable?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({Vendor:a.CIM_BIOSElement.response.Manufacturer,Version:r,"Release date":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",
1155
+function processHardware(b,c,a,d){if(200==d){var e;b="<table class=log1 cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px>";HardwareInventory=a;QV("go2",!0);b+=TableEnd("<div> "+AddRefreshButton("PullHardware(1)")+AddButton("Save...","SaveHardwareLog()")+" Hardware information is gathered at system boot time.");c=a.CIM_Chassis.response;d=a.CIM_Card.response;var q=a.CIM_BIOSElement.response.SoftwareElementID;b=b+"<br><h2>Platform</h2>"+FullTable({"Computer model":c.Model,Manufacturer:c.Manufacturer,
1156
+Version:c.Version,"Serial number":c.SerialNumber,"System ID":guidToStr(a.CIM_SystemPackaging.responses[0].PlatformGUID).toLowerCase()},"");b+="<br><h2>Baseboard</h2>";b+=FullTable({Manufacturer:d.Manufacturer,"Product name":d.Model,Version:d.Version,"Serial number":d.SerialNumber,"Asset tag":d.Tag,"Replaceable?":1==d.CanBeFRUed?"Yes":"No"},"");b+="<br><h2>BIOS</h2>";b+=FullTable({Vendor:a.CIM_BIOSElement.response.Manufacturer,Version:q,"Release date":(new Date(a.CIM_BIOSElement.response.ReleaseDate.Datetime)).toLocaleDateString("en",
1157
{timeZone:"UTC"})},"");b+="<br>";for(e in a.CIM_Processor.responses)c=a.CIM_Processor.responses[e],d=a.CIM_Chip.responses[e],b+="<h2>Processor "+(parseInt(e)+1)+"</h2>",b+=FullTable({Manufacturer:trademarks(d.Manufacturer),Family:DMTFProcFamilly[c.Family],Version:trademarks(d.Version),"Maximum socket speed":c.MaxClockSpeed+" MHz",Status:DMTFCPUStatus[c.CPUStatus]},"");b+="<br>";for(e in a.CIM_PhysicalMemory.responses)c=a.CIM_PhysicalMemory.responses[e],b+="<h2>Memory Module "+(+e+1)+"</h2>",b+=FullTable({"Bank Label":c.BankLabel,
1158
Manufacturer:c.Manufacturer,"Serial Number":c.SerialNumber,Size:parseInt(c.Capacity/1048576)+" MB","Form factor":DMTFMemFormFactor[c.FormFactor],Type:DMTFMemType[c.MemoryType],"Asset tag":c.Tag,"Part number":c.PartNumber},"");b+="<br>";for(e in a.CIM_MediaAccessDevice.responses)c=a.CIM_MediaAccessDevice.responses[e],d=a.CIM_PhysicalPackage.responses[+e+1],b+="<h2>Storage Media "+(parseInt(e)+1)+"</h2>",b+=FullTable({Model:d.Model,"Serial number":""==d.SerialNumber?"Unknown":d.SerialNumber,Size:parseInt(Math.round(1E3*
1159
c.MaxMediaSize/1048576))+" MB"},"");b+="<br>";QH(18,b);updateSystemStatus()}}function SaveHardwareLog(){!xxdialogMode&&HardwareInventory&&SaveJsonFile("IntelAmtHardware","hardware","Intel AMT Hardware Information",HardwareInventory)}var AmtSystemPowerSchemes=null;function PullPowerPolicy(){amtstack.Enum("AMT_SystemPowerScheme",powerPolicyResponse)}function powerPolicyResponse(b,c,a,d){AmtSystemPowerSchemes=a;updateSystemStatus()}
@@ -1164,24 +1162,24 @@ function showPowerPolicyDlgOk(){for(var b=null,c=0,a=document.getElementsByTagNa
1162
function PullUserInfo(){xxAccountFetch=1;delete xxAccountAdminName;xxAccountRealmInfo={};amtstack.AMT_AuthorizationService_GetAdminAclEntry(getAdminAclEntryResponse);amtstack.AMT_AuthorizationService_EnumerateUserAclEntries(1,enumerateUserAclEntriesResponse)}function getAdminAclEntryResponse(b,c,a,d){200==d&&(xxAccountRealmInfo[-1]={AccessPermission:999,DigestUsername:a.Body.Username,Realms:null},xxAccountAdminName=a.Body.Username,updateAccounts())}
1163
function enumerateUserAclEntriesResponse(b,c,a,d){if(200==d){methodcheck(a);QV("go11",!0);xxAccountFetch=a.Body.Handles.length;for(var e in a.Body.Handles)b=a.Body.Handles[e],amtstack.AMT_AuthorizationService_GetAclEnabledState(b,getAclEnabledStateResponse,b),amtstack.AMT_AuthorizationService_GetUserAclEntryEx(b,getUserAclEntryExResponse,b);updateAccounts()}}
1164
function getUserAclEntryExResponse(b,c,a,d,e){xxAccountFetch--;200==d&&(a.Body.Handle=e,a.Body.Realms?Array.isArray(a.Body.Realms)||(a.Body.Realms=[a.Body.Realms]):a.Body.Realms=[],xxAccountRealmInfo[e]=a.Body,updateAccounts())}function getAclEnabledStateResponse(b,c,a,d,e){200==d&&(xxAccountEnabledInfo[e]=a.Body,updateAccounts())}function setAclEnabledStateResponse(b,c,a,d,e){errcheck(d,b)||(methodcheck(a),amtstack.AMT_AuthorizationService_GetAclEnabledState(e,getAclEnabledStateResponse,e))}
1167
-function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>Manage the Intel® AMT user accounts for this computer.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,r=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(r=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=a.AccessPermission){2==
1168
-r&&(p+="Disabled, ");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a.Realms[c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="Auditor, ");p=0<=a.Realms.indexOf(3)?p+"Administrator":1==k?p+"1 realm":p+(k+" realms")}else p+="Administrator",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<r&&xxAccountAdminName&&(b+=" "+AddButton2(1==r?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+r+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("Edit...",
1165
+function updateAccounts(){if(!(0<xxAccountFetch)){var b=TableStart2(),b=b+"<tr><td class=r1 style=padding-left:15px><br>Manage the Intel® AMT user accounts for this computer.<br><br>",c;for(c in xxAccountRealmInfo){var a=xxAccountRealmInfo[c],d,e=!1,q=0;a.DigestUsername?(d=a.DigestUsername,e="$"==d[0]&&"$"==d[1]):d=GetSidString(atob(a.KerberosUserSid));xxAccountEnabledInfo[c]&&"$$OsAdmin"!=d&&(q=1==xxAccountEnabledInfo[c].Enabled?1:2);if(showHiddenAccounts||!e){var p="";if(999!=a.AccessPermission){2==
1166
+q&&(p+="Disabled, ");var k=0;for(c in a.Realms)""!=amtstack.RealmNames[a.Realms[c]]&&k++;0<=a.Realms.indexOf(20)&&(p+="Auditor, ");p=0<=a.Realms.indexOf(3)?p+"Administrator":1==k?p+"1 realm":p+(k+" realms")}else p+="Administrator",a.Handle=-1;b+="<div class=itemBar onclick=showUserDetails("+a.Handle+")><div style=float:right>";0<q&&xxAccountAdminName&&(b+=" "+AddButton2(1==q?"Disable":"Enable","changeAccountStateButton(event,"+a.Handle+","+q+")"));!e&&xxAccountAdminName&&(b+=" "+AddButton2("Edit...",
1167
"changeAccountButton(event,"+a.Handle+")"));b+='</div><div style=padding-top:3px;width:330px;float:left;overflow-x:hidden title="'+d+'"><b>'+d+"</b></div><div style=padding-top:3px>"+p+"</div></div>"}}c='<div style=float:right;margin-right:8px><a title="Toggle hidden accounts" style=color:gray;cursor:pointer onclick=toggleAccountButton()>'+(showHiddenAccounts?"▲":"▼")+"</a></div><div> "+AddRefreshButton("xxAccountFetch=999;PullUserInfo()");xxAccountAdminName&&(c+=AddButton("New Account",
1168
"newAccountButton()"));b+="<br><td class=r1>"+TableEnd(c+"</div>");QH(23,b)}}function toggleAccountButton(){showHiddenAccounts=!showHiddenAccounts;updateAccounts()}function removeUserAclEntryResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}function changeAccountStateButton(b,c,a){haltEvent(b);xxdialogMode||amtstack.AMT_AuthorizationService_SetAclEnabledState(c,1==a?!1:!0,setAclEnabledStateResponse,c)}
1169
function changeAccountButton(b,c){haltEvent(b);xxdialogMode||(updateRealms(xxAccountRealmInfo[c].Realms),d2username.value=xxAccountRealmInfo[c].DigestUsername?xxAccountRealmInfo[c].DigestUsername:GetSidString(atob(xxAccountRealmInfo[c].KerberosUserSid)),d2password1.value=d2password2.value="",d2permission.value=xxAccountRealmInfo[c].AccessPermission,setDialogMode(2,"Edit Account",-1==c?3:7,function(a){changeAccountButtonEx(c,a)}),updateAccountDialog())}
1170
function newAccountButton(){xxdialogMode||(updateRealms([]),d2username.value=d2password1.value=d2password2.value="",d2permission.value=2,setDialogMode(2,"New Account",3,function(){changeAccountButtonEx(null,1)}),updateAccountDialog())}
1173
-function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,r=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||r!=d2password2.value){messagebox("Account Error","Invalid Parameters");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+r)):(d=null,p=btoa(p));if(-1!=b)for(var q in amtstack.RealmNames)(amtstack.RealmNames[q]||3==q)&&Q("rx"+q).checked&&a.push(q);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,
1171
+function changeAccountButtonEx(b,c){if(1==c){var a=[],d=d2username.value,e=d2permission.value,q=d2password1.value,p=GetSidByteArray(Q("d2username").value),k=null;if(0==d.length||q!=d2password2.value){messagebox("Account Error","Invalid Parameters");return}null==p?k=window.btoa(rstr_md5(d+":"+amtsysstate.AMT_GeneralSettings.response.DigestRealm+":"+q)):(d=null,p=btoa(p));if(-1!=b)for(var r in amtstack.RealmNames)(amtstack.RealmNames[r]||3==r)&&Q("rx"+r).checked&&a.push(r);null==b?amtstack.AMT_AuthorizationService_AddUserAclEntryEx(d,
1172
k,p,e,a,userAclEntryExResponse):-1==b?amtstack.AMT_AuthorizationService_SetAdminAclEntryEx(d,k,userAclEntryExResponse):amtstack.AMT_AuthorizationService_UpdateUserAclEntryEx(b,d,k,p,e,a,userAclEntryExResponse)}2==c&&amtstack.AMT_AuthorizationService_RemoveUserAclEntry(b,removeUserAclEntryResponse)}function userAclEntryExResponse(b,c,a,d,e){methodcheck(a)||PullUserInfo()}
1175
-function updateRealms(b){QV(67,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">Administrator</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(68,c)}}
1176
-function updateAccountDialog(){var b=!0;if("none"!=Q(67).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["Local only","Network only","All (Local & Network)"];
1177
-function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("Name",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("State",1==xxAccountEnabledInfo[b].Enabled?"Enabled":"Disabled"));if(e==xxAccountAdminName)a+=addHtmlValue("Permission","Administrator");else{var a=a+addHtmlValue("Permission",xxUserPermissions[c.AccessPermission]),r="";if(0<=c.Realms.indexOf(3))r="Administrator",
1178
-0<=c.Realms.indexOf(20)&&(r+=", Auditor");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<r.length&&(r+=", "),r+=amtstack.RealmNames[c.Realms[d]]);0==r.length&&(r="None");a+=addHtmlValue("Realms","")+"<b>"+r+"</b>"}messagebox("Account "+e,a+"</div>")}}
1173
+function updateRealms(b){QV(63,null!=b);if(null!=b){var c="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx3"+(0<=b.indexOf(3)?" checked":"")+">Administrator</label></li><hr />",a;for(a in amtstack.RealmNames){var d="";0<=b.indexOf(parseInt(a))&&(d=" checked");amtstack.RealmNames[a]&&(c+="<li><label><input type=checkbox onchange=updateAccountDialog() id=rx"+a+d+">"+amtstack.RealmNames[a]+"</label></li>")}QH(64,c)}}
1174
+function updateAccountDialog(){var b=!0;if("none"!=Q(63).style.display){var b=!1,c;for(c in amtstack.RealmNames)(amtstack.RealmNames[c]||3==c)&&Q("rx"+c).checked&&(b=!0)}b&&(b=0<d2username.value.length&&passwordcheck(d2password1.value)&&d2password1.value==d2password2.value);QE("c49",b)}var xxUserPermissions=["Local only","Network only","All (Local & Network)"];
1175
+function showUserDetails(b){if(!xxdialogMode){var c=xxAccountRealmInfo[b],a="<div style=text-align:left>",d,e=c.DigestUsername;e||(e=GetSidString(atob(c.KerberosUserSid)));a+=addHtmlValue("Name",e);xxAccountEnabledInfo[b]&&(a+=addHtmlValue("State",1==xxAccountEnabledInfo[b].Enabled?"Enabled":"Disabled"));if(e==xxAccountAdminName)a+=addHtmlValue("Permission","Administrator");else{var a=a+addHtmlValue("Permission",xxUserPermissions[c.AccessPermission]),q="";if(0<=c.Realms.indexOf(3))q="Administrator",
1176
+0<=c.Realms.indexOf(20)&&(q+=", Auditor");else for(d in xxAccountRealmInfo[b].Realms)""!=amtstack.RealmNames[c.Realms[d]]&&(0<q.length&&(q+=", "),q+=amtstack.RealmNames[c.Realms[d]]);0==q.length&&(q="None");a+=addHtmlValue("Realms","")+"<b>"+q+"</b>"}messagebox("Account "+e,a+"</div>")}}
1177
function wsmanQuery(){QH(26,"");var b=getSelectedOptions(Q(24)),c=[],a;for(a in b)""==QS("WSB-"+b[a]).display&&c.push(b[a]);0!=c.length&&(QE(25,!1),c&&0<c.length&&amtstack.BatchEnum("Browser",c,browserResponse,null,!0))}
1178
function browserResponse(b,c,a,d){QE(25,!0);b="";for(var e in a)c=a[e],b+="<h2>"+e+"</h2><div style=margin-left:20px>",b=200==c.status?0==c.responses.length?b+"<br>(Empty)":b+ObjectToString(c.responses).replace(/Intel\(r\)/g,"Intel®"):b+("<br><div style=color:red>Error #"+c.status+"</div>"),b+="</div><br>";QH(26,b)}
1179
function wsmanFilter(){var b=c0.value.toLowerCase(),c;for(c in AllWsman)QV("WSB-"+AllWsman[c],""==b||0<=AllWsman[c].toLowerCase().indexOf(b))}function connectTerminal(){terminal&&(0==terminal.State?(terminal.tlsv1only=amtstack.wsman.comm.tlsv1only,terminal.Start(currentMeshNode._id,16994,"*","*",0)):terminal.Stop())}
1182
-function onTerminalStateChange(b,c){c4.value=0==c?"Connect":"Disconnect";Q(31).textContent=StatusStrs[c];QE(40,3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1183
-break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}var terminalEmulations=["UTF8 Terminal","Extended ASCII","Intel ASCII"];
1184
-function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["Intel (F10 = ESC+[OM)","Alternate (F10 = ESC+0)","VT100+ (F10 = ESC+[OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1180
+function onTerminalStateChange(b,c){c4.value=0==c?"Connect":"Disconnect";Q(31).textContent=StatusStrs[c];QE(36,3==c);QE("TermWD",3==c);switch(c){case 0:b.m.TermResetScreen();b.m.TermDraw();3==xxdialogMode&&setDialogMode();QV("termRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Terminal","The remote device is busy, a session may already be open."):3==b.disconnectCode&&messagebox("Remote Terminal","The device indicated that this type of connection of not supported.");
1181
+break;case 3:1==b.serverIsRecording&&QV("termRecordIcon",!0)}}function termPaste(){terminal.m.TermSendKeys(d3pastetextarea.value);return!1}function termSendKey(b){terminal.m.TermSendKey(b);return!1}function termSendKeys(){var b=Q("termkeys").value;1E3>b?termSendKey(b):terminal.m.TermHandleKeyDown({which:b-889,repeat:!1})}function termToggleSize(){80==terminal.m.width?(Q(33).value="100x30",terminal.m.Init(100,30)):(Q(33).value="80x25",terminal.m.Init(80,25))}
1182
+var terminalEmulations=["UTF8 Terminal","Extended ASCII","Intel ASCII"];function termToggleType(){terminal.m.terminalEmulation=(terminal.m.terminalEmulation+1)%3;Q(35).value=terminalEmulations[terminal.m.terminalEmulation]}function termToggleFx(){Q(34).value=["Intel (F10 = ESC+[OM)","Alternate (F10 = ESC+0)","VT100+ (F10 = ESC+[OY)"][terminal.m.fxEmulation=(terminal.m.fxEmulation+1)%3]}
1183
function termToggleCr(){"\r\n"==terminal.m.lineFeed?(Q(32).value="LF",terminal.m.lineFeed="\n"):(Q(32).value="CR+LF",terminal.m.lineFeed="\r\n")}
1184
function terminalCaptureToggle(b){if(!xxdialogMode)if(void 0==terminal.m.capture)terminal.m.capture="",c3.value="Stop Capture";else{if(0<terminal.m.capture.length){b="TerminalCapture";var c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);saveAs(data2blob(terminal.m.capture),b+".txt")}delete terminal.m.capture;
1185
c3.value="Start Capture"}}function terminal_FileSelectHandler(b){haltEvent(b);if(3==terminal.State&&null!=b.dataTransfer&&1==b.dataTransfer.files.length){var c=new FileReader;c.onload=terminal_onSetupBinRead;c.readAsText(b.dataTransfer.files[0])}}function terminal_onSetupBinRead(b){d3pastetextarea.value=b.target.result;setDialogMode(3,"Paste",3,termPaste)}var desktopScreenInfo=null,desktopPollTimer=null,webRtcDesktop=null;
@@ -1194,33 +1192,33 @@ desktopsettings.quality&&(webRtcDesktop.softdesktop.m.CompressionLevel=desktopse
1192
function(a){urlvars.kvmdatatrace&&console.log("WebRTC Data Channel Closed");webRtcDesktopReset()},webRtcDesktop.webrtc.onicecandidate=function(a){null==a.candidate?desktop.m.sendKvmData(JSON.stringify({action:"offer",ver:1,sdp:webRtcDesktop.webrtcoffer.sdp})):webRtcDesktop.webrtcoffer.sdp+="a="+a.candidate.candidate+"\r\n"},webRtcDesktop.webrtc.oniceconnectionstatechange=function(){null==webRtcDesktop||null==webRtcDesktop.webrtc||"disconnected"!=webRtcDesktop.webrtc.iceConnectionState&&"failed"!=
1193
webRtcDesktop.webrtc.iceConnectionState||webRtcDesktopReset()},webRtcDesktop.webrtc.createOffer(function(a){webRtcDesktop.webrtcoffer=a;webRtcDesktop.webrtc.setLocalDescription(a,function(){},webRtcDesktopReset)},webRtcDesktopReset,{mandatory:{OfferToReceiveAudio:!1,OfferToReceiveVideo:!1}})):"answer"==a.action&&null!=webRtcDesktop&&webRtcDesktop.webrtc.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:a.sdp}),function(){},webRtcDesktopReset))},desktop.m.kvmExtChanged=15<amtversion||
1194
urlvars.kvmext?updateDesktopState:null,desktop.m.frameRateDelay=1==desktopsettings.limitFrameRate?200:0,desktop.m.noMouseRotate=desktopsettings.noMouseRotate,desktop.tlsv1only=amtstack.wsman.comm.tlsv1only,desktop.Start(currentMeshNode._id,16994,"*","*",0),PullDesktopDisplayInfo(),urlvars.norefresh||(desktopPollTimer=setInterval(PullDesktopDisplayInfo,5E3))):(desktop.Stop(),clearInterval(desktopPollTimer),desktopPollTimer=null,PullDesktopDisplayInfo(),webRtcDesktopReset()))}
1197
-function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(48).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1198
-function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(48).innerHTML=b+" ":Q(48).innerHTML=""}
1195
+function PullDesktopDisplayInfo(){7<amtversion&&0<desktop.State?amtstack.BatchEnum("",["*IPS_ScreenSettingData","*IPS_KVMRedirectionSettingData"],ProcessDesktopDisplayInfo):(desktopScreenInfo=null,Q(44).innerHTML="")}function ProcessDesktopDisplayInfo(b,c,a,d){200!=d?desktopScreenInfo=null:(desktopScreenInfo=a.IPS_ScreenSettingData.responses.Body,desktopScreenInfo.KVMRSD=a.IPS_KVMRedirectionSettingData.responses.Body,UpdateDesktopDisplayInfo())}
1196
+function UpdateDesktopDisplayInfo(){for(var b="",c=0,a=0;3>a;a++)1==desktopScreenInfo.IsActive[a]&&(c++,b+='<input type="button" '+(a==desktopScreenInfo.KVMRSD.DefaultScreen?'style="background-color:DodgerBlue"':"")+' value="'+(a+1)+'" title="Switch to screen '+(a+1)+'" onkeypress="return false" onkeydown="return false" onclick="desktopSwitchScreen('+a+')"> ');1<c?Q(44).innerHTML=b+" ":Q(44).innerHTML=""}
1197
function desktopSwitchScreen(b){var c=Clone(desktopScreenInfo.KVMRSD);c.DefaultScreen=b;amtstack.Put("IPS_KVMRedirectionSettingData",c,desktopSwitchScreenEx)}function desktopSwitchScreenEx(b,c,a,d){200==d&&(desktopScreenInfo.KVMRSD=a.Body,UpdateDesktopDisplayInfo())}
1200
-function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"Connect":"Disconnect";var d=3==c&&!urlvars.kvmviewonly;QE(49,d);QE("deskkeys",d);QE("DeskWD",d);QE(50,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Desktop","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("Remote Desktop","The device indicated that this type of connection of not supported."):5E4==b.disconnectCode?
1198
+function onDesktopStateChange(b,c){var a=!1;c10.value=0==c?"Connect":"Disconnect";var d=3==c&&!urlvars.kvmviewonly;QE(45,d);QE("deskkeys",d);QE("DeskWD",d);QE(46,d);switch(c){case 0:webRtcDesktopReset();QV("deskRecordIcon",!1);2==b.disconnectCode?messagebox("Remote Desktop","The remote device is busy, a session may already be open."):3==b.disconnectCode?messagebox("Remote Desktop","The device indicated that this type of connection of not supported."):5E4==b.disconnectCode?
1199
messagebox("Remote Desktop","KVM disconnection, they may indicate that Intel AMT is unable to capture the display (Try RLE8 encoding), or unsupported GPU."):50001==b.disconnectCode&&(a=!0);break;case 3:12<=amtversion&&b.m.sendKvmData(JSON.stringify({action:"present",ver:1})),1==b.serverIsRecording&&QV("deskRecordIcon",!0)}center();updateDesktopState();a&&setTimeout(connectDesktop,200)}
1202
-function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b=", Soft-KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(46).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"Remote Desktop Settings",3,showDesktopSettingsChanged))}
1200
+function updateDesktopState(){var b="";3==desktop.State&&(webRtcDesktop&&1==webRtcDesktop.webRtcActive?b=", Soft-KVM":desktop.m&&desktop.m.kvmExt&&(2==desktop.m.kvmExt.decimation&&(b+=", Gray"),1==desktop.m.kvmExt.compression&&(b+=", ZLib")));Q(42).textContent=StatusStrs[desktop.State]+b}function showDesktopSettings(){xxdialogMode||(applyDesktopSettings(),setDialogMode(7,"Remote Desktop Settings",3,showDesktopSettingsChanged))}
1201
function showDesktopSettingsChanged(){desktopsettings.encflags=parseInt(c11.value);desktopsettings.showmouse=d7showcursor.checked;desktopsettings.showcad=d7showcad.checked;desktopsettings.limitFrameRate=d7limitFrameRate.checked;desktopsettings.noMouseRotate=d7noMouseRotate.checked;desktopsettings.quality=d7bitmapquality.value;desktopsettings.scaling=d7bitmapscaling.value;try{localStorage.setItem("desktopsettings",JSON.stringify(desktopsettings))}catch(b){}applyDesktopSettings();desktop.m.frameRateDelay=
1202
1==desktopsettings.limitFrameRate?200:0;0!=desktop.State&&(desktop.disconnectCode=0,desktop.Stop(),setTimeout(connectDesktop,50))}
1203
function applyDesktopSettings(){15>amtversion&&(desktopsettings.encflags&=3);c11.value=desktopsettings.encflags;d7showcursor.checked=desktopsettings.showmouse;d7showcad.checked=desktopsettings.showcad;d7limitFrameRate.checked=desktopsettings.limitFrameRate;d7noMouseRotate.checked=desktopsettings.noMouseRotate;desktopsettings.quality&&(d7bitmapquality.value=desktopsettings.quality);desktopsettings.scaling&&(d7bitmapscaling.value=desktopsettings.scaling);QV("d7softkvmsettings",12<=amtversion);
1206
-QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(49,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1207
-function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(41,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1208
-"8px"),center()))}function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(50).blur(),setDialogMode(11,"Remote Keyboard Entry",3,showDeskTypeEx,'<div>Enter text and click OK to remotely type it using a US english keyboard. Make sure to place the remote cursor at the correct position before proceeding.<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1204
+QV("d7exm1",15<amtversion||urlvars.kvmext);QV("d7exm2",15<amtversion||urlvars.kvmext);QV("d7exm3",15<amtversion||urlvars.kvmext);QV("d7exm4",15<amtversion||urlvars.kvmext);QV("d7exm5",15<amtversion||urlvars.kvmext);QV("d7exm6",15<amtversion||urlvars.kvmext);QV(45,desktopsettings.showcad)}var fullscreen=!1,fullscreenonly=!1;
1205
+function deskToggleFull(b){xxdialogMode||(1==fullscreenonly?(console.log("deskToggleFull1",fullscreenonly,urlvars.kvmonly),fullscreenonly=!1,1==urlvars.kvmonly?console.log("deskToggleFull2"):disconnect()):(fullscreenonly=b,fullscreen=!fullscreen,QV(7,!fullscreen),QV(37,!fullscreen),QV("c5",!fullscreen),QV("c9",fullscreen),fullscreen?(QS(8).left=0,QS(16).padding=0):(QS(8).left="156px",QS(16).padding=
1206
+"8px"),center()))}function deskShowTypeDialog(){xxdialogMode||3!=desktop.State||(Q(46).blur(),setDialogMode(11,"Remote Keyboard Entry",3,showDeskTypeEx,'<div>Enter text and click OK to remotely type it using a US english keyboard. Make sure to place the remote cursor at the correct position before proceeding.<div><textarea id=d2typeText style="margin-top:5px;width:100%;height:184px;resize:none" maxlength=2000></textarea>'),Q("d2typeText").focus())}
1207
var AmtDeskTypeTimer=null,AmtDeskTypeContent=null,DeskTypeTranslate={39:222,42:106,43:107,44:188,45:189,46:190,47:191,59:186,61:187,91:219,92:220,93:221,96:192,191:111},DeskTypeShiftTranslate={33:49,34:222,35:51,36:52,37:53,38:55,40:57,41:48,58:186,60:188,62:190,63:191,64:50,94:54,95:189,106:56,107:187,123:219,124:220,125:221,126:192};
1210
-function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(54).checked||desktop.m.sendcad()}
1208
+function showDeskTypeEx(){var b=Q("d2typeText").value;Q("d2typeText").value.toUpperCase();var c=[],a;for(a in b){var d=b.charCodeAt(a);c.push([d,1],[d,0])}AmtDeskTypeContent=c;AmtDeskTypeTimer=setInterval(function(){var a=AmtDeskTypeContent.shift();desktop&&desktop.m.sendkey(a[0],a[1]);if(null==desktop||0==AmtDeskTypeContent.length)clearInterval(AmtDeskTypeTimer),AmtDeskTypeContent=null},10)}function sendCAD(){Q(50).checked||desktop.m.sendcad()}
1209
var deskkeysset={0:[[65511,1],[65511,0]],1:[[65511,1],[65364,1],[65364,0],[65511,0]],2:[[65511,1],[65362,1],[65362,0],[65511,0]],3:[[65511,1],[108,1],[108,0],[65511,0]],4:[[65511,1],[109,1],[109,0],[65511,0]],5:[[65505,1],[65511,1],[109,1],[109,0],[65511,0],[65505,0]],6:[[65470,1],[65470,0]],7:[[65471,1],[65471,0]],8:[[65472,1],[65472,0]],9:[[65473,1],[65473,0]],10:[[65474,1],[65474,0]],11:[[65475,1],[65475,0]],12:[[65476,1],[65476,0]],13:[[65477,1],[65477,0]],14:[[65478,1],[65478,0]],15:[[65479,
1210
1],[65479,0]],16:[[65480,1],[65480,0]],17:[[65481,1],[65481,0]],19:[[65513,1],[65289,1],[65289,0],[65513,0]],20:[[65511,1],[114,1],[114,0],[65511,0]],21:[[65513,1],[65473,1],[65473,0],[65513,0]],22:[[65507,1],[119,1],[119,0],[65507,0]],23:[[65511,1],[65361,1],[65361,0],[65511,0]],24:[[65511,1],[65363,1],[65363,0],[65511,0]]};
1213
-function deskSendKeys(){if(!Q(54).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1211
+function deskSendKeys(){if(!Q(50).checked){var b=Q("deskkeys").value;if(null!=b&&null!=deskkeysset[b]&&0!=desktop.State)for(var c=0;c<deskkeysset[b].length;c++)desktop.m.sendkey(deskkeysset[b][c][0],deskkeysset[b][c][1])}}
1212
function deskSaveImage(){if(!(xxdialogMode||3!=desktop.State||urlvars&&urlvars.norecord)){var b="Desktop",c=new Date;amtsysstate&&(b+="-"+amtsysstate.AMT_GeneralSettings.response.HostName);b+="-"+c.getFullYear()+"-"+("0"+(c.getMonth()+1)).slice(-2)+"-"+("0"+c.getDate()).slice(-2)+"-"+("0"+c.getHours()).slice(-2)+"-"+("0"+c.getMinutes()).slice(-2);Q("Desk").toBlob(function(a){saveAs(a,b+".jpg")})}}
1215
-function dmousedown(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1216
-function dmousemove(b){xxdialogMode||Q(54).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(54).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1213
+function dmousedown(b){xxdialogMode||Q(50).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousedown(b),desktop.m.sendKeepAlive()):desktop.m.mousedown(b))}function dmouseup(b){xxdialogMode||Q(50).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mouseup(b),desktop.m.sendKeepAlive()):desktop.m.mouseup(b))}
1214
+function dmousemove(b){xxdialogMode||Q(50).checked||(null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop?(webRtcDesktop.softdesktop.m.mousemove(b),desktop.m.sendKeepAlive()):desktop.m.mousemove(b))}function dmousewheel(b){xxdialogMode||Q(50).checked||null==webRtcDesktop||null==webRtcDesktop.softdesktop||(webRtcDesktop.softdesktop.m.mousewheel(b),desktop.m.sendKeepAlive())}
1215
function drotate(b){xxdialogMode||(b=desktop.m.rotation+b,desktop.m.setRotation(b),null!=webRtcDesktop&&null!=webRtcDesktop.softdesktop&&null!=webRtcDesktop.softdesktop.m&&webRtcDesktop.softdesktop.m.setRotation(b),center())}var p24files=null,p24filetree=null,p24targetpath=null,p24filetreelocation=[];
1216
function onFilesControlData(b){if(0<b.length&&123!=b.charCodeAt(0))p24gotDownloadBinaryData(b);else if(b=JSON.parse(b),"download"==b.action)p24gotDownloadCommand(b);else if("upload"==b.action)p24gotUploadData(b);else if("pong"!=b.action)if(b.path=b.path.replace(/\//g,"\\"),null!=p24filetree&&b.path==p24filetree.path){var c=p24getCheckedNames();p24filetree=b;p24updateFiles(c)}else{for(var c=b.path.split("/").join("\\"),a=p24targetpath.split("/").join("\\");0<c.length&&"\\"==c[0];)c=c.substring(1);
1217
for(;0<a.length&&"\\"==a[0];)a=a.substring(1);if(c==a||"\\"==b.path&&""==p24targetpath)p24filetree=b,p24updateFiles()}}function p24getCheckedNames(){for(var b=[],c=document.getElementsByName("fd"),a=0;a<c.length;a++)c[a].checked&&b.push(p24filetree.dir[c[a].value].n);return b}
1220
-function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>Root</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var r in e)""!=e[r]&&p24filetreelocation.push(e[r]);for(r in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(r)+1)+")>"+p24filetreelocation[r]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(r in p){var k=p[r],q=k.n,m;m=70<q.length?'<span title="'+EscapeHtml(q)+'">'+EscapeHtml(q.substring(0,
1221
-70))+"...</span>":EscapeHtml(q);var q=EscapeHtml(q),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1222
-encodeURIComponent(k.nx)+'")>'+m+"</a></span></div>":(x=m,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+q)+'","'+encodeURIComponent(q)+'",'+k.s+")'>"+m+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1223
-3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),r=0;r<c.length;r++)0<=b.indexOf(p24filetree.dir[c[r].value].n)&&(c[r].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1218
+function p24updateFiles(b){var c="",a="",d="<a style=cursor:pointer onclick=p24folderup(0)>Root</a>",e=p24filetree.path.split("\\");p24filetreelocation=[];for(var q in e)""!=e[q]&&p24filetreelocation.push(e[q]);for(q in p24filetreelocation)d+=" / <a style=cursor:pointer onclick=p24folderup("+(parseInt(q)+1)+")>"+p24filetreelocation[q]+"</a>";var e=p24filetreelocation.join("/"),p=p24sort_files(p24filetree.dir);for(q in p){var k=p[q],r=k.n,n;n=70<r.length?'<span title="'+EscapeHtml(r)+'">'+EscapeHtml(r.substring(0,
1219
+70))+"...</span>":EscapeHtml(r);var r=EscapeHtml(r),w="";null!=k.d&&(w=new Date(k.d),w=w.getMonth()+1+"/"+w.getDate()+"/"+w.getFullYear()+" "+w.toLocaleTimeString()+" ");var l="";null!=k.s&&(l=getFileSizeStr(k.s));var x="";3>k.t?x='<div class=filelist file=999><input file=999 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span style=float:right title=""></span><span><div class=fileIcon'+k.t+'></div><a style=cursor:pointer onclick=p24folderset("'+
1220
+encodeURIComponent(k.nx)+'")>'+n+"</a></span></div>":(x=n,0<k.s&&(x='<a rel="noreferrer noopener" target="_blank" style=cursor:pointer onclick=\'p24downloadfile("'+encodeURIComponent(e+"/"+r)+'","'+encodeURIComponent(r)+'",'+k.s+")'>"+n+"</a>"),x='<div class=filelist file=3><input file=3 style=float:left name=fd class=fcb type=checkbox onchange=p24setActions() value="'+k.nx+'"> <span class=fsize>'+w+"</span><span style=float:right>"+l+"</span><span><div class=fileIcon"+k.t+"></div>"+x+"</span></div>");
1221
+3>k.t?c+=x:a+=x}QH("p24files",c+a);QH("p24currentpath",d);QE("p24FolderUp",0!=p24filetreelocation.length);if(null!=b)for(c=document.getElementsByName("fd"),q=0;q<c.length;q++)0<=b.indexOf(p24filetree.dir[c[q].value].n)&&(c[q].checked=!0);p24setActions()}function p24folderset(b){p24targetpath=joinPaths(p24filetree.path,p24filetree.dir[b].n).split("\\").join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}
1222
function p24folderup(b){if(null==b)p24filetreelocation.pop();else for(;p24filetreelocation.length>b;)p24filetreelocation.pop();p24targetpath=p24filetreelocation.join("/");p24files.sendCtrlMsg(JSON.stringify({action:"ls",reqid:1,path:p24targetpath}))}var p24sortorder;function p24sort_filename(b,c){return b.ln>c.ln?1*p24sortorder:b.ln<c.ln?-1*p24sortorder:0}function p24sort_timestamp(b,c){return b.d>c.d?1*p24sortorder:b.d<c.d?-1*p24sortorder:0}
1223
function p24sort_bysize(b,c){return b.s==c.s?p24sort_filename(b,c):(b.s-c.s)*p24sortorder}function p24sort_files(b){var c=[],a=Q("p24sortdropdown").value,d;for(d in b)b[d].nx=d,null==b[d].s&&(b[d].s=0),null==b[d].n&&(b[d].n=d),b[d].ln=b[d].n.toLowerCase(),c.push(b[d]);p24sortorder=1;3<a&&(p24sortorder=-1,a-=3);1==a?c.sort(p24sort_filename):2==a?c.sort(p24sort_bysize):3==a&&c.sort(p24sort_timestamp);return c}
1224
function p24setActions(){if(null==p24filetree)QE("p24DeleteFileButton",!1),QE("p24NewFolderButton",!1),QE("p24UploadButton",!1),QE("p24RenameFileButton",!1),QE("p24SelectAllButton",!1),Q("p24SelectAllButton").value="Select All",QE("p24RefreshButton",!1),QE("p24CutButton",!1),QE("p24CopyButton",!1),QE("p24PasteButton",!1);else{var b=p24getFileSelCount(),c=p24getFileCount(),a=p24getFileSelCount(!1),d="win32"==webRtcDesktop.platform;QE("p24DeleteFileButton",0<b&&(0<p24filetreelocation.length||0==d));
@@ -1254,7 +1252,7 @@ null,c=null;1==Q("floppyImageInput").files.length&&(b=Q("floppyImageInput").file
1252
function iderStart3(b,c,a){iderStop();ider=CreateAmtRedirect(CreateAmtRemoteIder());ider.onStateChanged=onIderStateChange;ider.m.floppy=b;ider.m.cdrom=c;ider.m.iderStart=a;ider.m.sectorStats=iderSectorStats;ider.tlsv1only=amtstack.wsman.comm.tlsv1only;ider.Start(currentMeshNode._id,16994,"*","*",0);QV("IDERDiskMapButton",!0)}
1253
function iderStop(){ider&&(ider.m.Stop(),ider.onStateChanged=null,ider.m.onDialogPrompt=null,delete ider);iderTimer&&(clearInterval(iderTimer),delete iderTimer);iderToggleDiskMap(!1)}function onIderStateChange(b,c){QE("c2",3!=c);QE("c8",3!=c);QE("c1",3!=c);QE("c7",3!=c);QV(9,3==c);center();3==c?(urlvars.norefresh||(iderTimer=setInterval(onIderTimer,500)),onIderTimer()):iderTimer&&(clearInterval(iderTimer),delete iderTimer)}
1254
function onIderTimer(){ider.m.Update&&ider.m.Update();-1==ider.m.bytesFromAmt?iderStop():QH(10,"<b>"+(ider.m.server?"Server ":"")+"IDE-R Session</b>, Connected, "+ider.m.bytesFromAmt+" in, "+ider.m.bytesToAmt+" out.")}var heatMapWidth=600,heatMapDividor={};
1257
-function iderSectorStats(b,c,a,d,e){var r=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=r.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b>CDROM</b>, blocks are {0} bytes.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b>Floppy</b>, blocks are {0} bytes.",512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)r.height=6*(Math.floor(a/
1255
+function iderSectorStats(b,c,a,d,e){var q=c?Q("cdromHeatMapCanvas"):Q("floppyHeatMapCanvas"),p=q.getContext("2d");if(0==b){heatMapDividor[c]=1;if(0<a)for(;8E3<a/heatMapDividor[c];)heatMapDividor[c]*=2;c?(QV("cdromHeatMap",a),QH("cdromHeatMapText",format("<b>CDROM</b>, blocks are {0} bytes.",2048*heatMapDividor[c]))):(QV("floppyHeatMap",a),QH("floppyHeatMapText",format("<b>Floppy</b>, blocks are {0} bytes.",512*heatMapDividor[c])))}c=heatMapDividor[c];a/=c;d/=c;e/=c;if(0==b)q.height=6*(Math.floor(a/
1256
(heatMapWidth/6))+(a%heatMapWidth?1:0)),p.fillStyle="rgba(225,250,225,1)",p.fillRect(0,0,heatMapWidth,6*Math.floor(a/(heatMapWidth/6))),a%heatMapWidth&&p.fillRect(0,6*Math.floor(a/(heatMapWidth/6)),a%(heatMapWidth/6)*6,6),p.fillStyle="rgba(0,0,0,0.3)";else for(b=d;b<d+e;b++)sectorHeat(p,b,6,c)}function sectorHeat(b,c,a,d){b.fillRect(c%(heatMapWidth/a)*a,Math.floor(c/(heatMapWidth/a))*a,a,a)}
1257
function iderToggleDiskMap(b){var c="none"!=QS("iderHeatmap").display;null==b&&(b=!c);xxdialogMode&&(b=!1);QS("iderHeatmap").display=b?"":"none"}function onIderDialogPrompt(b,c,a){iderCodeBlock&&(document.body.removeChild(iderCodeBlock),delete iderCodeBlock);c.js&&(b=document.createElement("script"),b.text=c.js,iderCodeBlock=document.body.appendChild(b));setDialogMode(11,"Storage Redirection",a?a:3,onIderDialogPromptOk,c.html)}
1258
function onIderDialogPromptOk(b){1==b?window.iderServerCall?ider.m.dialogPrompt(window.iderServerCall()):ider.m.dialogPrompt():iderStop()}function iderServerStart(){xxdialogMode||(iderStop(),ider=CreateAmtRemoteServerIder(),null!=ider&&(ider.onStateChanged=onIderStateChange,ider.m.sectorStats=iderSectorStats,ider.m.onDialogPrompt=onIderDialogPrompt,ider.tlsv1only=amtstack.wsman.comm.tlsv1only,ider.Start(currentMeshNode._id,16994,"*","*",0)))}
@@ -1265,24 +1263,24 @@ MakeToArray(xxEnvironementDetection.DetectionStrings);xxCiraServers=a.AMT_Manage
1263
"@Name","Name").Value)),b.MpsType=c.MpsType,c=getItem(c.PolicySet.ReferenceParameters.SelectorSet.Selector,"@Name","PolicyRuleName").Value.split(" ")[0],xxPolicies[c].push(b);updateRemoteAccess()}}
1264
function updateRemoteAccess(){if(null!=xxEnvironementDetection){var b,c="Disabled",a=xxRemoteAccess.IPS_HTTPProxyService&&xxRemoteAccess.IPS_HTTPProxyAccessPoint;xxEnvironementDetection.DetectionStrings&&0<xxEnvironementDetection.DetectionStrings.length&&(c="Enabled, "+xxEnvironementDetection.DetectionStrings.length+" "+(1<xxEnvironementDetection.DetectionStrings.length?"domains":"domain"));b=""+TableStart();b+=TableEntry("Environment detection",addLink(c,"editEnvironmentDetection()"));b+=TableEntry("User initiation options",
1265
addLinkConditional(xxUserInitiatedEnabledState[xxUserInitiatedCira.EnabledState],"editUserInitiatedCira()",xxAccountAdminName));c="<i>None</i>";if(0<xxPolicies.User.length){var c="",d;for(d in xxPolicies.User)0<c.length&&(c+=", "),c+=xxPolicies.User[d].AccessInfo,1==xxPolicies.User[d].MpsType&&(c+=" (CILA)")}b+=TableEntry("User initiated connection",addLinkConditional(c,'editMpsPolicy("User")',xxAccountAdminName));c="<i>None</i>";if(0<xxPolicies.Alert.length)for(d in c="",xxPolicies.Alert)0<c.length&&
1268
-(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("Alert initiated connection",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>None</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName","Periodic");if(e){var r=atob(e.ExtendedData);
1269
-0==ReadInt(r,0)&&(c+=format(", each {0} seconds",ReadInt(r,4)));1==ReadInt(r,0)&&(e=ReadInt(r,4),r=ReadInt(r,8),10>r&&(r="0"+r),c+=", at "+e+":"+r+" daily")}b+=TableEntry("Periodic connection",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Manage Intel® AMT remote management servers.<br><br>";if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>No remote servers found.</i></div><br>";
1266
+(c+=", "),c+=xxPolicies.Alert[d].AccessInfo,1==xxPolicies.Alert[d].MpsType&&(c+=" (CILA)");b+=TableEntry("Alert initiated connection",addLinkConditional(c,'editMpsPolicy("Alert")',xxAccountAdminName));c="<i>None</i>";if(0<xxPolicies.Periodic.length)for(d in c="",xxPolicies.Periodic)0<c.length&&(c+=", "),c+=xxPolicies.Periodic[d].AccessInfo,1==xxPolicies.Periodic[d].MpsType&&(c+=" (CILA)");var e=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName","Periodic");if(e){var q=atob(e.ExtendedData);
1267
+0==ReadInt(q,0)&&(c+=format(", each {0} seconds",ReadInt(q,4)));1==ReadInt(q,0)&&(e=ReadInt(q,4),q=ReadInt(q,8),10>q&&(q="0"+q),c+=", at "+e+":"+q+" daily")}b+=TableEntry("Periodic connection",addLinkConditional(c,'editMpsPolicy("Periodic")',xxAccountAdminName));b+=TableEnd();b=b+"<br>"+TableStart2();b+="<tr><td class=r1 style=padding-left:15px><br>Manage Intel® AMT remote management servers.<br><br>";if(0==xxCiraServers.length)b+="<div style=padding-left:15px><br><i>No remote servers found.</i></div><br>";
1268
else for(d in xxCiraServers)c=":"+xxCiraServers[d].Port,xxCiraServers[d].CN&&(c+=", "+xxCiraServers[d].CN),b+="<div class=itemBar onclick=showServerDetails("+d+")><div style=padding-top:3px><b>"+xxCiraServers[d].AccessInfo+"</b>"+EscapeHtml(c)+"</div></div>";if(a)if(b+="<br>Manage HTTP proxies used for management connections.<br><br>",c=xxRemoteAccess.IPS_HTTPProxyAccessPoint.responses,0==c.length)b+="<div style=padding-left:15px><br><i>No proxies configured.</i></div><br>";else for(d in c)b+="<div class=itemBar onclick=showProxyDetails("+
1271
-d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("Add Server...","AddRemoteAccessServer()"),a&&(d+=AddButton("Add Proxy...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+d);QH(58,b)}}var xxEditMpsPolicyType;
1272
-function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversion,d=xxEditMpsPolicyType=b;"User"==d&&(d="User Initiated");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(None)",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;
1269
+d+")><div style=padding-top:3px><b>"+EscapeHtml(c[d].AccessInfo)+":"+c[d].Port+"</b> / "+EscapeHtml(c[d].NetworkDnsSuffix)+"</div></div>";d="";xxAccountAdminName&&(d=AddButton("Add Server...","AddRemoteAccessServer()"),a&&(d+=AddButton("Add Proxy...","AddRemoteAccessProxy()")));b+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullRemoteAccess()")+d);QH(54,b)}}var xxEditMpsPolicyType;
1270
+function editMpsPolicy(b){var c="",a=11<amtversion||11==amtversion&&6<=amtversionmin,d=xxEditMpsPolicyType=b;"User"==d&&(d="User Initiated");var d=getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",d),c=c+"<div style=height:26px><select id=d2server1 style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=-1>(None)",e;for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][0]&&xxPolicies[b][0].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;
1271
c+="</select><div>Primary server</div></div>";a&&(c+="<div style=height:26px><select id=d2server1cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - External<option value=1"+(xxPolicies[b][0]&&1==xxPolicies[b][0].MpsType?" selected":"")+">CILA - Internal</select><div>Primary MPS Type</div></div>");if(1<xxCiraServers.length){c+="<div style=height:26px><select id=d2server2 style=float:right;width:206px onchange=editMpsPolicyUpdate()>";c+="<option value=-1>(None)";
1272
for(e in xxCiraServers)c+="<option value="+e+""+(xxPolicies[b][1]&&xxPolicies[b][1].Name==xxCiraServers[e].Name?" selected":"")+">"+xxCiraServers[e].AccessInfo;c+="</select><div>Secondary server</div></div>";a&&(c+="<div style=height:26px><select id=d2server2cira style=float:right;width:206px onchange=editMpsPolicyUpdate()><option value=0>CIRA - External<option value=1"+(xxPolicies[b][1]&&1==xxPolicies[b][1].MpsType?" selected":"")+">CILA - Internal</select><div>Secondary MPS Type</div></div>")}e=
1273
0;d&&(e=d.TunnelLifeTime);c+="<div style=height:26px><input id=d2lifetime style=float:right;width:200px onchange=editMpsPolicyUpdate() value="+e+">";c+="<div>Tunnel lifetime (Seconds)</div></div>";"Periodic"==b&&(a=0,e=3600,d&&(d=atob(d.ExtendedData),a=ReadInt(d,0),e=ReadInt(d,4),1==a&&(d=ReadInt(d,8),10>d&&(d="0"+d),e+=":"+d)),c+="<div style=height:26px><select id=d2ttype style=float:right;width:206px onchange=editMpsPolicyUpdate()>",c+="<option value=0"+(0==a?" selected":"")+">Periodic, time interval<option value=1"+
1274
(1==a?" selected":"")+">Time of day, once a day",c+="</select><div>Trigger type</div></div><div style=height:26px><input id=d2timer style=float:right;width:200px onkeyup=editMpsPolicyUpdate() value="+e+"><div id=ttypelabel></div></div>");setDialogMode(11,format("{0} Connection",b),3,editMpsPolicyOk,c);editMpsPolicyUpdate()}
1277
-function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversion,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1275
+function editMpsPolicyUpdate(){var b=11<amtversion||11==amtversion&&6<=amtversionmin,c=1>=xxCiraServers.length||-1==Q("d2server1").value||Q("d2server1").value!=Q("d2server2").value;if(1==c&&"Periodic"==xxEditMpsPolicyType&&1==Q("d2ttype").value){var a=Q("d2timer").value.split(":");if(2!=a.length)c=!1;else{var d=parseInt(a[0]),a=parseInt(a[1]);if(0>d||23<d||0>a||59<a)c=!1}}QE("c49",c);1<xxCiraServers.length&&QE("d2server2",-1!=Q("d2server1").value);"Periodic"==xxEditMpsPolicyType&&(QE("d2timer",
1276
-1!=Q("d2server1").value),QH("ttypelabel",0==Q("d2ttype").value?"Trigger interval (Seconds)":"Time of day (HH:MM)"),QE("d2ttype",-1!=Q("d2server1").value));QE("d2lifetime",-1!=Q("d2server1").value);b&&(QE("d2server1cira",-1<Q("d2server1").value),1<xxCiraServers.length&&QE("d2server2cira",-1<Q("d2server1").value&&-1<Q("d2server2").value))}
1277
function editMpsPolicyOk(){var b=xxEditMpsPolicyType;"User"==b&&(b="User Initiated");getItem(xxRemoteAccess.AMT_RemoteAccessPolicyRule.responses,"PolicyRuleName",b)?amtstack.Delete("AMT_RemoteAccessPolicyRule",{PolicyRuleName:b},editMpsPolicyOk2):editMpsPolicyOk2()}
1280
-function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversion;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,r;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1281
-xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(r='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1282
-xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),r&&(0==Q("d2server2cira").value?d.push(r):p.push(r))):e&&(d.push(e),r&&d.push(r));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1278
+function editMpsPolicyOk2(b,c,a,d){b=11<amtversion||11==amtversion&&6<=amtversionmin;if(-1==Q("d2server1").value)PullRemoteAccess();else{c=0;"Alert"==xxEditMpsPolicyType&&(c=1);"Periodic"==xxEditMpsPolicyType&&(c=2);a=null;2==c&&(a=Q("d2ttype").value,d=IntToStr(Q("d2timer").value),1==a&&(d=Q("d2timer").value.split(":"),d=IntToStr(parseInt(d[0]))+IntToStr(parseInt(d[1]))),a=btoa(IntToStr(a)+d));var e,q;0<=Q("d2server1").value&&(e='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1279
+xxCiraServers[Q("d2server1").value].Name+"</Selector></SelectorSet></ReferenceParameters>");0<=Q("d2server1").value&&1<xxCiraServers.length&&0<=Q("d2server2").value&&(q='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://intel.com/wbem/wscim/1/amt-schema/1/AMT_ManagementPresenceRemoteSAP</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="Name">'+
1280
+xxCiraServers[Q("d2server2").value].Name+"</Selector></SelectorSet></ReferenceParameters>");d=[];var p=[];b?e&&(0==Q("d2server1cira").value?d.push(e):p.push(e),q&&(0==Q("d2server2cira").value?d.push(q):p.push(q))):e&&(d.push(e),q&&d.push(q));amtstack.AMT_RemoteAccessService_AddRemoteAccessPolicyRule(c,Q("d2lifetime").value,a,d,p,PullRemoteAccess)}}var editEnvironmentDetectionTmp;
1281
function editEnvironmentDetection(b){1!=b&&(editEnvironmentDetectionTmp=xxEnvironementDetection.DetectionStrings?Clone(xxEnvironementDetection.DetectionStrings):[]);var c="";xxAccountAdminName&&(c+="Enter up to 5 intranet domain suffix. If the computer is outside these domains, Intel® AMT local ports will be closed and remote server connections will be active.<br><br>");0==editEnvironmentDetectionTmp.length&&(c+="<i>No intranet domains, Environement detection disabled.</i><br>");for(var a in editEnvironmentDetectionTmp)c+=
1282
"<div class=itemBar style=margin-right:0><div style=float:right>"+AddButton2("Remove","editEnvironmentDetectionRemove("+a+")")+'</div><div style=padding-top:3px;max-width:260px;overflow:hidden title="'+editEnvironmentDetectionTmp[a]+'"><b>'+editEnvironmentDetectionTmp[a]+"</b></div></div>";xxAccountAdminName&&5>editEnvironmentDetectionTmp.length&&(c+="<br><input id=edInput placeholder=intranet.org style=width:276px onkeyup=edInputChg() maxlength=63><input type=button id=edAdd value=Add style=width:80px;margin-left:5px onclick=editEnvironmentDetectionAdd()>");
1285
-1==b?QH(69,c):setDialogMode(11,"Environment Detection",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1283
+1==b?QH(65,c):setDialogMode(11,"Environment Detection",xxAccountAdminName?3:1,editEnvironmentDetectionDlg,c);edInputChg()}function editEnvironmentDetectionDlg(){if(xxAccountAdminName){var b=Clone(xxEnvironementDetection);b.DetectionStrings=editEnvironmentDetectionTmp;amtstack.Put("AMT_EnvironmentDetectionSettingData",b,editEnvironmentDetectionDlg2,0,1)}}
1284
function editEnvironmentDetectionDlg2(b,c,a,d){200!=d?messagebox("Environment Detection",format("Failed to add server, status {0}",d)):a.Body.ReturnValue&&0!=a.Body.ReturnValue?messagebox("Environment Detection",a.Body.ReturnValueStr.replace(/_/g," ")):PullRemoteAccess()}function edInputChg(){5>editEnvironmentDetectionTmp.length&&QE("edAdd",0<Q("edInput").value.length)}function editEnvironmentDetectionAdd(){editEnvironmentDetectionTmp.push(Q("edInput").value);editEnvironmentDetection(1)}
1285
function editEnvironmentDetectionRemove(b){editEnvironmentDetectionTmp.splice(b,1);editEnvironmentDetection(1)}function editUserInitiatedCira(){if(!xxdialogMode){var b="",c;for(c in xxUserInitiatedEnabledState)b+="<input type=radio name=d11 id=wl"+c+" value="+c+" "+(xxUserInitiatedCira.EnabledState==c?"checked":"")+">"+xxUserInitiatedEnabledState[c]+"<br>";setDialogMode(11,"User Initiated Tunnel",3,editUserInitiatedCiraDlg,b)}}
1286
function editUserInitiatedCiraDlg(){amtstack.AMT_UserInitiatedConnectionService_RequestStateChange(document.querySelector("input[name=d11]:checked").value,null,editUserInitiatedCiraDlg2)}function editUserInitiatedCiraDlg2(b,c,a,d){200==d&&amtstack.Get("AMT_UserInitiatedConnectionService",editUserInitiatedCiraDlg3,0,1)}function editUserInitiatedCiraDlg3(b,c,a,d){200==d&&(xxUserInitiatedCira=a.Body,updateRemoteAccess())}var xxShowServerDetailsHandle;
@@ -1315,29 +1313,33 @@ e):amtstack.Put("AMT_RedirectionService",b,function(a,b,c,d){200!=d?messagebox("
1313
function showConsentDlg(){if(!xxdialogMode){var b=amtsysstate.IPS_OptInService.response.OptInRequired;c19.checked=0==b;c20.checked=1==b;c21.checked=4294967295==b;setDialogMode(10,"User Consent",3,consentDlgOk)}}function consentDlgOk(){amtsysstate.IPS_OptInService.response.OptInRequired=document.querySelector("input[name=d10]:checked").value;amtstack.Put("IPS_OptInService",amtsysstate.IPS_OptInService.response,function(){amtstack.Get("IPS_OptInService",consentGet,0,1)},0,1)}
1314
function consentGet(b,c,a,d){200==d&&PullSystemStatus()}var ipv6addrtype="Link local address;Network local address;Global address;User configured;Not allowed;DAD in progress;valid;deprecated;preferred/deprecated;expired;collision;not allowed".split(";");
1315
function showIPv6AddrDlg(b,c){if(!xxdialogMode){var a=TableStart();t=c.split(",");for(var d=0;d<t.length;d+=3)a+=TableEntry("<b>"+t[d]+"</b><br><span style=font-size:10px>"+ipv6addrtype[t[d+1]]+", "+ipv6addrtype[+t[d+2]+5]+"</span>","");setDialogMode(11,0==b?"IPv6 addresses for wired interface":"IPv6 addresses for wireless interface",1,null,a+TableEnd())}}
1318
-function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(75,0==b);QV(76,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 disabled");QH("d21l1","IPv6 enabled, automatic");QH("d21l2","IPv6 enabled, automatic + manual addresse");d21o0.checked=!c;d21o1.checked=c&&!ipv6manual;d21o2.checked=
1319
-c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,0==b?"IPv6 support for wired interface":"IPv6 support for wireless interface",3,function(){showIPv6StateDlgOk(b)})}}
1320
-function showIPv6StateDlgOk(b){var c=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(c.IPv6Address=c.DefaultRouter=c.PrimaryDNS=c.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",c,showIPv6StateDlgDone)),d21o2.checked&&(c.IPv6Address=c30.value,c.DefaultRouter=c32.value,c.PrimaryDNS=c33.value,c.SecondaryDNS=c34.value,amtstack.Put("IPS_IPv6PortSettings",c,showIPv6StateDlgDone)));for(var c=amtsysstate.CIM_ElementSettingData.responses,a=
1321
-0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=Clone(c[a]);d.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",d,showIPv6StateDlgDone)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv6 support",format("Unable to set IPv6 state, error {0}",d))}
1316
+function showIPv6StateDlg(b,c){if(!xxdialogMode&&amtsysstate){var a=amtsysstate.IPS_IPv6PortSettings.responses[b];ipv6manual=0==b&&(isIpAddress(a.IPv6Address)||isIpAddress(a.DefaultRouter)||isIpAddress(a.PrimaryDNS)||isIpAddress(a.SecondaryDNS));QV(71,0==b);QV(72,!1);QV("d21o0",!0);QV("d21l0",!0);QH("d21l0","IPv6 disabled");QH("d21l1","IPv6 enabled, automatic");QH("d21l2","IPv6 enabled, automatic + manual addresse");d21o0.checked=!c;d21o1.checked=c&&!ipv6manual;d21o2.checked=
1317
+c&&ipv6manual;c30.value=isIpAddress(a.IPv6Address,"");c32.value=isIpAddress(a.DefaultRouter,"");c33.value=isIpAddress(a.PrimaryDNS,"");c34.value=isIpAddress(a.SecondaryDNS,"");setDialogMode(21,0==b?"IPv6 support for wired interface":"IPv6 support for wireless interface",3,function(){showIPv6StateDlgOk(b)});updateIPSetupDlg()}}
1318
+function showIPv6StateDlgOk(b){var c='<w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+b+"</w:Selector></w:SelectorSet>",a=amtsysstate.IPS_IPv6PortSettings.responses[b];0==b&&(d21o1.checked&&(a.IPv6Address=a.DefaultRouter=a.PrimaryDNS=a.SecondaryDNS="::",amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)),d21o2.checked&&(a.IPv6Address=""==c30.value?"::":c30.value.toLocaleLowerCase(),a.DefaultRouter=""==c32.value?"::":c32.value.toLocaleLowerCase(),
1319
+a.PrimaryDNS=""==c33.value?"::":c33.value.toLocaleLowerCase(),a.SecondaryDNS=""==c34.value?"::":c34.value.toLocaleLowerCase(),amtstack.Put("IPS_IPv6PortSettings",a,showIPv6StateDlgDone,null,0,c)));c=amtsysstate.CIM_ElementSettingData.responses;for(a=0;a<c.length;a++)if(c[a].SettingData&&c[a].SettingData.ReferenceParameters.SelectorSet.Selector.Value=="Intel(r) IPS IPv6 Settings "+b){var d=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name",
1320
+"CreationClassName").Value,e=getItem(c[a].ManagedElement.ReferenceParameters.SelectorSet.Selector,"@Name","DeviceID").Value,d='<w:SelectorSet><w:Selector Name="ManagedElement"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/'+d+'</w:ResourceURI><w:SelectorSet><w:Selector Name="CreationClassName">'+
1321
+d+'</w:Selector><w:Selector Name="DeviceID">'+e+'</w:Selector><w:Selector Name="SystemCreationClassName">CIM_ComputerSystem</w:Selector><w:Selector Name="SystemName">Intel(r) AMT</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector><w:Selector Name="SettingData"><a:EndpointReference xmlns:b="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:c="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address><a:ReferenceParameters><w:ResourceURI>http://intel.com/wbem/wscim/1/ips-schema/1/IPS_IPv6PortSettings</w:ResourceURI><w:SelectorSet><w:Selector Name="InstanceID">Intel(r) IPS IPv6 Settings '+
1322
+b+"</w:Selector></w:SelectorSet></a:ReferenceParameters></a:EndpointReference></w:Selector></w:SelectorSet>",e=Clone(c[a]);e.IsCurrent=d21o0.checked?2:1;amtstack.Put("CIM_ElementSettingData",e,showIPv6StateDlgDone,null,0,d)}}function showIPv6StateDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv6 support",format("Unable to set IPv6 state, error {0}",d))}
1323
function showPingActionDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_GeneralSettings.response,b=(1==b.PingResponseEnabled)+((1==b.RmcpPingResponseEnabled)<<1);d20a.checked=0==b;d20b.checked=1==b;d20c.checked=2==b;d20d.checked=3==b;setDialogMode(20,"Intel® AMT Ping Response",3,showPingActionDlgOk)}}
1324
function showPingActionDlgOk(){var b=Clone(amtsysstate.AMT_GeneralSettings.response),c=document.querySelector("input[name=d20]:checked").value;b.PingResponseEnabled=0!=(c&1);b.RmcpPingResponseEnabled=0!=(c&2);amtstack.Put("AMT_GeneralSettings",b,PullSystemStatus,0,1)}
1324
-function showIPSetupDlg(){if(!xxdialogMode){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(74,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(75,!0);QV(76,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","Automatic configuration using DHCP server");QH("d21l2","Static configuration using IPv4 settings below");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=!d21o1.checked;c30.value=isIpAddress(b.IPAddress,"");c31.value=
1325
-isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"IPv4 Settings",3,showIPSetupDlgOk)}}function updateIPSetupDlg(){c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1326
-function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);if(0==d21o1.checked||7>amtversion||0==Q("d21ipsync").checked)b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=
1327
-c34.value&&(b.SecondaryDNS=c34.value);amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv4 Settings",format("Unable to set network parameters, error {0}",d))}amtPowerBootCapabilities=null;function showPowerActionDlg(){xxdialogMode||(statusbox("Power Actions","Checking capabilities..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1325
+function showIPSetupDlg(){if(!xxdialogMode&&null!=amtsysstate){var b=amtsysstate.AMT_EthernetPortSettings.responses[0];QV(70,6<amtversion);6<amtversion&&(Q("d21ipsync").checked=b.IpSyncEnabled);QV(71,!0);QV(72,!0);QV("d21o0",!1);QV("d21l0",!1);QH("d21l1","Automatic configuration using DHCP server");QH("d21l2","Static configuration using IPv4 settings below");d21o1.checked=1==b.DHCPEnabled;d21o2.checked=!d21o1.checked;c30.value=isIpAddress(b.IPAddress,
1326
+"");c31.value=isIpAddress(b.SubnetMask,"");c32.value=isIpAddress(b.DefaultGateway,"");c33.value=isIpAddress(b.PrimaryDNS,"");c34.value=isIpAddress(b.SecondaryDNS,"");updateIPSetupDlg();setDialogMode(21,"IPv4 Settings",3,showIPSetupDlgOk)}}
1327
+function updateIPSetupDlg(){var b=!0;d21o2.checked&&"IPv6 enabled, automatic + manual addresse"==Q("d21l2").innerHTML&&2>c30.value.split(":").length&&(b=!1);QE("c49",b);c30.disabled=c31.disabled=c32.disabled=c33.disabled=c34.disabled=!(d21o2.checked&&(7>amtversion||0==Q("d21ipsync").checked))}
1328
+function showIPSetupDlgOk(){var b=Clone(amtsysstate.AMT_EthernetPortSettings.responses[0]);b.DHCPEnabled=d21o1.checked;delete b.IPAddress;delete b.SubnetMask;delete b.DefaultGateway;delete b.PrimaryDNS;delete b.SecondaryDNS;6<amtversion&&(b.IpSyncEnabled=Q("d21ipsync").checked);0==d21o1.checked&&0==Q("d21ipsync").checked&&(b.IPAddress=c30.value,b.SubnetMask=c31.value,b.DefaultGateway=c32.value,""!=c33.value&&(b.PrimaryDNS=c33.value),""!=c34.value&&
1329
+(b.SecondaryDNS=c34.value));amtstack.Put("AMT_EthernetPortSettings",b,showIPSetupDlgDone,0,1,b)}function showIPSetupDlgDone(b,c,a,d){200==d?(amtsysstate=void 0,PullSystemStatus()):messagebox("IPv4 Settings",format("Unable to set network parameters, error {0}",d))}amtPowerBootCapabilities=null;function showPowerActionDlg(){xxdialogMode||(statusbox("Power Actions","Checking capabilities..."),amtstack.Get("AMT_BootCapabilities",powerActionResponse00,0,1))}
1330
function powerActionResponse00(b,c,a,d){if(200==d){b=3;try{b=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?1:2}catch(e){}amtPowerBootCapabilities=a.Body;QH("d5actionSelect","");b&2&&addOption("d5actionSelect","Power up",2);b&1&&(addOption("d5actionSelect","Reset",10),addOption("d5actionSelect","Power cycle",5),addOption("d5actionSelect","Power down",8));1==amtPowerBootCapabilities.ForceDiagnosticBoot&&(b&2&&addOption("d5actionSelect","Power on to diagnostic",300),b&1&&addOption("d5actionSelect",
1331
"Reset to diagnostic",301));9<amtversion&&b&1&&(addOption("d5actionSelect","OS Wake from Standby",500),addOption("d5actionSelect","OS Power Saving",501),addOption("d5actionSelect","Soft-off",12),addOption("d5actionSelect","Soft-reset",14),addOption("d5actionSelect","Sleep",4),addOption("d5actionSelect","Hibernate",7));1==amtPowerBootCapabilities.BIOSSetup&&(b&2&&addOption("d5actionSelect","Power up to BIOS",100),b&1&&addOption("d5actionSelect","Reset to BIOS",101));1==amtPowerBootCapabilities.SecureErase&&
1332
(b&2&&addOption("d5actionSelect","Power up to Secure Erase",104),b&1&&addOption("d5actionSelect","Reset to Secure Erase",105));b&1&&addOption("d5actionSelect","Reset to IDE-R Floppy",200);b&2&&addOption("d5actionSelect","Power on to IDE-R Floppy",201);b&1&&addOption("d5actionSelect","Reset to IDE-R CDROM",202);b&2&&addOption("d5actionSelect","Power on to IDE-R CDROM",203);b&1&&addOption("d5actionSelect","Reset to PXE",400);b&2&&addOption("d5actionSelect","Power on to PXE",401);addOption("d5actionSelect",
1333
"Custom action...",999);5<amtversion&&addOption("d5actionSelect","User consent...",998);setDialogMode(5,"Power Actions",3,powerActionDlgCheck)}else messagebox("Power Action",format("Unable to get system capabilities, error {0}",d))}
1332
-function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Power action completed."):QH(66,format("Power action error #{0}.",e));setDialogMode(1,"Power Action",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="Confirm execution of Intel® Remote Secure Erase?<br>Enter Secure Erase password if required.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>Password</div></div><br><div style=color:red><b>WARNING:</b> This will wipe data on the remote system.</div>",
1334
+function powerActionDlgCheck(){AmtOcrPba=null;AmtOcrPbaLength=0;var b=d5actionSelect.value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(62,"Power action completed."):QH(62,format("Power action error #{0}.",e));setDialogMode(1,"Power Action",0);setTimeout(function(){setDialogMode(0)},1300)}):104==b||105==b?(b="Confirm execution of Intel® Remote Secure Erase?<br>Enter Secure Erase password if required.<br><br><div style=height:16px><input type=password id=rsepass maxlength=32 style=float:right;width:240px><div>Password</div></div><br><div style=color:red><b>WARNING:</b> This will wipe data on the remote system.</div>",
1335
rsepass=1,setDialogMode(11,"Power Actions",3,powerActionDlg,b)):powerActionDlg()}
1334
-function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("Power Action","Checking state...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=b&&(c=!1);c?amtstack.Get("IPS_OptInService",
1335
-powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1336
+function powerActionDlg(){var b=d5actionSelect.value;if(999==b)showAdvPowerDlg();else if(998==b)amtstack.Get("IPS_OptInService",powerActionResponse0,0,1);else{10>b&&2<b&&null==urlvars.noredirdisconnect&&(3==desktop.State&&connectDesktop(),3==terminal.State&&connectTerminal(),void 0!=ider&&3==ider.state&&iderStop());statusbox("Power Action","Checking state...");null!=rsepass&&1===rsepass&&(rsepass=Q("rsepass").value);var c=!0;6>amtversion&&(c=!1);13==currentView&&8==b&&(c=!1);13!=currentView&&10>=
1337
+b&&(c=!1);c?amtstack.Get("IPS_OptInService",powerActionResponse0,0,1):amtstack.Get("AMT_BootSettingData",powerActionResponse1,0,1)}}var AvdPowerDlg;
1338
function showAdvPowerDlg(){try{Q("c38").value=2==amtsysstate.CIM_ServiceAvailableToElement.responses[0].PowerState?10:2}catch(b){}QV("d24dBiosPause",1==amtPowerBootCapabilities.BIOSPause);QV("d24dBiosSecureBoot",1==amtPowerBootCapabilities.BIOSSecureBoot);QV("d24dReflashBios",1==amtPowerBootCapabilities.BIOSReflash);QV("d24dBiosSetup",1==amtPowerBootCapabilities.BIOSSetup);QV("ForceDVDBootOption",1==amtPowerBootCapabilities.ForceCDorDVDBoot);QV("ForceDiagBootOption",1==amtPowerBootCapabilities.ForceDiagnosticBoot);
1339
QV("ForceHDBootOption",1==amtPowerBootCapabilities.ForceHardDriveBoot);QV("ForcePXEBootOption",1==amtPowerBootCapabilities.ForcePXEBoot);QV("d24dForceProgressEvents",1==amtPowerBootCapabilities.ForcedProgressEvents);QV("d24dUseIDER",1==amtPowerBootCapabilities.IDER);QV("d24dLockKeyboard",1==amtPowerBootCapabilities.KeyboardLock);QV("d24dLockPowerButton",1==amtPowerBootCapabilities.PowerButtonLock);QV("d24dLockResetButton",1==amtPowerBootCapabilities.ResetButtonLock);QV("d24dSerialOverLan",1==amtPowerBootCapabilities.SOL);
1340
QV("d24dSecureErase",1==amtPowerBootCapabilities.SecureErase);QV("d24dLockSleepButton",1==amtPowerBootCapabilities.SleepButtonLock);QV("d24dUserPasswordBypass",1==amtPowerBootCapabilities.UserPasswordBypass);QV("c45",1==amtPowerBootCapabilities.VerbosityQuiet);QV("c46",1==amtPowerBootCapabilities.VerbosityVerbose);QV("c47",1==amtPowerBootCapabilities.VerbosityScreenBlank);QV("d24p500",9<amtversion);QV("d24p501",9<amtversion);setDialogMode(24,"Custom Power Action",
1341
3,showAdvPowerDlgOk);showAdvPowerDlgChange()}function showAdvPowerDlgChange(){QV("idd_d24IDERBootDevice",Q("d24UseIDER").checked);QV("idd_d24RSEPass",Q("d24SecureErase")?Q("d24SecureErase").checked:!1);var b=500<=Q("c38").value&&600>Q("c38").value;QE("c40",!b);QE("c42",!b);QE("idd_d24IDERBootDevice",!b);QE("c44",!b);QE("idd_d24RSEPass",!b);QE("c49",!0)}
1340
-function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(66,"Power action completed."):QH(66,format("Power action error #{0}.",e));setDialogMode(1,"Power Action",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=Q("d24BiosSecureBoot").checked,
1342
+function showAdvPowerDlgOk(){var b=Q("c38").value;500==b||501==b?amtstack.RequestOSPowerStateChange(501==b?3:2,function(b,a,d,e){200==e?QH(62,"Power action completed."):QH(62,format("Power action error #{0}.",e));setDialogMode(1,"Power Action",0);setTimeout(function(){setDialogMode(0)},1300)}):(AvdPowerDlg={},AvdPowerDlg.Action=Q("c38").value,AvdPowerDlg.BIOSPause=Q("d24BiosPause").checked,AvdPowerDlg.BIOSSecureBoot=Q("d24BiosSecureBoot").checked,
1343
AvdPowerDlg.BIOSSetup=Q("d24BiosSetup").checked,AvdPowerDlg.BootMediaIndex=Q("c42").value,AvdPowerDlg.FirmwareVerbosity=Q("c44").value,AvdPowerDlg.ForcedProgressEvents=Q("d24ForceProgressEvents").checked,AvdPowerDlg.IDERBootDevice=Q("c43").value,AvdPowerDlg.LockKeyboard=Q("d24LockKeyboard").checked,AvdPowerDlg.LockPowerButton=Q("d24LockPowerButton").checked,AvdPowerDlg.LockResetButton=Q("d24LockResetButton").checked,AvdPowerDlg.LockSleepButton=Q("d24LockSleepButton").checked,
1344
AvdPowerDlg.ReflashBIOS=Q("d24ReflashBios").checked,AvdPowerDlg.UseIDER=Q("d24UseIDER").checked,AvdPowerDlg.UseSOL=Q("d24SerialOverLan").checked,AvdPowerDlg.UseSafeMode=Q("d24SafeMode").checked,AvdPowerDlg.UserPasswordBypass=Q("d24UserPasswordBypass").checked,AvdPowerDlg.SecureErase=Q("d24SecureErase").checked,!0===AvdPowerDlg.SecureErase&&0<Q("d24rsepass").value.length&&(AvdPowerDlg.RSEPassword=Q("d24rsepass").value),statusbox("Power Action","Checking state..."),amtstack.Get("IPS_OptInService",powerActionResponse0,
1345
0,1))}
@@ -1351,47 +1353,45 @@ function powerActionResponse1(b,c,a,d){if(200!=d)messagebox("Power Action",forma
1353
e.LockPowerButton=AvdPowerDlg.LockPowerButton,e.LockResetButton=AvdPowerDlg.LockResetButton,e.LockSleepButton=AvdPowerDlg.LockSleepButton,e.ReflashBIOS=AvdPowerDlg.ReflashBIOS,e.UseIDER=AvdPowerDlg.UseIDER,e.UseSOL=AvdPowerDlg.UseSOL,e.UseSafeMode=AvdPowerDlg.UseSafeMode,e.UserPasswordBypass=AvdPowerDlg.UserPasswordBypass,null!=e.SecureErase&&(e.SecureErase=AvdPowerDlg.SecureErase&&1==amtPowerBootCapabilities.SecureErase,1==e.SecureErase&&AvdPowerDlg.RSEPassword&&(e.RSEPassword=AvdPowerDlg.RSEPassword))):
1354
(e.BIOSPause=!1,e.EnforceSecureBoot=!1,e.BIOSSetup=99<b&&104>b,e.BootMediaIndex=0,e.FirmwareVerbosity=0,e.ForcedProgressEvents=!1,e.IDERBootDevice=202==b||203==b?1:0,e.LockKeyboard=!1,e.LockPowerButton=!1,e.LockResetButton=!1,e.LockSleepButton=!1,e.ReflashBIOS=!1,e.UseIDER=199<b&&300>b,e.UseSOL=13==currentView&&8!=b&&300>b,e.UseSafeMode=!1,e.UserPasswordBypass=!1,null!=e.SecureErase&&(e.SecureErase=(104==b||105==b)&&1==amtPowerBootCapabilities.SecureErase,!0===e.SecureErase&&0<rsepass.length&&(e.RSEPassword=
1355
rsepass)),rsepass=null);delete e.WinREBootEnabled;delete e.UEFILocalPBABootEnabled;delete e.UEFIHTTPSBootEnabled;delete e.SecureBootControlEnabled;delete e.BootguardStatus;delete e.OptionsCleared;delete e.BIOSLastStatus;delete e.UefiBootParametersArray;null!=e.UefiBootNumberOfParams&&(e.UefiBootNumberOfParams=0);console.log("Boot Action: "+b);console.log("Setting Boot Settings: "+ObjectToString2(e));statusbox("Power Action","Setting boot settings...");amtstack.CIM_BootConfigSetting_ChangeBootOrder(null,
1354
-function(a,b,c,d){200!=d?messagebox("Power Action",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1356
+function(a,b,c,d){200!=d?messagebox("Power Action",format("PUT CIM_BootConfigSetting_ChangeBootOrder, Error #{0}",d)+(c.Header&&c.Header.WsmanError?", "+c.Header.WsmanError:"")):0!=c.Body.ReturnValue?messagebox("Change Boot Order","(1) Change Boot Order returns "+c.Body.ReturnValueStr):amtstack.Put("AMT_BootSettingData",e,powerActionResponse2,0,1)},0,1)}}
1357
function powerActionResponse2(b,c,a,d,e){200!=d?messagebox("Power Action",format("PUT AMT_BootSettingData, Error #{0}",d)+(a.Header&&a.Header.WsmanError?", "+a.Header.WsmanError:"")):(statusbox("Power Action","Setting next boot..."),amtstack.SetBootConfigRole(1,powerActionResponse3x,0,1))}
1358
function powerActionResponse3x(b,c,a,d){b=d5actionSelect.value;c=null;if(999==b)0<c40.value&&(c=["Force CD/DVD Boot","Force PXE Boot","Force Hard-drive Boot","Force Diagnostic Boot"][c40.value-1]);else{if(300==b||301==b)c="Force Diagnostic Boot";if(400==b||401==b)c="Force PXE Boot";if(600==b||601==b)c="Force OCR UEFI HTTPS Boot"}Q("c40").value=0;console.log("ChangeBootOrder: "+c);amtstack.CIM_BootConfigSetting_ChangeBootOrder(null==c?c:'<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: '+
1359
c+"</Selector></SelectorSet></ReferenceParameters>",powerActionResponse3)}var targetPowerAction=0;
1358
-function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("Power Action","Performing power action...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);targetPowerAction=b;11==b&&(b=
1359
-10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("Power Action","Next boot action set.")}}function powerActionResponse4(b,c,a,d){200==d&&(QH(66,"Power action completed."),setDialogMode(1,"Power Action",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}
1360
+function powerActionResponse3(b,c,a,d){console.log("powerActionResponse3("+c+","+a+","+d+")");if(!errcheck(d,b))if(0!=a.Body.ReturnValue)messagebox("Change Boot Order","(2) Change Boot Order returns "+a.Body.ReturnValueStr);else{statusbox("Power Action","Performing power action...");b=d5actionSelect.value;if(100==b||201==b||203==b||300==b||401==b||601==b)b=2;if(101==b||200==b||202==b||301==b||400==b||600==b)b=10;104==b&&(b=2);105==b&&(b=10);999==b&&(b=AvdPowerDlg.Action);targetPowerAction=b;11==b&&
1361
+(b=10);999>b?(console.log("RequestPowerStateChange("+b+")"),amtstack.RequestPowerStateChange(b,powerActionResponse4)):messagebox("Power Action","Next boot action set.")}}function powerActionResponse4(b,c,a,d){200==d&&(QH(62,"Power action completed."),setDialogMode(1,"Power Action",0),setTimeout(function(){setDialogMode(0)},1300));amtstack.Get("CIM_AssociatedPowerManagementService",powerActionResponse5,0,1)}function powerActionResponse5(b,c,a,d){}
1362
function consentChanged(){QE("c49",6==d6ConsentText.value.length)}function changeConsentDisplay(){xxchangeConsentDisplay=!0;checkConsentDisplay()}function checkConsentDisplay(){amtstack.Get("IPS_SecIOService",checkConsentDisplayResponse1)}var xxchangeConsentDisplay=!1;
1363
function checkConsentDisplayResponse1(b,c,a,d){200==d&&(a.Body.DefaultScreen&&(a.Body.DefaultScreen=parseInt(a.Body.DefaultScreen)),a.Body.NumberOfScreens&&(a.Body.NumberOfScreens=parseInt(a.Body.NumberOfScreens)),1==xxchangeConsentDisplay?(xxchangeConsentDisplay=!1,a.Body.DefaultScreen=d6Display.value,amtstack.Put("IPS_SecIOService",a.Body,checkConsentDisplayResponse1)):(d6Display.value=a.Body.DefaultScreen,QV("d6ThirdDisplay",2<a.Body.NumberOfScreens)))}
1364
var xxStorage=null,xxStorageVendors=[],xxStorageApplications=[];function PullStorage(){amtFirstPull|=8;wsstack.comm.PerformAjax("",PullStorageResponse,null,0,"/amt-storage/","GET")}
1363
-function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(x){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1364
-b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}a=0;var d=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Manage Intel® AMT storage for this computer.<br><br>",r,p,e="";for(c in b){var k=0,q;for(q in b[c]){k++;var m=0,w;for(w in b[c][q]){m++;if(c!=r||q!=p)""!=e&&(d+=e,e="<br>"),r=c,p=q,e=""!=c?e+EscapeHtml(c+" / "+q):e+
1365
-"Root";var l='"'+c+(""!=c?"/":"")+q+(""!=q?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+q+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("Download","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][q][w].size+" bytes</i></div></div>");a++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(q)&&xxStorageApplications.push(q)}0==m&&(wsstack.comm.PerformAjax("",
1366
-function(){},null,0,"/amt-storage/"+c+"/"+q,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(d+=e);0==a&&(d+="<div style=padding-left:15px><br><i>No files found.</i></div><br>");d+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+AddButton("Upload...","UploadToStorage()"));QH(61,d)}else QH(61,"Unable to load storage data...<br/>"+
1367
-AddButton("Refresh","PullStorage()"))}function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",r=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("Vendor",b));""!=c&&(e+=addHtmlValue("Application",c));e+=addHtmlValue("Name",a);e+=addHtmlValue("Size",r.size+" bytes");r.link&&(e+=addHtmlValue("Link",r.link));setDialogMode(11,"Storage Item",5,showStorageDetailsEx,e,d)}}
1365
+function PullStorageResponse(b,c,a){0==amtstack.PendingBatchOperations&&refreshButtons(!0);if(200==c){QV("go21",!0);for(c=0;32>c;c++){do a=b.length,b=b.replace(String.fromCharCode(c),"");while(a>b.length)}try{xxStorage=JSON.parse(b)}catch(C){return}xxStorageVendors=[];xxStorageApplications=[];b=xxStorage.content;if(Array.isArray(b)){a={};for(c in b){var d=b[c].vendor?b[c].vendor:"";a[d]||(a[d]={});var e=b[c].app?b[c].app:"";a[d][e]||(a[d][e]={});b[c].name&&(a[d][e][b[c].name]=b[c])}xxStorage.content=
1366
+b=a}else{if(b["index.htm"]||b["logon.htm"])b[""]={"":{}};b["index.htm"]&&(b[""][""]["index.htm"]=b["index.htm"],delete b["index.htm"]);b["logon.htm"]&&(b[""][""]["logon.htm"]=b["logon.htm"],delete b["logon.htm"])}d=0;a=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Manage Intel® AMT storage for this computer.<br><br>";var q,p,e="";for(c in b){var k=0,r;for(r in b[c]){k++;var n=0,w;for(w in b[c][r]){n++;if(c!=q||r!=p)""!=e&&(a+=e,e="<br>"),q=c,p=r,e=""!=c?e+EscapeHtml(c+" / "+r):e+
1367
+"Root";var l='"'+c+(""!=c?"/":"")+r+(""!=r?"/":"")+w+'"',e=e+('<div class=itemBar onclick=showStorageDetails("'+c+'","'+r+'","'+w+'",'+l+")><div style=float:right>"),e=e+(" "+AddButton2("Download","DownloadFromStorage("+l+',"'+w+'",event)')),e=e+("</div><div style=padding-top:3px><b>"+EscapeHtml(w)+"</b>, <i>"+b[c][r][w].size+" bytes</i></div></div>");d++;-1==xxStorageVendors.indexOf(c)&&xxStorageVendors.push(c);-1==xxStorageApplications.indexOf(r)&&xxStorageApplications.push(r)}0==n&&(wsstack.comm.PerformAjax("",
1368
+function(){},null,0,"/amt-storage/"+c+"/"+r,"DELETE"),wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE"))}0==k&&wsstack.comm.PerformAjax("",function(){},null,0,"/amt-storage/"+c,"DELETE")}""!=e&&(a+=e);0==d&&(a+="<div style=padding-left:15px><br><i>No files found.</i></div><br>");q=!1;try{var x=new FileReader;q=null!=x&&null!=x.readAsBinaryString}catch(C){console.log(C)}a+="<br><td class=r1>"+TableEnd(AddRefreshButton("PullStorage()")+(q?AddButton("Upload...","UploadToStorage()"):
1369
+""));QH(57,a)}else QH(57,"Unable to load storage data...<br/>"+AddButton("Refresh","PullStorage()"))}function showStorageDetails(b,c,a,d){if(!xxdialogMode){var e="",q=xxStorage.content[b][c][a];""!=b&&(e+=addHtmlValue("Vendor",b));""!=c&&(e+=addHtmlValue("Application",c));e+=addHtmlValue("Name",a);e+=addHtmlValue("Size",q.size+" bytes");q.link&&(e+=addHtmlValue("Link",q.link));setDialogMode(11,"Storage Item",5,showStorageDetailsEx,e,d)}}
1370
function showStorageDetailsEx(b,c){2==b&&wsstack.comm.PerformAjax("",storageDeleteResponse,null,0,"/amt-storage/"+c,"DELETE")}function storageDeleteResponse(b,c){200!=c?messagebox("Storage",format("Unable to delete file (ERR{0}), check that the computer is powered on.",c)):PullStorage()}function DownloadFromStorage(b,c,a){xxdialogMode||(haltEvent(a),wsstack.comm.PerformAjax("",DownloadFromStorageEx,c,0,"/amt-storage/"+b,"GET"))}
1369
-function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank");a.opener=null;a.focus()}}function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}
1370
-function PushToStorageResponse(b,c,a){200!=c?messagebox("Storage",format("Unable to push file (ERR{0}), check that the computer is powered on.",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1371
+function DownloadFromStorageEx(b,c,a){200!=c||null==b?console.log(c,"Data = null"):saveAs(data2blob(b),a)}function OpenFromStorage(b,c){if(!xxdialogMode){haltEvent(c);var a=window.open("http://"+wsstack.comm.host+":"+wsstack.comm.port+"/amt-storage/"+b,"_blank","noopener,noreferrer");a.opener=null;a.focus()}}
1372
+function PushToStorage(b,c,a){var d=null;7E3<c.length&&(d=[b,c.substring(7E3)],c=c.substring(0,7E3));wsstack.comm.PerformAjax(c,PushToStorageResponse,d,0,"/amt-storage/"+b+(1==a?"?append=":""),"PUT")}function PushToStorageResponse(b,c,a){200!=c?messagebox("Storage",format("Unable to push file (ERR{0}), check that the computer is powered on.",c)):null!=a?PushToStorage(a[0],a[1],!0):PullStorage()}
1373
function UploadToStorage(b,c){if(!xxdialogMode){c||(c="");var a;a="<br>Select a small file to upload to storage and enter a vendor, application and filename.<br>";a=(b?a+('<br><div style=height:20px><input id=mstoragefile style=float:right;width:240px readonly disabled=disabled value="'+c+'" ><div>Upload file</div></div>'):a+"<br><div style=height:20px><input type=file id=mstoragefile style=float:right;width:240px onchange=SetStorageName()><div>Upload file</div></div>")+'<br><div style=height:16px><input id=mstoragevendor placeholder="Vendor" list=mstoragevendorlist maxlength=11 style=float:right;width:240px><div>Vendor name</div></div>';
1374
a+='<br><div style=height:16px><input id=mstorageapplication placeholder="App" list=mstorageapplicationlist maxlength=11 style=float:right;width:240px><div>Application name</div></div>';a+='<br><div style=height:16px><input id=mstoragefilename placeholder="Filename" maxlength=11 style=float:right;width:240px><div>Filename</div></div>';a+="<br><div style=height:16px><input id=mstoragetype placeholder=application/octet-stream list=mstoragetypelist style=float:right;width:240px><div>MIME Type</div></div>";
1375
a+='<br><div style=height:16px><input id=mstoragelink style=float:right;width:240px><div title="If set, creates a link to this content from the main web page">Link</div></div><br>';a+="<datalist id=mstoragevendorlist>";for(var d in xxStorageVendors)a+='<option value="'+xxStorageVendors[d]+'">';a+="</datalist>";a+="<datalist id=mstorageapplicationlist>";for(d in xxStorageApplications)a+='<option value="'+xxStorageApplications[d]+'">';a+='</datalist><datalist id=mstoragetypelist><option value="application/octet-stream"><option value="image/jpeg"><option value="text/html"><option value="text/plain"></datalist>';
1376
setDialogMode(11,"Storage Upload",3,UploadToStorageEx,a,b);b&&SetStorageName(c)}}function UploadToStorageEx(b,c){if(c)d=new FileReader,d.onload=UploadToStorageEx2,d.filename=Q("mstoragefile").value,d.readAsBinaryString(c);else{var a=Q("mstoragefile");if(1==a.files.length){var d=new FileReader;d.onload=UploadToStorageEx2;d.filename=a.files[0].name;d.readAsBinaryString(a.files[0])}}}
1377
function SetStorageName(b){b||(b=Q("mstoragefile"),b=1==b.files.length?b.files[0].name:"");b=b.split(" ").join("");var c=b.split("-");3==c.length&&12>c[0].length&&12>c[1].length&&(Q("mstoragevendor").value=c[0],Q("mstorageapplication").value=c[1],b=c[2]);b=b.split("-").join("");b.endsWith(".gz")&&(b=b.substring(0,b.length-3));b.endsWith(".htm")||b.endsWith(".html")?Q("mstoragetype").value="text/html":b.endsWith(".txt")&&(Q("mstoragetype").value="text/plain");11<b.length&&(b=b.substring(0,11));Q("mstoragefilename").value=
1378
b}
1377
-function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var r=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1378
-"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=r&&(a+="<link>"+r+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1379
-function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," days ").replace("H"," hours ").replace("M"," minutes ");b=b.replace(" 1 days "," 1 day ").replace(" 1 hours "," 1 hour ").replace(" 1 minutes "," 1 minute ");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}
1380
-function convertAmtDataStr(b){b=b.split("Z").join("").split("T").join("-").split(":").join("-").split("-");return new Date(b[0],b[1]-1,b[2],b[3],b[4],b[5])}var xxAlarms=null;
1381
-function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Manage wake alarms.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a=convertAmtDataStr(d[c].StartTime.Datetime),a="<b>"+d[c].ElementName+"</b>, wake on "+a.toLocaleString().replace(", "," at "),void 0!=d[c].Interval&&(a+=" and each"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&(a+=", delete when done"),
1382
-b+="<div class=itemBar onclick=showAlertDetails("+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("Edit...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>No wake alarms registered.</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("Remove all alarms","RemoveAllAlarms()")+AddButton("Add","showAddAlarm()"));
1383
-b+="<br><td class=r1>"+TableEnd(d+"</div>");QH(63,b)}},null,!0)}
1384
-function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+
1385
-e+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"Remove all wake alarms",3,RemoveAllAlarmsEx,"Confirm removal of all wake alarms?")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,r){0==--b&&PullAlarms()})}
1386
-function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=convertAmtDataStr(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M",
1387
-"M,").split(","),d=[0,0,0],e;for(e in a){var r=a[e].length-1;"D"==a[e][r]&&(d[0]=parseInt(a[e].substring(0,r)));"H"==a[e][r]&&(d[1]=parseInt(a[e].substring(0,r)));"M"==a[e][r]&&(d[2]=parseInt(a[e].substring(0,r)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1379
+function UploadToStorageEx2(b){var c;c=Q("mstoragevendor").value;var a=Q("mstorageapplication").value,d=Q("mstoragefilename").value;""==d&&(d="Filename");var e=Q("mstoragetype").value;""==e&&(e="application/octet-stream");var q=Q("mstoragelink").value;""!=c||""!=a||"logon.htm"!=d.toLowerCase()&&"index.htm"!=d.toLowerCase()?(""==c&&(c="Vendor"),""==a&&(a="App"),c=c+"/"+a+"/"+d):c=d.toLowerCase();a="<metadata><headers>";d=b.target.filename;d||(d=Q("mstoragefile").files[0].name);d.endsWith(".gz")&&(a+=
1380
+"<h>Content-Encoding: gzip</h>");a+="<h>Content-Type: "+e+"</h></headers>";""!=q&&(a+="<link>"+q+"</link>");a+="</metadata>"+b.target.result;PushToStorage(c,a)}function _fmtdatetime(b){return b.replace("T"," ").replace("Z","")}
1381
+function _fmtinterval(b){b=b.replace("T","").substring(b.indexOf("P")+1);b=" "+b.replace("D"," days ").replace("H"," hours ").replace("M"," minutes ");b=b.replace(" 1 days "," 1 day ").replace(" 1 hours "," 1 hour ").replace(" 1 minutes "," 1 minute ");return b.substring(0,b.length-1)}function _fmttimepad(b){for(b=""+b;2>b.length;)b="0"+b;return b}var xxAlarms=null;
1382
+function PullAlarms(){var b=TableStart2()+"<tr><td class=r1 style=padding-left:15px><br>Manage wake alarms.<br><br>";amtstack.Enum("IPS_AlarmClockOccurrence",function(c,a,d,e){if(200==e){QV("go23",!0);if(0<d.length)for(xxAlarms=d,c=0;c<d.length;c++)a="<b>"+d[c].ElementName+"</b>, wake on "+(new Date(d[c].StartTime.Datetime)).toLocaleString().replace(", "," at "),void 0!=d[c].Interval&&(a+=" and each"+_fmtinterval(d[c].Interval.Interval)),1==d[c].DeleteOnCompletion&&(a+=", delete when done"),b+="<div class=itemBar onclick=showAlertDetails("+
1383
+c+")><div style=float:right>",xxAccountAdminName&&(b+=" "+AddButton2("Edit...",'showAddAlarm(" + i + ")')),b+="</div><div style=padding-top:3px;width:auto;float:left;overflow-x:hidden>"+a+"</div></div>";else xxAlarms=null,b+="<div style=padding-left:15px><br><i>No wake alarms registered.</i></div><br>";d="<div> "+AddRefreshButton("PullAlarms()");xxAccountAdminName&&(d+=AddButton("Remove all alarms","RemoveAllAlarms()")+AddButton("Add","showAddAlarm()"));b+="<br><td class=r1>"+TableEnd(d+"</div>");
1384
+QH(59,b)}},null,!0)}
1385
+function prepareAlarmOccurenceTemplate(b,c,a,d,e){return'<d:AlarmTemplate xmlns:d="http://intel.com/wbem/wscim/1/amt-schema/1/AMT_AlarmClockService" xmlns:s="http://intel.com/wbem/wscim/1/ips-schema/1/IPS_AlarmClockOccurrence"><s:InstanceID>'+b+'</s:InstanceID><s:StartTime><p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+a+'</p:Datetime></s:StartTime><s:Interval><p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Interval></s:Interval><s:DeleteOnCompletion>"+e+
1386
+"</s:DeleteOnCompletion></d:AlarmTemplate>"}function RemoveAllAlarms(){setDialogMode(1,"Remove all wake alarms",3,RemoveAllAlarmsEx,"Confirm removal of all wake alarms?")}function RemoveAllAlarmsEx(){var b=xxAlarms.length,c;for(c in xxAlarms)amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,c,e,q){0==--b&&PullAlarms()})}
1387
+function showAddAlarm(b){if(!xxdialogMode){QE("d25alarm_name",!b);if(void 0!=b){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime);Q("d25alarm_name").value=c.ElementName;Q("d25alarm_sdate").value=a.getFullYear()+"-"+_fmttimepad(a.getMonth()+1)+"-"+_fmttimepad(a.getDate());Q("d25alarm_stime").value=a.getHours()+":"+_fmttimepad(a.getMinutes())+":"+_fmttimepad(a.getSeconds());if(c.Interval){var a=c.Interval.Interval.replace("P","").replace("T","").replace("D","D,").replace("H","H,").replace("M","M,").split(","),
1388
+d=[0,0,0],e;for(e in a){var q=a[e].length-1;"D"==a[e][q]&&(d[0]=parseInt(a[e].substring(0,q)));"H"==a[e][q]&&(d[1]=parseInt(a[e].substring(0,q)));"M"==a[e][q]&&(d[2]=parseInt(a[e].substring(0,q)))}Q("d25alarm_interval").value=d.join("-")}else Q("d25alarm_interval").value="";Q("d25alarm_doc").value=1==c.DeleteOnCompletion?1:0}else c=new Date,c.setDate((new Date).getDate()+1),Q("d25alarm_name").value="",Q("d25alarm_sdate").value=c.getFullYear()+"-"+_fmttimepad(c.getMonth()+1)+"-"+_fmttimepad(c.getDate()),
1389
Q("d25alarm_stime").value=c.getHours()+":"+_fmttimepad(c.getMinutes())+":00",Q("d25alarm_interval").value="",Q("d25alarm_doc").value=0;setDialogMode(25,"Add new alarm",void 0!=b?7:3,showAddAlarmOk,"",b);alertDialogUpdate()}}function alertDialogUpdate(){var b=Q("d25alarm_interval").value.split("-").length,b=0<Q("d25alarm_name").value.length&&3==Q("d25alarm_sdate").value.split("-").length&&3==Q("d25alarm_stime").value.split(":").length&&(1==b||3==b);QE("c49",b)}
1389
-function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getFullYear())+"-"+_fmttimepad(d.getMonth()+1)+"-"+_fmttimepad(d.getDate())+"T"+_fmttimepad(d.getHours())+":"+_fmttimepad(d.getMinutes())+":"+_fmttimepad(d.getSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e="P"+e[0]+"DT"+
1390
-e[1]+"H"+e[2]+"M",r=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,r);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("Add alarm",format("Failed to add alarm. Status: {0}.<br/>Verify the alarm is for a future time.",d)):0!=c.Body.ReturnValue?messagebox("Add alarm",format("Failed to add alarm {0}.<br/>Verify the alarm is for a future time.",c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),
1391
-a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=r,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("Edit alarm",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1392
-function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=convertAmtDataStr(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("Name",c.ElementName)+addHtmlValue("Wake time",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("Internal",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("After wake",1==c.DeleteOnCompletion?"Delete Alarm":"Keep Alarm")+"</div>";messagebox(format("Alarm {0}",c.ElementName),a);setDialogMode(11,"Alarm "+c.ElementName,
1393
-5,showAlertDetailsDelete,a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,r){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"Run Script",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}
1394
-function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1390
+function showAddAlarmOk(b,c){if(2==b)showAlertDetailsDelete(b,c);else{var a=Q("d25alarm_name").value,d=Q("d25alarm_sdate").value.split("-"),e=Q("d25alarm_stime").value.split(":"),d=new Date(d[0],d[1]-1,d[2],e[0],e[1],e[2],0),d=_fmttimepad(d.getUTCFullYear())+"-"+_fmttimepad(d.getUTCMonth()+1)+"-"+_fmttimepad(d.getUTCDate())+"T"+_fmttimepad(d.getUTCHours())+":"+_fmttimepad(d.getUTCMinutes())+":"+_fmttimepad(d.getUTCSeconds())+"Z",e=Q("d25alarm_interval").value.split("-");3!=e.length&&(e=[0,0,0]);var e=
1391
+"P"+e[0]+"DT"+e[1]+"H"+e[2]+"M",q=1==Q("d25alarm_doc").value,a=prepareAlarmOccurenceTemplate(a,a,d,e,q);void 0==c?wsstack.ExecMethodXml(amtstack.CompleteName("AMT_AlarmClockService"),"AddAlarm",a,function(a,b,c,d){200!=d?messagebox("Add alarm",format("Failed to add alarm. Status: {0}.<br/>Verify the alarm is for a future time.",d)):0!=c.Body.ReturnValue?messagebox("Add alarm",format("Failed to add alarm {0}.<br/>Verify the alarm is for a future time.",c.Body.ReturnValueStr)):PullAlarms()}):(a=Clone(xxAlarms[c]),
1392
+a.StartTime='<p:Datetime xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+d+"</p:Datetime>",a.Interval='<p:Interval xmlns:p="http://schemas.dmtf.org/wbem/wscim/1/common">'+e+"</p:Interval>",a.DeleteOnCompletion=q,amtstack.Put("IPS_AlarmClockOccurrence",a,function(a,b,c,d){200!=d?messagebox("Edit alarm",format("Failed to change alarm. Status: {0}.<br/>Verify the alarm for at a future time.",d)):PullAlarms()},null,null,{InstanceID:a.InstanceID}))}}
1393
+function showAlertDetails(b){if(!xxdialogMode){var c=xxAlarms[b],a=new Date(c.StartTime.Datetime),a="<div style=text-align:left>"+addHtmlValue("Name",c.ElementName)+addHtmlValue("Wake time",a.toLocaleString().replace(", "," at "));void 0!=c.Interval&&(a+=addHtmlValue("Internal",_fmtinterval(c.Interval.Interval)));a+=addHtmlValue("After wake",1==c.DeleteOnCompletion?"Delete Alarm":"Keep Alarm")+"</div>";messagebox(format("Alarm {0}",c.ElementName),a);setDialogMode(11,"Alarm "+c.ElementName,5,showAlertDetailsDelete,
1394
+a,b)}}function showAlertDetailsDelete(b,c){2==b&&amtstack.Delete("IPS_AlarmClockOccurrence",xxAlarms[c],function(a,b,c,q){PullAlarms()})}function script_runScriptDlg(){xxdialogMode||scriptstate||setDialogMode(11,"Run Script",3,script_runScriptDlgOk,"<br><input id=scriptopen type=file style=width:100% accept=.mescript>")}function script_runScriptDlgOk(b){if(1==b&&(b=Q("scriptopen"),1==b.files.length)){var c=new FileReader;c.onload=script_onScriptRead;c.readAsBinaryString(b.files[0])}}
1395
function script_onScriptRead(b){var c;try{c=JSON.parse(b.target.result)}catch(e){}if(20==currentView){c.scriptText&&(Q("scriptarea").value=c.scriptText);c.mescript&&(Q("compiledarea").value=rstr2hex(atob(c.mescript)));c.blocks?(script_setBuildBlocks(c.blocks),scriptViewButton(1)):(script_setBuildBlocks(),scriptViewButton(0));c.scriptBlocks?script_BlockScript=c.scriptBlocks:script_BuildingBlocks||(script_BlockScript=[]);for(var a in script_BlockScript)if(c=script_BlockScript[a],b=script_BuildingBlocks[c.xname]){b=
1396
Clone(b);b.id=c.id;b.xname=c.xname;for(var d in b.vars)c.vars[d]&&(b.vars[d].value=c.vars[d].value);script_BlockScript[a]=b}fupdatescript();delete scriptstate;resetScriptButton()}else a={_interactive:1,_certificates:1,_mode:"Firmware"},c&&c.mescript&&(scriptstate=script_setup(atob(c.mescript),a)),scriptstate?(scriptstate.wsstack=wsstack,scriptstate.amtstack=amtstack,scriptstate.onStep=script_updateScriptState,scriptstate.onConsole=script_console,scriptstate.start(100)):messagebox("Run Script","Invalid script file.")}
1397
function script_updateScriptState(){scriptstate&&(QV(11,0<scriptstate.state),center(),0==scriptstate.state&&(scriptstate=void 0))}function script_console(b){0==b.indexOf("INFO: ")&&(b=b.substring(6));0==b.indexOf("SUCCESS: ")&&(b=b.substring(9));0==b.indexOf("ERROR: ")&&(b=b.substring(7));QH(12,", "+b)}function script_Stop(){scriptstate&&(1==scriptstate.dialog&&setDialogMode(0),scriptstate.stop(),scriptstate.state=0,script_updateScriptState())}
@@ -1400,21 +1400,21 @@ function scriptLoadStartingBlocks(){var b=new XMLHttpRequest;b.onload=function()
1400
function scriptViewButton(b){script_BuilderView=b;QV("scripteditor",0==b);QV("scriptbuilder",1==b);QV("viewEditorButton",script_BuildingBlocks&&1==b);QV("viewBuilderButton",script_BuildingBlocks&&0==b)}
1401
function script_setBuildBlocks(b){script_BuildingBlocks=b;var c="";if(b)for(var a in b)95!=a.charCodeAt(0)&&(c+="<div id=sblock_"+a+' style=cursor:pointer;background-color:#ccc;width:auto;padding:5px;margin:2px ondblclick=script_faddblock("'+a+'") draggable=true ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) title="'+b[a].desc+'"',c+=">"+b[a].name+"</div>");QH("blocks",c);script_fonfilterchanged();scriptViewButton(script_BuildingBlocks?1:0)}
1402
function script_faddblock(b){var c=Clone(script_BuildingBlocks[b]);c.id=Math.random();c.xname=b;script_BlockScript.push(c);script_BlockScriptSelectedId=script_BlockScript.length-1;fupdatescript()}function script_feditblock(b){xxdialogMode||setDialogMode(11,format("Edit {0}",script_BuildingBlocks[b].name),3,script_feditblockEx,"Edit this block? This operation will reset the block editor and load the block code into the code editor.",b)}
1403
-function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var r=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+r.name+"\r\n#desc="+r.desc+"\r\n#type="+r.type+"\r\n";r.maxlength&&(a+="#maxlength="+r.maxlength+"\r\n");if(r.values)for(var p in r.values)a+="#values-"+p+"="+r.values[p]+"\r\n";a+="#value="+r.value+"\r\n##SWAP %%%"+e+"%%% "+
1404
-r.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1405
-function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),r={},p={},k=0,q;for(q in a)e=a[q].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):r[e[0].substring(1)]=e[1]);r.id&&(0<k&&(r.values=p),a=r.id,
1406
-delete r.id,c.vars[a]=r)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1403
+function script_feditblockEx(b,c){script_newScriptDlgOk();scriptViewButton(0);var a,d=script_BuildingBlocks[c];a=""+("##!BLOCK!##\r\n#id="+c+"\r\n#name="+d.name+"\r\n#desc="+d.desc+"\r\n##!BLOCK!##\r\n");for(var e in d.vars){var q=d.vars[e];a+="##!VAR!##\r\n#id="+e+"\r\n#name="+q.name+"\r\n#desc="+q.desc+"\r\n#type="+q.type+"\r\n";q.maxlength&&(a+="#maxlength="+q.maxlength+"\r\n");if(q.values)for(var p in q.values)a+="#values-"+p+"="+q.values[p]+"\r\n";a+="#value="+q.value+"\r\n##SWAP %%%"+e+"%%% "+
1404
+q.value+"\r\n"}a+="##!VAR!##\r\n##SWAP %%%~%%% 0\r\n\r\n##!BLOCK!##\r\n"+d.code+"\r\n##!BLOCK!##\r\n";Q("scriptarea").value=a}
1405
+function script_fConvertScriptToJsonBlock(b){var c={};b=b.split("##!BLOCK!##\n");var a=b[1].split("\n"),d;for(d in a){var e=a[d].split("=");2==e.length&&(c[e[0].substring(1)]=e[1])}c.vars={};scriptvariables=b[2].split("##!VAR!##\n");for(d in scriptvariables){var a=scriptvariables[d].split("\n"),q={},p={},k=0,r;for(r in a)e=a[r].split("="),2==e.length&&e[1]&&e[0]&&0<e[0].length&&("#values-"==e[0].substring(0,8)?(p[e[0].substring(8)]=e[1],k++):q[e[0].substring(1)]=e[1]);q.id&&(0<k&&(q.values=p),a=q.id,
1406
+delete q.id,c.vars[a]=q)}c.code=b[3];a=c.id;delete c.id;d={};d[a]=c;return JSON.stringify(d,null," ")}function script_fonfilterchanged(){var b=Q("blockfilter").value.toLowerCase(),c;for(c in script_BuildingBlocks)95!=c.charCodeAt(0)&&QV("sblock_"+c,0<=script_BuildingBlocks[c].name.toLowerCase().indexOf(b)||0<=script_BuildingBlocks[c].desc.toLowerCase().indexOf(b))}var script_fonclickDblClickDetectIndex=null,script_fonclickDblClickDetectTime=null;
1407
function script_fonclick(b,c){if(!xxdialogMode){script_BlockScriptSelectedId=null;c&&(c=fgetParentWithId(c),c.id.startsWith("xblock_")&&(script_BlockScriptSelectedId=c.id.substring(7)));fupdatescript();haltEvent(b);if(script_fonclickDblClickDetectIndex==script_BlockScriptSelectedId&&250>(new Date).getTime()-script_fonclickDblClickDetectTime)return script_foneditclick(script_BlockScriptSelectedId);script_fonclickDblClickDetectIndex=script_BlockScriptSelectedId;script_fonclickDblClickDetectTime=(new Date).getTime()}}
1408
function script_fondragstart(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="0.4",b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("scriptbuilder/block",c.id))}function script_fondragend(b,c){xxdialogMode||(c=fgetParentWithId(c),c.style.opacity="1.0")}function script_fondragenter(b,c){xxdialogMode||(fgetParentWithId(c).style["border-top"]="solid 2px black")}
1409
function script_fondragleave(b,c){if(!xxdialogMode){b=b.originalEvent||b;var a=document.elementFromPoint(b.pageX,b.pageY);c.contains(a)||(fgetParentWithId(c).style["border-top"]="none")}}
1410
function script_fondrop(b,c){if(!xxdialogMode){c=fgetParentWithId(c);var a,d=b.dataTransfer.getData("scriptbuilder/block"),e=parseInt(c.id.substring(7));""==d?documentFileSelectHandler(b):(d.startsWith("sblock_")?(a=Clone(script_BuildingBlocks[d.substring(7)]),a.id=Math.random(),a.xname=d.substring(7)):(d=parseInt(d.substring(7)),a=script_BlockScript[d],script_BlockScript.splice(d,1),e>d&&e--),"scriptblocks"==c.id?(a&&script_BlockScript.push(a),script_BlockScriptSelectedId=script_BlockScript.length-
1411
1):(script_BlockScript.splice(e,0,a),script_BlockScriptSelectedId=e),fupdatescript(),haltEvent(b))}}
1412
-function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var r=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)r='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1413
-if(3==c.vars[e].type){var r="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)r+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";r+="</select>"}4==c.vars[e].type&&(r='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(r="");6==c.vars[e].type&&(r='<input type=file title="'+
1414
-c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+r+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),q;for(q in c.vars[e].values)r="",0<=c.vars[e].value.indexOf(q)&&(r=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1415
-e+"-"+q+""+r+">"+c.vars[e].values[q]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1416
-function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var r=Q("scriptXvalue_"+d);if(1==r.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1417
-fupdatescript()};p.readAsBinaryString(r.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1412
+function script_foneditclick(b){if(!xxdialogMode){var c=script_BlockScript[b];script_BlockScriptSelectedId=b;fupdatescript();if(null!=c){var a=c.vars?7:5,d=c.desc+"<br><br>";if(c.vars)for(var e in c.vars){var q=c.vars[e].value,p="";c.vars[e].maxlength&&(p+=" maxlength="+c.vars[e].maxlength);2==c.vars[e].type&&(p+=" onkeypress='return numbersOnly(event)'");if(1==c.vars[e].type||2==c.vars[e].type)q='<input title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>";
1413
+if(3==c.vars[e].type){var q="<select title='"+c.vars[e].desc+"' id=scriptXvalue_"+e+" style=width:100%;padding:0;margin:0>",k;for(k in c.vars[e].values)q+="<option value="+k+(k==c.vars[e].value?" selected":"")+">"+c.vars[e].values[k]+"</option>";q+="</select>"}4==c.vars[e].type&&(q='<input type=password autocomplete=off title="'+c.vars[e].desc+'" id=scriptXvalue_'+e+' value="'+c.vars[e].value+'" '+p+" style=width:100%></input>");5==c.vars[e].type&&(q="");6==c.vars[e].type&&(q='<input type=file title="'+
1414
+c.vars[e].desc+'" id=scriptXvalue_'+e+" "+p+" style=width:100%></input>");d+='<table style=width:100% title="'+c.vars[e].desc+'"><td style=width:120px>'+c.vars[e].name+"<td><b>"+q+"</b></table>";if(5==c.vars[e].type){var d=d+("<ul id=scriptXvalue_"+e+' style="list-style-type:none;height:100px;overflow:auto;width:100%;border:1px solid #000;background-color:white;overflow-x:hidden;margin:0;padding:0">'),r;for(r in c.vars[e].values)q="",0<=c.vars[e].value.indexOf(r)&&(q=" checked"),d+="<li><label><input type=checkbox id=scriptXvaluex_"+
1415
+e+"-"+r+""+q+">"+c.vars[e].values[r]+"</label></li>";d+="</ul>"}}}setDialogMode(11,c.name,a,script_foneditclickEx,d,b)}}
1416
+function script_foneditclickEx(b,c){if(!xxdialogMode){if(2==b)script_BlockScript.splice(c,1),script_BlockScriptSelectedId==c&&(script_BlockScriptSelectedId=null);else{var a=script_BlockScript[c];if(a.vars)for(var d in a.vars)if(5==a.vars[d].type){a.vars[d].value=[];for(var e in a.vars[d].values)Q("scriptXvaluex_"+d+"-"+e).checked&&a.vars[d].value.push(e)}else if(6==a.vars[d].type){var q=Q("scriptXvalue_"+d);if(1==q.files.length){var p=new FileReader;p.onload=function(b){a.vars[d].value=btoa(b.target.result);
1417
+fupdatescript()};p.readAsBinaryString(q.files[0])}}else a.vars[d].value=Q("scriptXvalue_"+d).value}fupdatescript()}}function fgetParentWithId(b){for(;!b.id;)b=b.parentElement;return b}
1418
function fupdatescript(){var b="",c;for(c in script_BlockScript){b+="<div id=xblock_"+c+" style=cursor:pointer;min-height:24px;background-color:#"+(script_BlockScriptSelectedId==c?"aaa":"ccc")+';width:auto;padding:5px;margin:2px draggable=true onclick=script_fonclick(event,this) ondragenter=script_fondragenter(event,this) ondragleave=script_fondragleave(event,this) ondragstart=script_fondragstart(event,this) ondragend=script_fondragend(event,this) ondrop=script_fondrop(event,this) title="'+script_BlockScript[c].desc+
1419
'"';b+="><input style=float:right type=button value=Edit... onclick=script_foneditclick("+c+")><div style=font-size:16px><b>"+script_BlockScript[c].name+"</b>";if(script_BlockScript[c].vars){var a=0,b=b+'<table class="scriptBlockVar us" cellpadding=0 cellspacing=0 style=width:100%;border-radius:5px;margin-top:8px>',d;for(d in script_BlockScript[c].vars){var e=script_BlockScript[c].vars[d].value;4==script_BlockScript[c].vars[d].type&&0<script_BlockScript[c].vars[d].value.length&&(e="*****");3==script_BlockScript[c].vars[d].type&&
1420
(e=script_BlockScript[c].vars[d].values[script_BlockScript[c].vars[d].value]);6==script_BlockScript[c].vars[d].type&&(e=script_BlockScript[c].vars[d].value?"Binary file, "+script_BlockScript[c].vars[d].value.length+" bytes":"Not set");b+='<tr title="'+script_BlockScript[c].vars[d].desc+'"><td width=200px style="'+(0<a?"border-top:1px solid #a810a8":"")+'"><p>'+script_BlockScript[c].vars[d].name+'<td style="'+(0<a?"border-top:1px solid #a810a8":"")+'">'+e;a++}b+="<tr><td style=height:3px></table>"}b+=
@@ -1429,19 +1429,19 @@ function editscript_updateScriptState(b){var c="";if(b&&null!=b){var a=[],d;for(
1429
50)+"...");QH("EditScriptStatus",c)}function script_toString(b){return"object"==typeof b?JSON.stringify(b):b}
1430
function script_saveScript(b){xxdialogMode||scriptstate||(b&&1==b.shiftKey?(setDialogMode(11,"Script Block",1,null,"<br><textarea id=scriptSaveScriptJsonBlock style=width:100%;height:200px;resize:vertical />"),QH("scriptSaveScriptJsonBlock",script_fConvertScriptToJsonBlock(Q("scriptarea").value))):setDialogMode(11,"Save Script",3,script_saveScriptOk,"<br><input id=scriptsavename style=width:100% value=test.mescript >"))}
1431
function script_saveScriptOk(){if(!xxdialogMode){var b=JSON.stringify({scriptText:Q("scriptarea").value,mescript:btoa(script_compile(Q("scriptarea").value)),blocks:script_StartingBuildingBlocks,scriptBlocks:script_BlockScript},null," ");saveAs(data2blob(b),Q("scriptsavename").value)}}var xxdialogMode,xxdialogFunc,xxdialogButtons,xxdialogTag;
1432
-function setDialogMode(b,c,a,d,e,r){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=r;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(64,a&2);QV("c50",a&4);c&&QH(65,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(69,e):QH(66,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1432
+function setDialogMode(b,c,a,d,e,q){xxdialogMode=b;xxdialogFunc=d;xxdialogButtons=a;xxdialogTag=q;QE("c49",!0);QV("c49",a&1);QV("c48",a&2);QV(60,a&2);QV("c50",a&4);c&&QH(61,c);for(c=1;26>c;c++)QV("dialog"+c,c==b);QV("dialog",b);e&&(11==b?QH(65,e):QH(62,e));0!=xxdialogMode&&iderToggleDiskMap(!1)}
1433
function dialogclose(b){var c=xxdialogFunc,a=xxdialogButtons,d=xxdialogTag;setDialogMode();(a&8||b)&&c&&c(b,d)}
1434
-function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(47).offsetWidth&&(QS("Desk")["max-width"]=Q(47).offsetWidth);
1435
-fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(66,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(66,c);setDialogMode(1,b)}
1436
-function SaveJsonFile(b,c,a,d){var e="",r={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,r={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(r.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1437
-p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);r[c]=d;saveAs(data2blob(JSON.stringify(r,null," ").replace(/\n/g,"\r\n")),b+e+".json")}var httpErrorTable={200:"OK",401:"Authentication Error",408:"Timeout Error",601:"WSMAN Parsing Error",602:"Unable to parse HTTP response header",603:"Unexpected HTTP enum response",604:"Unexpected HTTP pull response",997:"Invalid Digest Realm"};
1434
+function center(){QS("dialog").left=(getDocWidth()-400)/2+"px";var b=0,c=Q(8).offsetHeight-(0==fullscreen?126:53);""==QS(11).display&&(b+=32);""==QS(9).display&&(b+=32);QS(16).height=Q(8).offsetHeight-b-(0==fullscreen?16:0)+"px";QS("Desk")["max-height"]=c-b+"px";QS("Desk")["max-width"]=Q(8).offsetWidth-(0==fullscreen?32:0)+"px";0!=Q(43).offsetWidth&&(QS("Desk")["max-width"]=Q(43).offsetWidth);
1435
+fullscreen?(QS(16)["overflow-y"]="hidden",b=(c-b-Q("Desk").offsetHeight)/2,QS("Desk")["margin-top"]=b+"px",QS("Desk")["margin-bottom"]=b+"px"):(QS(16)["overflow-y"]="scroll",QS("Desk")["margin-top"]="0",QS("Desk")["margin-bottom"]="0")}function messagebox(b,c){QH(62,c);setDialogMode(1,b,1)}function statusbox(b,c){QH(62,c);setDialogMode(1,b)}
1436
+function SaveJsonFile(b,c,a,d){var e="",q={},p=new Date;amtsysstate&&(e="-"+amtsysstate.AMT_GeneralSettings.response.HostName,q={webappversion:version,description:a,hostname:amtsysstate.AMT_GeneralSettings.response.HostName,localtime:Date(),utctime:(new Date).toUTCString(),isotime:(new Date).toISOString()},HardwareInventory&&(q.systemid=guidToStr(HardwareInventory.CIM_ComputerSystemPackage.response.PlatformGUID.toLowerCase())));e+="-"+p.getFullYear()+"-"+("0"+(p.getMonth()+1)).slice(-2)+"-"+("0"+
1437
+p.getDate()).slice(-2)+"-"+("0"+p.getHours()).slice(-2)+"-"+("0"+p.getMinutes()).slice(-2);q[c]=d;saveAs(data2blob(JSON.stringify(q,null," ").replace(/\n/g,"\r\n")),b+e+".json")}var httpErrorTable={200:"OK",401:"Authentication Error",408:"Timeout Error",601:"WSMAN Parsing Error",602:"Unable to parse HTTP response header",603:"Unexpected HTTP enum response",604:"Unexpected HTTP pull response",997:"Invalid Digest Realm"};
1438
function errcheck(b,c){if(null==wsstack||amtstack!=c)return!0;200!=b&&9!=b&&(setDialogMode(),wsstack.comm.FailAllError=999,amtstack.CancelAllQueries(999),QH(5,httpErrorTable[b]?httpErrorTable[b]:format("Error #{0}",b)),401==b&&QH(5,'Authentication Error<br /><br /><input type=button value="Set new credentials" onclick=meshcentral2credCallback(true)></input>'),go(100),QS(3).width=0);return 200!=b}
1439
function goiFrame(b,c,a){if(!xxdialogMode){go(c);if(1==b.shiftKey||0==Q(15).src.endsWith(a))Q(15).src=a;QV(16,!1);QV(14,!0)}}function go(b,c){if(!xxdialogMode||1==c){QV(14,!1);QV(16,!0);QV(4,100==b);QV(6,100>b);for(var a=0;80>a;a++){QV("p"+a,a==b);var d=QS("go"+a);d&&(d["background-color"]=a==b?"#abcae1":"");d&&(d["background-color"]=a==b?"gray":"")}currentView=b;center()}}
1440
-function portsFromHost(b,c){var a=decodeURIComponent(b).split(":"),d=0==c?16992:16993,e=0==c?16994:16995;1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}
1441
-function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,r;for(r in b){var p=b.charCodeAt(r);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}
1442
-function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("Call Error",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}
1443
-function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}
1444
-function AddRefreshButton(b){return'<input type=button name=refreshbtn value="Refresh" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}
1440
+function portsFromHost(b,c){b=decodeURIComponent(b);var a=b.split(":"),d=0==c?16992:16993,e=0==c?16994:16995;if(0==a[0].indexOf("[")){a=b.split("]:");if(1==a.length)return{host:b.substring(1,b.length-1),http:d,redir:e};if(1<a.length){var q=a[1].split(":");0<q.length&&(d=parseInt(q[0]));1<q.length&&(e=parseInt(q[1]))}return{host:a[0].substring(1),http:d,redir:e}}1<a.length&&(d=parseInt(a[1]));2<a.length&&(e=parseInt(a[2]));return{host:a[0],http:d,redir:e}}
1441
+function addLink(b,c){return"<a style=cursor:pointer;color:blue onclick='"+c+"'>♦ "+b+"</a>"}function addLinkConditional(b,c,a){return a?addLink(b,c):b}function haltEvent(b){b.preventDefault&&b.preventDefault();b.stopPropagation&&b.stopPropagation();return!1}function addOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;Q(b).add(d)}function addDisabledOption(b,c,a){var d=document.createElement("option");d.text=c;d.value=a;d.disabled=1;Q(b).add(d)}
1442
+function passwordcheck(b){if(8>b.length)return!1;var c=0,a=0,d=0,e=0,q;for(q in b){var p=b.charCodeAt(q);64<p&&91>p?c=1:96<p&&123>p?a=1:47<p&&58>p?d=1:e=1}return 4==c+a+d+e}function methodcheck(b){return b&&null!=b&&b.Body&&0!=b.Body.ReturnValue?(messagebox("Call Error",b.Header.Method+": "+(b.Body.ReturnValueStr+"").replace("_"," ")),!0):!1}function TableStart(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td width=200px><p><td>"}
1443
+function TableStart2(){return"<table class='log1 us' cellpadding=0 cellspacing=0 style=width:100%;border-radius:8px><tr><td><p><td>"}function TableEntry(b,c){return"<tr><td class=r1><p>"+b+"<td class=r1>"+c}function FullTable(b,c){var a=TableStart();for(i in b)i&&b[i]&&(a+=TableEntry(i,b[i]));return a+TableEnd(c)}function TableEnd(b){return"<tr><td colspan=2><p>"+(b?b:"")+"</table>"}function AddButton(b,c){return"<input type=button value='"+b+"' onclick='"+c+"' style=margin:4px>"}
1444
+function AddButton2(b,c,a){return"<input type=button value='"+b+"' onclick='"+c+"' "+a+">"}function AddRefreshButton(b){return'<input type=button name=refreshbtn value="Refresh" onclick=\'refreshButtons(false);'+b+"' style=margin:4px "+(0==refreshButtonsState?"disabled":"")+">"}function MoreStart(){return'<a style=cursor:pointer;color:blue id=morexxx1 onclick=QV("morexxx1",false);QV("morexxx2",true)>▼ More</a><div id=morexxx2 style=display:none><br><hr>'}
1445
function MoreEnd(){return'<a style=cursor:pointer;color:blue onclick=QV("morexxx2",false);QV("morexxx1",true)>▲ Less</a></div>'}function getSelectedOptions(b){for(var c=[],a,d=0,e=b.options.length;d<e;d++)a=b.options[d],a.selected&&c.push(a.value);return c}function getInstance(b,c){for(var a in b)if(b[a].InstanceID==c)return b[a];return null}function getItem(b,c,a){for(var d in b)if(b[d][c]==a)return b[d];return null}
1446
function guidToStr(b){return b.substring(6,8)+b.substring(4,6)+b.substring(2,4)+b.substring(0,2)+"-"+b.substring(10,12)+b.substring(8,10)+"-"+b.substring(14,16)+b.substring(12,14)+"-"+b.substring(16,20)+"-"+b.substring(20)}function getUrlVars(){for(var b,c=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),d=0;d<a.length;d++)b=a[d].indexOf("="),0<b&&(c[a[d].substring(0,b)]=a[d].substring(b+1,a[d].length));return c}
1447
function getDocWidth(){return window.innerWidth?window.innerWidth:document.documentElement&&document.documentElement.clientWidth&&0!=document.documentElement.clientWidth?document.documentElement.clientWidth:document.getElementsByTagName("body")[0].clientWidth}
webserver.js
+31
@@ -4423,6 +4423,36 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
4423
}
4424
}
4425
4426
+ if (req.query.cores != null) {
4427
+ // Send list of agent cores
4428
+ var response = '<html><head><title>Mesh Agents Cores</title><style>table,th,td { border:1px solid black;border-collapse:collapse;padding:3px; }</style></head><body style=overflow:auto><table>';
4429
+ response += '<tr style="background-color:lightgray"><th>Name</th><th>Size</th><th>Comp</th><th>Decompressed Hash SHA384</th></tr>';
4430
+ for (var i in parent.defaultMeshCores) {
4431
+ response += '<tr><td>' + i.split(' ').join(' ') + '</td><td style="text-align:right"><a download href="/meshagents?dlcore=' + i + '">' + parent.defaultMeshCores[i].length + (req.query.key ? ('?key=' + req.query.key) : '') + '</a></td><td style="text-align:right"><a download href="/meshagents?dlccore=' + i + (req.query.key ? ('?key=' + req.query.key) : '') + '">' + parent.defaultMeshCoresDeflate[i].length + '</a></td><td>' + Buffer.from(parent.defaultMeshCoresHash[i], 'binary').toString('hex') + '</td></tr>';
4432
+ }
4433
+ response += '</table><a href="' + req.originalUrl.split('?')[0] + (req.query.key ? ('?key=' + req.query.key) : '') + '">Mesh Agents</a></body></html>';
4434
+ res.send(response);
4435
+ return;
4436
+ }
4437
+
4438
+ if (req.query.dlcore != null) {
4439
+ // Download mesh core
4440
+ var bin = parent.defaultMeshCores[req.query.dlcore];
4441
+ if (bin == null) { res.sendStatus(404); return; }
4442
+ setContentDispositionHeader(res, 'application/octet-stream', req.query.dlcore + '.js', null, 'meshcore.js');
4443
+ res.send(bin);
4444
+ return;
4445
+ }
4446
+
4447
+ if (req.query.dlccore != null) {
4448
+ // Download compressed mesh core
4449
+ var bin = parent.defaultMeshCoresDeflate[req.query.dlccore];
4450
+ if (bin == null) { res.sendStatus(404); return; }
4451
+ setContentDispositionHeader(res, 'application/octet-stream', req.query.dlccore + '.js.deflate', null, 'meshcore.js.deflate');
4452
+ res.send(bin);
4453
+ return;
4454
+ }
4455
+
4456
// Send a list of available mesh agents
4457
var response = '<html><head><title>Mesh Agents</title><style>table,th,td { border:1px solid black;border-collapse:collapse;padding:3px; }</style></head><body style=overflow:auto><table>';
4458
response += '<tr style="background-color:lightgray"><th>ID</th><th>Description</th><th>Link</th><th>Size</th><th>SHA384</th><th>MeshCmd</th></tr>';
@@ -4440,6 +4470,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
4470
response += '<td><a download href="' + originalUrl + '?meshcmd=' + agentinfo.id + (req.query.key ? ('&key=' + req.query.key) : '') + '">' + agentinfo.rname.replace('agent', 'cmd') + '</a></td></tr>';
4471
}
4472
response += '</table>';
4473
+ response += '<a href="' + originalUrl + '?cores=1' + (req.query.key ? ('&key=' + req.query.key) : '') + '">MeshCores</a> ';
4474
if (coreDumpsAllowed) { response += '<a href="' + originalUrl + '?dumps=1' + (req.query.key ? ('&key=' + req.query.key) : '') + '">MeshAgent Crash Dumps</a>'; }
4475
response += '</body></html>';
4476
res.send(response);