>第20章 踏雪无痕
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('Jm5ic3A7Jm5ic3A75Yia5o6o5byA6Zmi6Zeo77yM5qWa5LqR5bCx6KeJ5a+f5Yiw5oOF5Ya15LiN5a+544CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LuW6L+e5b+Z6YCA5Zue5Y675bCx6KaB5YWz6Zeo44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75bCx5Zyo6L+Z5pe277yM5LiA6aKX6aKX6aOe55+z56C056m66ICM5p2l44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR55y856We5LiA5Yeb77yM6IWw6Ze06ZOB57Si5a6b6Iul5q+S6JuH5LiA6Iis56C056m66ICM5Y6744CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A756Cw56Cw77yBPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Lik5aOw6Ze35ZON77yM6aOe55+z6KKr6ZOB57Si5Ye756KO44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A756KO55+z5pWj5bC977yM5LiA6YGT6Lqr5b2x6aOY54S26ICM6LW36JC95Zyo5oi/6aG25LmL5LiK77yM5Yqo5L2c6L2755uI77yM54q55aaC6LiP56m66ICM6KGM44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75aaC5LuK55qE5rO+6Ziz5Y6/5Lit77yM6IO95pyJ6L+Z562J6Lqr5omL55qE5Y+q5pyJ5LiA5Lq677yM55m9546J5aCC44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5bCP5a2Q77yM5L2g55m95aSp6K6k5Ye65oiR5LqG5ZCn77yf4oCd55m9546J5aCC6K+t5rCU5bmz6Z2Z77yM4oCc5Li65LuA5LmI5rKh5pyJ5oqK5oiR55qE6KGM6Liq6YCP6Zyy57uZ5YWt5omH6Zeo77yM5Y+I5Li65LuA5LmI6KaB6YCB5oiR5Y+C6aG744CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5oiR5pWs6YeN55m954i35oKo55qE5Li65Lq677yM55yL5LiN5oOv5Lic6KW/5Lik5Y6C5ZKM5YWt5omH6Zeo55qE5YGa5rS+44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5LmJ5q2j5Lil6L6e77yM6K+06K+d5pe25LuW6L+Y5Zyo5YG35YG3556n552A55m9546J5aCC6IS45LiK55qE5Y+Y5YyW44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5ZOm77yf5Li65LuA5LmI77yf4oCd55m9546J5aCC6aW25pyJ5YW06Laj6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5YWt5omH6Zeo5ZKM5Lic6KW/5Lik5Y6C5YiG5piO5piv5pyd5bu35Lit5Lq677yM5bqU6K+l6YCg56aP55m+5aeT77yM55uR5a+f5aSp5LiL77yM5L2G5LuW5Lus5Y205Y+q55+l6YGT5LqJ5p2D5aS65Yip77yM6L+Y6LCL5a6z5b+g6Iej6Imv5bCG44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6ICM5oKo55m954i377yM6Jm95piv55uX5Zyj77yM5L2G5piv5Yqr5a+M5rWO6LSr77yM55uX5Lqm5pyJ6YGT44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5LiA6IS46YOR6YeN77yM6K+06K+d5o635Zyw5pyJ5aOw44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5aW95LiA5Liq5Yqr5a+M5rWO6LSr77yM55uX5Lqm5pyJ6YGT77yM5L2g5YCS5piv5Lya6K+06K+d44CC4oCd55m9546J5aCC56yR6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5b2T54S277yM5YW25a6e5oiR5pu05aSa5piv5Li65LqG5rS75ZG977yM5oiR5Y+q5piv5LiA5Liq5bCP5q2m6ICF77yM5LiN5piv5oKo55qE5a+55omL44CC4oCd5qWa5LqR6K6q56yR6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A755m9546J5aCC6L2756yR6YGT77ya4oCc6L+Z5omN5piv6YeN54K55ZCn44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5L2g5Y+r5LuA5LmI5ZCN5a2X77yM5LuK5aSp5aSa6LCi5L2g55qE5Y+C6aG777yM5LiN54S25oiR6L+Z5YaF5Lyk5rKh5LiJ5LqU5Liq5pyI6YO95aW95LiN5LqG44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR55+l6YGT6L+Z5piv6L+H5YWz5LqG77yM5b2T5Y2z562U6YGT77ya4oCc5bCP55qE5Y+r5qWa5LqR77yM6L+Z5Y+C6aG76Jm954S254+N6LS177yM5L2G6IO95a+555m954i35oKo6IO95pyJ5biu5Yqp5bCx6KGM44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6Jm954S254+N6LS177yM5L2g6L+Z6K+d6K+055qE5pyJ5Yeg5YiG5rex5oSP5ZWK44CC4oCd55m9546J5aCC56yR6YGT77ya4oCc6KGM5LqG77yM5oiR55m9546J5aCC5LuO5LiN5qyg5Lq65Lq65oOF77yM5L2g5pyJ5LuA5LmI6KaB5rGC5bC9566h5o+Q44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5oiR6IO95pyJ5LuA5LmI6KaB5rGC44CC4oCd5qWa5LqR56yR5LqG56yR77yM6K+V5o6i6YGT77ya4oCc5Yia5aW95oiR5Lmw5LqG54K554yq5aS06IKJ5ZKM6Iqx55Sf57Gz77yM5ZKx5Lus5LiA6LW35Zad54K577yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6L+Z566X5piv5L2g55qE6KaB5rGC5ZCX77yf4oCd55m9546J5aCC6Zyy5Ye6546p5ZGz5LmL6Imy44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc55m954i36K+05piv6YKj5bCx5piv5LqG44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5ZOI5ZOI77yM5L2g5bCP5a2Q5YCS5piv5Liq5aaZ5Lq644CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A755m9546J5aCC5LiA6LeD6ICM5LiL6JC95Zyo6Zmi5Lit44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6LWw5ZCn44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5bGB6aKg5bGB6aKg6L+b5LqG5oi/6Ze044CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LiA6JGr6Iqm5qKo6Iqx55m977yM5LqM5pak54yq5aS06IKJ77yM5LiJ5Lik6Iqx55Sf57Gz44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5bCx5ZKM55m9546J5aCC5Zad5LqG6LW35p2l77yM6LW35Yid5LuW6L+Y5pyJ5Lqb5ouY5p2f44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A757uT5p6c5rKh5Zad5Yeg5Y+j5bCx5Y+R546w5Y6f5p2l6ZSm5q+b6byg5piv5Liq5bCP6La06I+c77yM5LiJ5LqU5p2v5LiL6IKa5bCx5LiK5LqG5aS077yM6K+06K+d6YO95pyJ54K55aSn6IiM5aS05LqG44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc55m954i377yM5oKo5oCO5LmI5Y+X5LqG5Lyk77yM5oiQ5LqG5ZCM56aP5a6i5qCI55qE6LeR5aCC5LqG44CC4oCd5qWa5LqR5aW95aWH6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A755m9546J5aCC5pGG5LqG5pGG5omL77ya4oCc5Yir5o+Q5LqG77yM5YCS6ZyJ5ZWK77yM5bCx5Yet546J5a+75qyi5ZKM5pu55q2j5YWD6YKj5Lik5Liq54uX5Lic6KW/5oCO5LmI6IO96L+955qE5LiK5oiR77yM5oiR55m9546J5aCC55qE6L275Yqf5Y+v5piv5aSp5LiL56ys5LiA44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5L2G5piv4oCm4oCm5L2G5piv6LCB5oOz5Yiw5bGx5LiL5pyJ5Z+L5LyP5ZWK77yM5Zub5Liq5LiA5rWB6auY5omL77yM5Y2B5YWr5Liq5LqM5rWB6auY5omL77yM5oiR6L+Z5Y+M5ouz6Zq+5pWM5Zub5omL5ZWK44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6YKj56Gu5a6e44CC4oCd5qWa5LqR6L+e5aOw6KGo56S66LWe5ZCM44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76L+Z5LmI5aSa6auY5omL5Zu05pS75LmL5LiL77yM55m9546J5aCC6L+Y6IO96YCD6LWw77yM6L+Z6L275Yqf6K+05piv5aSp5LiL56ys5LiA5pyJ54K55aS45byg77yM5L2G5aSn5Lm+5YmN5LqU5bqU6K+l5rKh6LeR44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5LiN6L+H5LuW5Lus5Lmf5rKh5Y2g5L6/5a6c77yM6YKj6Z2S5pyo546L6byO6KKr5oiR57uZ5omU5LqG77yM5ZOI5ZOI5ZOI77yB5omU5Yiw5rKz6YeM5Y675LqG77yM5LuW5Lus55m95b+Z5rS75LiA5Zy644CC4oCd55m9546J5aCC5aSn56yR6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5oGN54S277yM6Zq+5oCq5YiY55+z5aS06IO95LuO5rKz6YeM5pG45Yiw6Z2S5pyo546L6byO77yM5Y6f5p2l5piv6L+Z5qC344CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75bCx5Zyo5LuW5oCd57Si5LmL5pe277yM55m9546J5aCC5Y2056qB54S255y856We5LiA5Yeb77yM55uu5YWJ55u05Yu+5Yu+55uv552A5LuW44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR6aG/5pe25oOK5Ye65LiA6Lqr5Ya35rGX77yM6L+Z5L2N5oCO5LmI56qB54S26L+Z5LmI55uv552A6Ieq5bex77yM6Zq+6YGT55+l6YGT6Z2S5pyo546L6byO5Zyo6Ieq5bex5omL6YeM5LqG77yfPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A755m9546J5aCC56qB54S256uZ5LqG6LW35p2l77yM5Ly45omL5oyH552A5p2v5a2Q5oCS6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5L2g77yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5YW76bG85ZGi77yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc57uZ5oiR5Zad77yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5p2+5LqG5Y+j5rCU77yM6L+e5b+Z56uv6LW36YWS5p2v77ya4oCc5aW95aW95aW977yM5Zad77yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LuW5b+Z56uv6LW36YWS5p2v5bCx5Zad5LqG5LiL5Y6744CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LiA5p2v5p2v54OI6YWS5LiL6IKa77yM5Lmf5LiN55+l5LuA5LmI5pe25YCZ77yM5qWa5LqR5bCx5YCS5Zyo5LqG5bqK5qa75LiK44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A7562J5LuW6YaS5p2l5pe277yM5bey57uP5piv5pel5LiK5LiJ56u/77yM55yL5pel5aS06L+e54K55Y2v6YO95piv6LW25LiN5LiK5LqG44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5Y2n5qe977yM6L+Z5Zue546p5aSn5LqG77yM5peg5pWF5pe35bel77yM6JmO5Y+U5b6X6aqC5q275oiR44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5b+Z54is6LW35p2l5bCx6KaB5b6A5o2V5oi/6LW277yM6ICM5bCx5Zyo6L+Z5pe277yM5LuW5Y2055yL5Yiw5qGM5a2Q5LiK5Y6L5LqG5LiA5byg57q444CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LuW5bCG6YKj57q45ou/6LW35p2l77yM56uf5piv55m9546J5aCC55WZ5LiL5piv5Lmm5L+h44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6YWS6YeM55qE6I2v5Yqb5LiN6ZSZ77yM5q+U6YCB5oiR55qE6YKj5qC55Y+C6aG76I2v5pWI5aW95b6X5aSa77yM5L+h5bCB5LiL5pyJ5Lqb5bCP56S854mp77yM5bCP5byf5LiN6KaB5a6i5rCU77yM5pyb5Lic6YO95YaN5Lya5pe25bCP5byf6YWS6YeP6IO95aSf6KeB5rao77yM4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5aSn5ZOl55m9546J5aCC55WZ77yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5LiA5ouN6ISR6KKL77yM5LiN55Sx5b6X5Y2n5qe95LqG5LiA5Y+l44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75oSf5oOF6Ieq5bex6KKr55m9546J5aCC57uZ6ICN5LqG77yM5Zue55y45LiA55yL77yM5bCP6La06I+c56uf5piv5oiR6Ieq5bex44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LiN5a+577yM55m9546J5aCC5Y+r6Ieq5bex5bCP5byf77yM6L+Y6Ieq56ew5aSn5ZOl44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR57ue5bC96ISR5rGB5Zue5oOz5pio5aSc5Y+R55Sf55qE5LqL77yM5LiA5Lqb6Zu256KO55qE54mH5q615Zyo5LuW5Yqq5Yqb5LiL6YCQ5riQ5ou85oiQ5LqG5LiA5Lqb55S76Z2i44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76YCa6L+H5q6L57y65LiN5YWo55qE55S76Z2i77yM5LuW5aSn5qaC5Zue5oOz6LW35LqG5LiA5Lqb5LqL44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75pio5aSc5Zad6auY5LqG5ZCO77yM5LuW56iA6YeM57OK5raC5ZKM55m9546J5aCC56ew5YWE6YGT5byf6LW35p2l77yM55m9546J5aCC56uf54S25Lmf5rKh5ouS57ud44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76ICM5ZCO5Lik5Lq65bCx5pyJ55qE5rKh55qE6IGK5LqG6LW35p2l77yM6L+Y57qm5a6a6KaB5Zyo5aSn5Lm+5Zu96YO95YaN5Zad5LiA5Zy677yM5YaN5b6A5ZCO5qWa5LqR5bCx5oOz5LiN6LW35p2l5LqG44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5oiR5LiN5Lya5LuA5LmI6YO96K+05LqG5ZCn77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR6ISR55Oc5a2Q5Zeh5Zeh55u05ZON77yM5Lul5ZCO5LiA5a6a6KaB5rOo5oSP77yM5Yaz5LiN6IO95Zyo5Zad5aSa44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75LuW55qE56eY5a+G5a6e5Zyo5piv5aSq5aSa5LqG77yM56m/6LaK77yM6ZW/55Sf6YGT56eN77yM6Z2S5pyo546L6byO77yM5ZOq5LiA5Liq6KKr5Yir5Lq655+l6YGT6YO95Lya5byV5p2l5p2A6Lqr5LmL56W444CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Ya36Z2Z5LiL5p2l5ZCO77yM5qWa5LqR5YGa5LqG5LiA5rOi55CG5oCn5YiG5p6Q44CC55m9546J5aCC5L+h6YeM5LuA5LmI5Lmf5rKh5o+Q77yM6Z2S5pyo546L6byO5Lmf6L+Y5Zyo77yM6YKj5bCx5rKh5LuA5LmI5LqL5YS/44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75a+55LqG77yM55m9546J5aCC6L+Y6K+055WZ5LqG56S854mp44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5L2O5aS05LiA55yL77yM5Ly85LmO5piv5LiA5pys6L275Yqf56eY57GN44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc44CK6LiP6Zuq5peg55eV44CL77yM5p6c54S25piv6L275Yqf56eY57GN77yM6L+Z5Liq5aSn5ZOl5Lmf5rKh566X55m96K6k77yM5bCx5piv5LiN55+l6YGT6L+Z5Liq6LiP6Zuq5peg55eV5ZKM55m95ZOl55qE44CK5oOK6bi/5q2l44CL55u45q+U5aaC5L2V44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75rGf5rmW5LmL5Lq66YO955+l6YGT77yM55m9546J5aCC55qE6L275Yqf5ZCN5Li644CK5oOK6bi/5q2l44CL77yM57+p6Iul5oOK6bi/77yM5amJ6Iul5ri46b6Z77yM5p2l5Y676Ieq5aaC77yM5peg5b2x5peg6Liq44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A76L+Z6L275Yqf56eY57GN5LiN5piv5oOK6bi/5q2l77yM5qWa5LqR5Lmf5oOz5b6X5piO55m944CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75bCx566X55yf57uZ5LuW5oOK6bi/5q2l5LuW5Lmf5LiN5pWi5L+u54K877yM6LCB5LiN55+l6YGT6YKj5piv6ZSm5q+b6byg55m9546J5aCC55qE6L275Yqf44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Yiw5pe25YCZ5LuW5ZKM55m9546J5aCC55qE5YWz57O755yf5bCx5piv5LiN5omT6Ieq5oub5LqG44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5biI54i277yB4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5biI54i25oKo5Zyo5a625ZCX77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75aSW6Z2i56qB54S25Lyg5p2l5Y+r5ZaK5aOw44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5b+Z5pS25ou+5LqG54OC5pGK5a2Q77yM5bCG6LiP6Zuq5peg55eV6JeP6LW35p2l5ZCO5b+Z6LWw5LqG5Ye65Y6744CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75piv5p6X6aqB5Zyo5Y+r6Zeo44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5Yia5omT5byA6Zeo77yM5p6X6aqB56uL5Yi75bCx5Yay5LqG6L+b5p2l44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5biI54i277yM5oKo5oCO5LmI6L+Z5LmI5LmF6YO95rKh5byA6Zeo77yM5oiR6L+Y5Lul5Li65oKo5Ye65LqL5YS/5LqG5ZGi44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc6LCB6K6p5L2g5p2l55qE77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc546L5o2V5aS05ZWK77yM5LuW55yL5Yiw5oKo5rKh54K55Y2v77yM5bCx6K6p5oiR6L+H5p2l55yL55yL44CC4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75p6X6aqB6ICB6ICB5a6e5a6e6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5b+Z6Zeu6YGT77ya4oCc546L5o2V5aS055Sf5rCU5LqG5rKh77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5rKh77yM546L5o2V5aS05b+Z55qE5Y6J5a6z77yM5Lqk5Luj5oiR5p2l5Y+r5oKo5ZCO5bCx5Ye65Y675LqG44CC4oCd5p6X6aqB6ICB5a6e562U6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5p2+5LqG5Y+j5rCU77ya4oCc6YKj5bCx5aW977yM546L5o2V5aS05Y675b+Z5LuA5LmI5LqG77yM5L2g55+l6YGT5ZCX77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5oiR5ZCs5LuW5Lus6K+077yM5aW95YOP5piv5YiY5a625p2R5Ye65LqG5LuA5LmI5LqL5YS/77yM546L5o2V5aS05o6l5Yiw5raI5oGv5bCx6LW26L+H5Y675LqG44CC4oCd5p6X6aqB6YGT44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A74oCc5YiY5a625p2R77yf4oCdPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75qWa5LqR5b+D6YeM5ZKv5ZmU5LiA5aOw77yM5LiA56eN5LiN56Wl5LmL5oSf5rK554S26ICM55Sf44CCPGJyIC8+DTxiciAvPg0KJm5ic3A7Jm5ic3A75Zac5qyi5oiR6Jm954S26LWE6LSo5beu77yM5L2G5piv5oiR5a+/5ZG96ZW/5ZWK5beu77yM5L2G5piv5oiR5a+/5ZG96ZW/5ZWK'));