function is_valid_base64(d,b){if(arguments.length!=2){b=-1}var c="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_";if(b!=-1&&d.length!=b){return false}for(var a=0;a<d.length;a++){if(c.indexOf(d.charAt(a))==-1){return false}}return true}function get_urlparamobj(b){var d=new Object;var f=urlparse.urlsplit(b).query;if(f==""){return new Object}var a=f.split("&");for(var c=0;c<a.length;c++){var e=a[c].split("=");if(e.length!=2){continue}d[e[0]]=e[1]}return d}function url_construct_paramstr(b){var c="";for(var a in b){c+="&"+a+"="+b[a]}if(c.length>0){c="?"+c.substring(1)}return c}function get_url_param(b){b=b.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var a="[\\?&]"+b+"=([^&#]*)";var d=new RegExp(a);var c=d.exec(window.location.href);if(c==null){return""}else{return c[1]}}function get_url_params(){var b=new Array();var a=/[\?&]([^=]+)=/g;while((results=a.exec(window.location.href))!=null){b.push(results[1])}return b}function url_setparam(c,b,f){var g="";var a="";var e=c.split("#");if(e.length>=2){c=e[0];for(var d=1;d<e.length;d++){a+=e[d]}}e=c.split("?");if(e.length>0){g=e[0]}params=get_urlparamobj(c);params[b]=f;paramstr=url_construct_paramstr(params);return g+paramstr+a}function highest_order_url_dir(b){var a;a=b.lastIndexOf("/");if(a==-1||a==protocol_end_pos(b)){return b}return b.substring(0,a+1)}function is_valid_html_dir_title(a){if((a.length<10)||(a.substring(0,10)!="Index of /"&&a.substring(0,11)!="Index of ./"&&a.substring(0,12)!="Index of ../")||(a.length>=19&&a.substring(0,19)=="Index of /resources")||(a.length>=20&&a.substring(0,20)=="Index of ./resources")||(a.length>=21&&a.substring(0,21)=="Index of ../resources")){return false}return true}var urlparse={};urlparse.urldefrag=function(b){var a=b.indexOf("#");if(a==-1){return[b,""]}else{return[b.substr(0,a),b.substr(a+1)]}};urlparse.urlsplit=function(d,f,c){if(typeof c==="undefined"){c=true}var e=/^([A-Za-z]+)?(:?\/\/)([0-9.\-A-Za-z]*)(?::(\d+))?(.*)$/;var b=/([^?#]*)?(?:\?([^#]*))?(?:#(.*))?$/;var h={};var g=d.match(e);if(g){h.scheme=g[1]||f||"";h.hostname=g[3].toLowerCase()||"";h.port=parseInt(g[4],10)||"";h.netloc=g[3];if(g[4]){h.netloc+=":"+g[4]}var a=g[5]}else{h.scheme=f||"";h.netloc="";h.hostname="";var a=d}h.scheme=h.scheme.toLowerCase();g=a.match(b);h.path=g[1];h.query=g[2]||"";if(c){h.fragment=g[3]||""}else{h.fragment=""}return h};urlparse.urlunsplit=function(b){var a="";if(b.scheme){a+=b.scheme+"://"}if(b.netloc){if(a==""){a+="//"}a+=b.netloc}else{if(b.hostname){if(a==""){a+="//"}a+=b.hostname;if(b.port){a+=":"+b.port}}}if(b.path){a+=b.path}if(b.query){a+="?"+b.query}if(b.fragment){a+="#"+b.fragment}return a};urlparse.urljoin=function(d,a,b){if(typeof b==="undefined"){b=true}var c=urlparse.urlsplit(a);if(c.scheme){if(!b){return a}else{return urlparse.urldefrag(a)[0]}}var g=urlparse.urlsplit(d);if(!g.scheme){g.scheme=c.scheme}if(!g.netloc||!g.hostname){g.netloc=c.netloc;g.hostname=c.hostname;g.port=c.port}if(c.path.length>0){if(c.path.charAt(0)=="/"){g.path=c.path}else{var h=g.path.lastIndexOf("/");if(h==-1){g.path=c.path}else{g.path=g.path.substr(0,h)+"/"+c.path}}}var e=g.path.split("/");var j=[];if(e[0]!=""){j.push("")}for(var f=0;f<e.length;++f){if(e[f]===".."){if(j.length>1){j.pop()}else{j.push(e[f])}}else{if(e[f]!="."){j.push(e[f])}}}g.path=j.join("/");g.query=c.query;if(b){g.fragment=c.fragment}else{g.fragment=""}return urlparse.urlunsplit(g)};