function utf16to8(str) {
var out, i, len, c;
out = "";
len = str.length;
for(i = 0; i < len; i++) {
c = str.charCodeAt(i);
if ((c >= 0x0001) && (c <= 0x007F)) {
out += str.charAt(i);
} else if (c > 0x07FF) {
out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F));
out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F));
out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
} else {
out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F));
out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
}
}
return out;
}
function utf8to16(str) {
var out, i, len, c;
var char2, char3;
out = "";
len = str.length;
i = 0;
while(i < len) {
c = str.charCodeAt(i++);
switch(c >> 4){
case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7:
// 0xxxxxxx
out += str.charAt(i-1);
break;
case 12: case 13:
// 110x xxxx 10xx xxxx
char2 = str.charCodeAt(i++);
out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
break;
case 14:
// 1110 xxxx 10xx xxxx 10xx xxxx
char2 = str.charCodeAt(i++);
char3 = str.charCodeAt(i++);
out += String.fromCharCode(((c & 0x0F) << 12) |
((char2 & 0x3F) << 6) |
((char3 & 0x3F) << 0));
break;
}
}
return out;
}var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var base64DecodeChars = new Array(
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, -1, 63,
52, 53, 54, 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, -1, -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, -1, -1, -1, -1, -1);
function base64encode(str) {
var out, i, len;
var c1, c2, c3;
len = str.length;
i = 0;
out = "";
while(i < len) {
c1 = str.charCodeAt(i++) & 0xff;
if(i == len){
out += base64EncodeChars.charAt(c1 >> 2);
out += base64EncodeChars.charAt((c1 & 0x3) << 4);
out += "==";
break;
}
c2 = str.charCodeAt(i++);
if(i == len){
out += base64EncodeChars.charAt(c1 >> 2);
out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
out += base64EncodeChars.charAt((c2 & 0xF) << 2);
out += "=";
break;
}
c3 = str.charCodeAt(i++);
out += base64EncodeChars.charAt(c1 >> 2);
out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
out += base64EncodeChars.charAt(((c2 & 0xF) << 2) | ((c3 & 0xC0) >>6));
out += base64EncodeChars.charAt(c3 & 0x3F);
}
return out;
}
function base64decode(str) {
var c1, c2, c3, c4;
var i, len, out;
len = str.length;
i = 0;
out = "";
while(i < len) {
/* c1 */
do {
c1 = base64DecodeChars[str.charCodeAt(i++) & 0xff];
} while(i < len && c1 == -1);
if(c1 == -1)
break;
/* c2 */
do {
c2 = base64DecodeChars[str.charCodeAt(i++) & 0xff];
} while(i < len && c2 == -1);
if(c2 == -1)
break;
out += String.fromCharCode((c1 << 2) | ((c2 & 0x30) >> 4));
/* c3 */
do {
c3 = str.charCodeAt(i++) & 0xff;
if(c3 == 61)
return out;
c3 = base64DecodeChars[c3];
} while(i < len && c3 == -1);
if(c3 == -1)
break;
out += String.fromCharCode(((c2 & 0XF) << 4) | ((c3 & 0x3C) >> 2));
/* c4 */
do {
c4 = str.charCodeAt(i++) & 0xff;
if(c4 == 61)
return out;
c4 = base64DecodeChars[c4];
} while(i < len && c4 == -1);
if(c4 == -1)
break; out += String.fromCharCode(((c3 & 0x03) << 6) | c4); } return out;}function strdecode(str){ return utf8to16(base64decode(str));}document.write(strdecode('Jm5ic3A7Jm5ic3A75p6X5pma56eL6K+0552A77yM5bCx5oqs5aS055yL5ZCR6auY56m644CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5omA5pyJ5Lq656iN5b6u5YiG5pWj5LiA5Lqb5YmN6L+b77yM5bC96YeP56uZ5Zyo6auY5aSE77yM6KeG6YeO55yL6L+c5LiA54K544CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5rKQ5LqR5bOw6YKj5a625LyZ77yM5LiN566h5bmy5LuA5LmI77yM6IKv5a6a6YO95Lya5pyJ5aSn5Yqo6Z2Z55qE77yM5rOo5oSP55WZ5oSP44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5bCx566X5rKh5pyJ5Yqo6Z2Z77yM56uZ5Zyo6auY5aSE5Lmf6IO96K6p5LuW5pu05a655piT5Y+R546w5oiR5Lus44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76L+Z5Liq5a6J5o6S5Y2B5YiG5ZCI55CG77yM5LyX5Lq657q357q354K55LqG54K55aS077yM5bCx5ZCE6Ieq5b+r6YCf5pWj5byA77yM6ISa6LiP6L275Yqf56uZ5Zyo5LqG5qCR6aG244CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75L+d5oyB552A6KeG6YeO5YaF6IO95aSf5LqS55u455yL5Yiw5YW25LuW5Lq655qE6Led56a777yM5Yeg5Lq65bCx57un57ut5rex5YWl44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76L+Z56eN5om+5Lq655qE5pa55rOV56Gu5a6e5pyJ5pWI77yM5L2G5Lmf5pyJ5byK56uv44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76YKj5bCx5piv5Lmf5b6I5a655piT6KKr5pWM5Lq66ZSB5a6a44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75rex5YWl5rKh5aSa5LmF77yM5rKQ5LqR5bOw5rKh5om+5Yiw77yM5LuO5ZCE5aSE56qc5Ye65p2l55qE55av5a2Q5YCS5piv5LiN5bCR44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75aW95Zyo6L+Z5Lqb5Lq66YO95piv5pWj5YW15ri45YuH77yM5LiN5oiQ57uE57uH77yM5Yeg5Lq655u45LqS54Wn5bqU5LiL77yM6YO95rKh5pyJ6YGH5Yiw5aSq5aSn55qE6Zeu6aKY44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Y+I5ZCR5YmN5rex5YWl5LqG5LiA5q615pe26Ze05ZCO77yM6ICQ5b+D5pyA5beu55qE6Z2S56u557uI5LqO5b+N5LiN5L2P6YGT77ya4oCc5oCO5LmI6L+Z5LmI5LmF6L+Y6KeB5LiN5Yiw5Lq65ZWK77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5LuW5Lya5LiN5Lya5ZKM5oiR5Lus55u05o6l6ZSZ5byA5LqG77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5oiW6ICF6K+077yM5LuW5Y6L5qC55YS/5bCx5rKh5pyJ6KKr5Lyg6YCB6L+b5Y2X6YOo77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76JOd6aaZ6L276L275pGH5LqG5pGH5aS06K+077ya4oCc5bqU6K+l5LiN5Lya77yM5b2T5pe25piv6YKj5Liq5ZKM5rKQ5LqR5bOw5Lqk5omL55qE5pWM5Lq65Lqy5Y+j6K+055qE5LuW5Zyo5Y2X6YOo44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6YKj56eN5pe25YCZ77yM5LuW5Lmf5rKh6YGT55CG6L+Y5oOz552A6aqX5oiR5Lus44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5oiR546w5Zyo5ouF5b+D55qE5Y+N6ICM5pivLi4uLi4u4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5Y+N6ICM5piv5LuA5LmI77yf4oCd6Z2S56u56aG/5pe25aW95aWH5Zyw5Ye65aOw6Zeu6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76JOd6aaZ5rKh5pyJ56uL5Yi75Zue562U77yM6ICM5piv5oqs5aS055yL5ZCR5LqG56iN6L+c5LiA5Lqb55qE5p6X5pma56eL44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5L2g6K+077yM5LqR5bOw5LuW5pyJ5rKh5pyJ5Y+v6IO977yM55u05o6l6aG65Yq/5bCx5p2A5Yiw5q6T5bC45a6r55qE5aSn5pys6JCl5Y6777yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A757Sr6IuR6Ze76KiA5b6u5b6u55qx55yJ44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5L2g55qE5oSP5oCd5piv77yM5oiR5Lus5Zyo5rex5YWl55qE5pe25YCZ77yM5LuW5Lmf5Zyo5rex5YWl77yM5omA5Lul5oiR5Lus5omN5om+5LiN5Yiw5LuW77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76JOd6aaZ6L276L2754K55LqG54K55aS077yM5Y+v55uu5YWJ5LuN5pen55yL552A5p6X5pma56eL44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75p6X5pma56eL5rKh5pyJ6K+06K+d44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75L2G57uP6L+H6JOd6aaZ6L+Z5LmI5LiA5o+Q54K577yM5aW55oOz5LqG5oOz77yM6KeJ5b6X5Lul5rKQ5LqR5bOw55qE5oCn5qC85p2l6K+077yM6L+Y55yf5pyJ5Y+v6IO95Lya6L+Z5LmI5YGa44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6L+Z5a625LyZ77yM5piO5piO6YO9562U5bqU5oiR5LiN5ZKM5oiR5YiG5byA55qE44CC4oCd5p6X5pma56eL6K+t5rCU5Lit5bim552A5LiA5Lid5aW56Ieq5bex6YO95pyq5pu+5a+f6KeJ55qE5bCP5oOF57uq77yM5oSk5oSk5Zyw5L2O5aOw6Ieq6K+t44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76KeB5p6X5pma56eL5LmF5LmF5rKh5pyJ6K+06K+d77yM57Sr6IuR6L276L2755Sp5LqG55Sp6ISR6KKL77yM5b+N5LiN5L2P5Ye65aOw6Zeu6YGT77ya4oCc5pWZ5Li777yM5oiR5Lus6L+Y57un57ut5b6A6YeM5om+5ZCX77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A7546w5Zyo6YCA5Zue5Y6777yM5oiW6K646L+Y5p2l5b6X5Y+K44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75L2G6KaB5piv57un57ut5rex5YWl55qE6K+d77yM5Lul5Yia5omN5Zyo6Ziy57q/5LiK6KeB6K+G5Yiw55qE5q6T5bC45a6r5L2T6YeP77yM5LiA5pem6YGt6YGH5aSn6YeP5pWM5Lq65Zu05Zuw77yM5Zyo5Yqg5LiK5LiA5Lik5L2N5LiO5LmL5YmN5ZKM5rKQ5LqR5bOw5Lqk5omL55qE6YKj5Lik5L2N6auY5omL5ZCM562J5a6e5Yqb55qE6auY5omL55qE6K+d77yM5aW55Lus5oGQ5oCV5bCx5rKh5Yqe5rOV5YWo6Lqr6ICM6YCA5LqG44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76L+Z5LiA54K557Sr6IuR55+l6YGT77yM5aW555u45L+h5p6X5pma56eL5Lmf5b6I5riF5qWa44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc57un57ut5om+77yB4oCd5Yeg5LmO5rKh5oCO5LmI54q56LGr77yM5p6X5pma56eL5bCx5Ye65aOw6K+06YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5aaC5p6c5LuW55u05o6l5Y675LqG5q6T5bC45a6r55qE5aSn5pys6JCl77yM6YKj5oiR5Lus5Lmf5Y6777yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76K+0572i77yM5aW55oqs5aS055yL5ZCR5LyX5Lq644CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5oiR5LiN5oOz5by66L+r5L2g5Lus5ZKM5oiR5LiA6LW377yM5L2g5Lus5q+P5Liq5Lq66YO95pyJ6LWE5qC86Ieq5bex5YGa5Ye66YCJ5oup44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76Z2S56u56Ze76KiA6aG/5pe26IC45LqG6IC46IKp6YGT77ya4oCc5pWZ5Li75L2g6L+Z5piv5LuA5LmI5LuA5LmI6K+d77yM5oiR6YO95Yaz5a6a6Lef5L2g6L+b5p2l5LqG77yM5ZOq5pyJ5Y2K6YCU5YaN5Ye65Y6755qE6K+05rOV77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc56Gu5a6e77yM5Y+N5q2j6YO96L+b5p2l5LqG77yM5LiN5oqK5Lq65om+5Yiw5YaN5Ye65Y6777yM6YKj5Lqb5q2j6YGT5oCV5piv5b6X55yL5ZKx5Lus56yR6K+d5LqG44CC4oCd57Sr6IuR5Lmf5piv5pKp5LqG5pKp56eA5Y+R56yR6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76Iez5LqO6JOd6aaZ562J5Lq65bCx5pu05LiN55So6K+05LqG44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Yeg5Lq65a+55rKQ5LqR5bOw6YO95pyJ5oSf5oOF77yM5LqO5oOF5LqO55CG6YO95LiN5Y+v6IO956a75byA44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Zac5qyi5oiR55qE5Li75Lq65piv5q+S5aes5q+S5aes'));