>第13章 黑云山上
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('Jm5ic3A7Jm5ic3A75bGx6Lev5bC95aS077yM54yb6JmO5biu5Zyo5Y2K5bGx6IWw5L+u5bu65LqG5LiA5Liq5bm/5Zy677yM5bmz5pe25bCx5Zyo6L+Z5YS/5pON57uD5biu5LyX44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75q2k5pe25bm/5Zy65LiK77yM5a+G5a+G6bq76bq755qG5piv54yb6JmO5biu55qE5biu5LyX77yM6Laz5pyJ5Y2D5Lq65LmL5aSa44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LyX5o2V5b+r5Zyo5Y2i6b6Z5bim6aKG5LiL6LiP6Laz5bm/5Zy677yM5Lmf6KKr6L+Z5Zy66Z2i5ZCT5LqG5LiA6Lez44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LiN5oSn5Li66aOe5LqR6YOh56ys5LiA5aSn5biu5rS+77yM6L+Z6Zi15LuX5Y675omT5Y6/5Z+O6YO96IO95omT5b6X5LiL5p2l44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5aW95aSn55qE6Zi15LuX44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5pyJ5Lqb5ZCD5oOK77yM5LuW55+l6YGT54yb6JmO5biu5Y6J5a6z77yM5L2G5rKh5oOz56uf54S25piv6L+Z5LmI5Liq5bqe54S25aSn54mp44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75bm45aW954yb6JmO5biu5LuK5aSp5bCx5rKh5LqG77yM5LiN54S255yf6KaB6KKr5Y+R546w5piv6Ieq5bex5p2A5LqG572X5rez6bq754Om5Y+v5bCx5aSn5LqG44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6ZiB5LiL5piv5LuA5LmI5Lq677yM5Li65LuA5LmI6KaB6Zev5YWl5oiR54yb6JmO5biu55qE5Zyw55uY77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A754yb6JmO5biu5LyX5YmN5rK/77yM5LiA5Liq5YiA55ak6IS455qE5Lit5bm05Lq66IS46Imy6Zi05rKJ44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LuW5q2j5Zyo5amG5aiY6KKr56qd6YeM546p6ICN5bCx6KKr6K2m5oiS6ZKf5aOw5oOK6YaS77yM5b+D6YeM5LiN54i955qE5b6I44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5YWt5omH6Zeo77yM5Y2i6b6Z77yB4oCd5Y2i6b6Z5reh54S26YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75ZCs5Yiw5YWt5omH6Zeo6L+Z5LiJ5Liq5a2X77yM54yb6JmO5biu5LyX5LmL5Lit6aG/5pe25bCx5Lyg5Ye65LqG6aqa5Lmx5aOw6Z+z44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5a6M5LqG77yM5ZKx5Lus5oCO5LmI6KKr5YWt5omH6Zeo57uZ55uv5LiK5LqG44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5piv5ZWK77yM5YWt5omH6Zeo5Ye65omL54ug6L6j77yM6auY5omL5aaC5LqR77yM6L+Z5Y+v5oCO5LmI5Yqe77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc4oCm4oCm4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6YO957uZ5oiR6Zet5Zi077yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75YiA55ak6IS45omt5aS05oCS5Zad5LiA5aOw77yM5oqs5omL5oq95Ye66IWw6Ze05a6d5YiA5a6w5LqG5LiA5Liq6K+05b6X6LW35Yqy5YS/55qE5bCP5Za95ZWw44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75p2A6bih5YSG54y055qE5pWI5p6c5byC5bi45aW977yM5Y6f5pys5ZiI5p2C55qE5Lq6576k6aG/5pe25bCx5a6J6Z2Z5LqG5LiL5p2l44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75YiA55ak6IS45Zue5aS05oqx5ouz77yM56yR5ZG15ZG16YGT77ya4oCc5Zyo5LiL54yb6JmO5biu5LqM5b2T5a625pu55LiA5YiA77yM5oiR54yb6JmO5biu5LiA5ZCR5aWJ5YWs5a6I5rOV77yM5oyJ5pe257y057qz5Lq65aS056iO77yM5LiN55+l5piv5ZOq5YS/5b6X572q5LqG5aSn5Lq677yM6L+Y6K+35piO56S644CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75aSn5Lm+5a+55biu5rS+5rS75Yqo5bm25LiN56aB5Yi277yM5Y+q6KaB5oyJ5Lq65aS05Lqk6ZO25a2Q5bCx5rKh5LqL44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75bCx566X5biu5LyX5YGa5LqG5qy655S36Zy45aWz5LmL5LqL77yM5Lmf5Y+q6ZyA6KaB5LiK57y0572a6YeR5bCx6IO95YWN6Zmk5oOp572a44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76L+Z6KeE55+p5qWa5LqR5Lmf5riF5qWa77yM5LuW5Lmf5Y+q6IO95Zyo5b+D6YeM5Y+55oGv77yM5q+V56uf5LuW5Lmf5LiN6L+H5piv5Liq5bCP5bCP55qE5o2V5b+r44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Y+q5Y+v5oOc5Y2i6b6Z6L+Z5qyh55qE55uu5qCH5qC55pys5LiN5piv6YKj5bCP5bCP55qE5Lq65aS056iO5oiW6ICF6LS/6LWC44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LuW5L6d5pen5bmz6Z2Z77yM6K+t5rCU5Lit5Y205bim552A5q+L5bq4572u55aR77ya4oCc5Y+q6KaB5pu55b2T5a625Lqk5Ye66Z2S5pyo546L6byO77yM5oiR56uL5Yi75bim5Lq656a75byA44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75b2T5Y2i6b6Z6K+05Ye66Z2S5pyo546L6byO6L+Z5Zub5Liq5a2X5pe277yM5YiA55ak6IS455qE6IS46Imy6aqk5Y+Y77yM5L2G6ZqP5Y2z5Y+I5oGi5aSN5LqG5bmz6Z2Z44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5Y2i5aSn5Lq66K+056yR5LqG77yM6Z2S5pyo546L6byO6L+Z56eN6Iez5a6d5ZOq5YS/5piv5oiR5Lus54yb6JmO5biu6IO95aSf6KeK6KeO77yM5oKo5piv5LiN5piv5pyJ5LuA5LmI6K+v5Lya77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76Z2S5pyo546L6byO77yM5L2G5Yeh5pyJ54K56KeB6K+G55qE5q2m6ICF6YO95ZCs6K+06L+H6L+Z5Liq5ZCN5a2X44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75aSn5Lm+5pu+5Ye6546w6L+H5LiA5bCK5YWI5aSp5aKD54K85Li55biI77yM6YGT5Y+36Z2S5pyo55yf5Lq677yM5LuW54K86I2v55So55qE5Li554KJ5bCx5piv6Z2S5pyo546L6byOPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76Z2S5pyo55yf5Lq65LiA5omL54K85Li55pyv5Ye656We5YWl5YyW77yM55Sa6Iez6IO954K85Yi25bu25bm055uK5a+/55qE56We5pyo5Li544CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76ICM5LuW5omL5Lit55qE6Z2S5pyo546L6byO5Lmf5p6B5Li656We5byC77yM5Lyg6Ze75Lit6K+06L+Z5piv5LiA5bCK5LuZ6byO77yM5Y+q6KaB5bCG6I2v5p2Q5oqV5YWl5YW25Lit5bCx6IO96Ieq5bex54K85Yi25Li56I2v44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76LCB6KaB5piv6IO95aSf5b6X5Yiw6L+Z6Z2S5pyo546L6byO77yM5bCx55u45b2T5LqO5b6X5Yiw5LqG5LiA5L2N5rC45LiN6IOM5Y+b55qE54K85Li55biI44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5Zyo6LWE5paZ6YeM55yL5Yiw6L+H6Z2S5pyo546L6byO55qE5LuL57uN77yM5Y6f5pys6L+Y5Lul5Li65Y+q5piv5Lyg6Ze744CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75L2G546w5Zyo55yL5p2l5YWr5oiQ5piv55yf55qE77yM5LiN54S25rCU6KGA5Li55piv5ZOq5YS/5p2l55qE77yM54yb6JmO5biu5Y+I5Li65LuA5LmI6KaB6K6p5biu5LyX5pS26ZuG6YKj5Lqb6I2J6I2v44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75pei54S25LuZ6byO55yf5a6e5a2Y5Zyo77yM6YKj5YWt5omH6Zeo5bCx5pu05Yqg5LiN5Y+v6IO95pS+6L+H54yb6JmO5biu5LqG44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75q+V56uf5b2T5LuK5Zyj5LiK55e06L+354K85Li55rGC6ZW/55Sf77yM5b6X5Yiw6Z2S5pyo546L6byO77yM5bCx6IO95b6X5Yiw5Zyj55y344CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75aaC5LuK5Lic5Y6C6KW/5Y6C5p2D5YC+5pyd6YeO77yM5YWt5omH6Zeo5Yq/5byx77yM5oOz6KaB6YeN6I635Zyj55y377yM6Z2S5pyo546L6byO56Gu5a6e5p6B5Li66YeN6KaB44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LiK5aS055qE5ZG95Luk5Y2i6b6Z6Ieq54S25Lmf5riF5qWa77yM6LCD5p+l6L+Z5LmI5LmF77yM5oC7566X5b6X5Yiw5LqG6Z2S5pyo546L6byO5omA5Zyo77yM5LuW5oCO5LmI5Y+v6IO95Zug5Li65pu55LiA5YiA5Yeg5Y+l6K+d5bCx5pS+5byD44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LuW6L2756yR5LiA5aOw77ya4oCc6KaB5piv5rKh5pyJ6Z2S5pyo546L6byO77yM54yb6JmO5biu5Li65LuA5LmI5Lya5oCl552A5pS26ZuG6I2v5p2Q77yM5Y+I5LuO5ZOq5YS/5YaS5Ye65p2l6L+Z5LmI5aSa5rCU6KGA5Li577yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75pu55LiA5YiA6Ze76KiA55y856We5LiA5Yeb77yM5LuW55+l6YGT556S5LiN6L+H5Y675LqG77yM5L2G5bey57uP5bCd5Yiw6Z2S5pyo546L6byO5bim5p2l55qE55Sc5aS077yM5LuW5oCO5LmI5Y+v6IO95bCx6L+Z5LmI5pS+5byD44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76ICM5LiU55y85YmN6L+Z5Lq65piv6ZO254mM5o2V5b+r5LiN6ZSZ77yM5L2G5LuW5pu55LiA5YiA5Lmf5LiN5piv5ZCD57Sg55qE44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Y6f5pys5LuW5bCx5piv5LiJ5rWB5beF5bOw6auY5omL77yM5b6X5Yiw5aSn6YeP5rCU6KGA5Li55ZCO77yM5pep5bey6LiP6Laz5LqM5rWB77yM6Z2i5a+56L+Z5Liq6ZO254mM5o2V5b+r5pyq5b+F5rKh5pyJ5LiA5oiY5LmL5Yqb44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75oOz5Yiw6L+Z5YS/77yM5LuW5o+h57Sn6IWw6Ze05a6d5YiA77yM5Ya35aOw6YGT77ya4oCc5Y2i5aSn5Lq677yM55yL5p2l5ZKx5Lus5piv5rKh5b6X6LCI5LqG77yM5omL5LiL6KeB55yf56ug5ZCn77yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76K+d6Z+z6JC95LiL77yM5pu55LiA5YiA6ISa5LiL5LiA6LiP77yM5oq95YiA5L6/5pap44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LuW6YCf5bqm5p6B5b+r77yM5rG55raM5r6O5rmD55qE5YaF5Yqb6ZmE552A5LqO5a6d5YiA5LmL5LiK77yM5pGn6YeR5pat55+z5YWo54S25LiN5Zyo6K+d5LiL44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Y2i6b6Z6KeB54q26Zyy5Ye66L276JSR5LmL6Imy77yM5Zad6YGT77ya4oCc6YO957uZ5oiR5pS25aW95bGx6YGT77yM5LiA5Liq5Lq65Lmf5LiN6IO95pS+6LWw77yM6LCB5pS+6LWw5LqG5Lq677yM5oiR5oun5LiL5LuW55qE5aS077yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75a6d5YmR5Ye66Z6Y77yM5YmR5YWJ5a6b6Iul5Yy557uD5bit5Y236ICM5Ye677yM556s6Ze05L6/5ZCM5YiA5YWJ56Kw5pKe44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Zek5ZWm77yBPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76YeR6ZOB5Lqk6bij44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Lik5bCK5LqM5rWB6auY5omL556s6Ze05Lqk5omL5Zyo5LiA6LW344CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc54Gt5LqG54yb6JmO5biu77yM5Y2i5aSn5Lq65Lya5Li65bCU562J6K+35Yqf77yM5p2A6LS85LiA5Lq66LWP55m96ZO25Y2B5Lik77yM5p2A6LS85Y2B5Lq66LWP55m96ZO25Y2D5Lik77yM5p2A6LS855m+5Lq655u05YWl5YWt5omH6Zeo77yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75p2O5p6X5LiA5aOw5pq05Zad77yM5LuX5YmR5L6/5p2A5YWl5Lq6576k44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76L+Z5Y+l6K+d55u05o6l5bCx6K6p5Y6f5pys6L+Y5b+D55Sf6IOG5oCv55qE5LyX5o2V5b+r5rK46IW+5LqG6LW35p2l44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75pyJ5aWW6LWP5ou/77yM6YKj6L+Y5oOz5LuA5LmI77yM5Y2B5Lik6ZO25a2Q6YKj5Y+v5piv5LiJ5Liq5pyI55qE5bel6ZKx44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76KaB5piv6IO96L+b5YWl5YWt5omH6Zeo77yM6YKj5bCx5pu05LqG5LiN5b6X5LqG77yM5aSn5Lm+5qiq552A6LWw6YO95rKh6Zeu6aKY44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76ICM5LiU6L+Z5Lqb54yb6JmO5biu5LyX566X5LuA5LmI5Lic6KW/77yM5LiN6L+H5piv5LiA576k5rWB5rCT572i5LqG77yM6YKj6L+Y5LiN5piv6ZqP5L6/5p2A44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75YWr55m+5o2V5b+r5aaC5ZCM5r2u5rC05LiA6Iis5omR5ZCR54yb6JmO5biu5LyX44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75ZSv5pyJ5qWa5LqR6buY6buY5ZCO6YCA5Y2K5q2l77yM55yo55y85bCx5Yiw5LqG5LyX5Lq65pyA5ZCO6Z2i44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75byA546p56yR77yM54yb6JmO5biu6YO95LiN55+l6YGT5b6X5Yiw6Z2S5pyo546L6byO5aSa5LmF5LqG77yM54K85Ye655qE5rCU6KGA5Li55bKC5Lya5bCR5LqG77yfPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Yir6K+05aSa5LqG77yM6L+Z5Lqb5biu5LyX5q+P5Lq65ZeR5LiK5LiJ5LqU57KS5rCU6KGA5Li56YKj5bCx5LqG5LiN5b6X5LqG77yM5Lq66YCg6auY5omL5Lmf5piv6auY5omL44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Yi56YKj6Ze077yM54yb6JmO5biu5LyX5ZKM5LyX5o2V5b+r5Yay5Ye75Zyo5LiA6LW344CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75ZaK5p2A5aOw6ZyH5aSp77yM5LiA5Liq54Wn6Z2i5bCx5pyJ5LiN5bCR5Lq66KeB5LqG6KGA77yM6KGA6IWl5ZGz5Lmf5oSI5Y+R5rWT6YOB44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Lmf5piv5Zyo6L+Z5pe277yM5LyX5o2V5b+r5oC7566X5Y+R546w5LqG5LqL5oOF5LiN5aSq5a+55Yqy44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A754yb6JmO5biu55qE5Lq65Ly85LmO5rKh5LuW5Lus5oOz55qE6YKj5LmI5byx44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76L+Z5Lqb5rWB5rCT5Zyw55ee6Jm954S26Lqr5omL5LiN5oCO5LmI5qC377yM5L2G5Y205pyJ5L+u5Li65Zyo6Lqr77yM5LiN5bCR6YO95bey57uP6L6+5Yiw5piO5Yqy5Yid5pyf77yM55Sa6Iez6L+Y5aS55p2C5LqG5Lqb6K645piO5Yqy5Lit5pyf55qE5bCP6auY5omL44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5oCO5LmI5Zue5LqL77yM6L+Z5Lqb5Zyw55ee5rWB5rCT5oCO5LmI6YO95oiQ5LqG57uD5a625a2Q77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5Y2n5qe977yM5oiR55y85YmN6L+Z6LSn5aW955Sf54yb77yM6Lqr5omL5LiN5oCO5LmI5qC377yM56uf54S25piv5piO5Yqy5Lit5pyf77yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc4oCm4oCm4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LiA5pe26Ze077yM5LyX5o2V5b+r55qG6Zm35YWl5LqG6Ium5oiY5LmL5Lit77yM5bm/5Zy65LiK5re35oiY5Lmf5oSI5Y+R5oOo54OI44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75YWt5ZCN6ZOc54mM5o2V5b+r5Lmf6KKr5q+U6Ieq5bex5L+u5Li66L+Y6KaB6auY5LiK5Y2K562555qE54yb6JmO5biu5aS055uu57yg5L2P44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76L+Z5Lqb5aS055uu6Jm954S26Lqr5omL5LiN5aaC5Y+X6L+H6K6t57uD55qE6ZOc54mM5o2V5b+r77yM5L2G5L+u5Li65Y205Yeg5LmO6YO95bey57uP6L6+5Yiw5LqG5LiJ5rWB5beF5bOw44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75oOo54OI55qE5oiY5paX55yL55qE5qWa5LqR5piv5b+D5oOK6IKJ6Lez44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75bm45aW95ZCs5LuO6JmO5Y+U55qE6K+d5rKh6LW2552A5Yay5LiK5Y6777yM5LiN54S25bCx566X5pyJ5LqG5piO5Yqy5Lit5pyf55qE5L+u5Li65Lmf6Zq+5YWN6KaB5oyo5YiA5a2Q44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5qWa5LqR77yM5L2g6Lqy5Zyo5ZCO6Z2i5bmy5LuA5LmI77yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Zac5qyi5oiR6Jm954S26LWE6LSo5beu77yM5L2G5piv5oiR5a+/5ZG96ZW/5ZWK5beu77yM5L2G5piv5oiR5a+/5ZG96ZW/5ZWK'));