function KC(b,V,D){var r;this.h=b;if(b!=null){r=b.match(/^\"(.*)\"$/);this.d=r!=null?r[1]:b;this.d=this.d.strip();}else{this.d=null;}if(V!=null){r=V.match(/^\<(.*)\>$/);this.l=r?r[1]:V;this.l=this.l.strip();}else{this.l=null;}this.b=D;}function dU(){return this.h;}KC.prototype.D=dU;function OT(){return this.d;}KC.prototype.o=OT;function YH(b){this.h=b;if(b!=null){var V=b.match(/^\"(.*)\"$/);this.d=V!=null?V[1]:b;this.d=this.d.strip();}else{this.d=null;}}KC.prototype.H=YH;function vz(){return this.l;}KC.prototype.S=vz;function Z8(b){if(b!=null){var D=b.match(/^\<(.*)\>$/);this.l=D?D[1]:b;this.l=this.l.strip();}else{this.l=null;}}KC.prototype.V=Z8;function ne(){return this.b;}KC.prototype.r=ne;function n3(b){this.b=b;}KC.prototype.e=n3;function IN(){if(this.d==null){return this.l;}var b=(this.d.match(/[;,"<>]/)!=null);var V="";if(b){V+="\""+this.d+"\"";}else{V+=this.d;}if(V.length>0){if(this.l!=null&&this.l.strip()!=""){V+=" <"+this.l+">";}}else{V=this.l;}return V;}KC.prototype.q=IN;function EL(b,V){var D=/^(.+)@(.+)$/;var r="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";var H="[^\\s"+r+"]";var S="(\"[^\"]*\")";var h=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;var l=H+"+";var o="("+l+"|"+S+")";var q=new RegExp("^"+o+"(\\."+o+")*$");var e=new RegExp("^"+l+"(\\."+l+")*$");var d=b.match(D);if(!d){return false;}var f=d[1];var p=d[2];for(var B=0;B<f.length;B++){if(f.charCodeAt(B)>127){return false;}}for(var B=0;B<p.length;B++){if(p.charCodeAt(B)>127){return false;}}if(f.match(q)==null){return false;}var K=p.match(h);if(K!=null){for(var B=1;B<=4;B++){if(K[B]>255){return false;}}return true;}var C=new RegExp("^"+l+"$");var W=p.split(".");var t=W.length;for(var B=0;B<t;B++){if(W[B].search(C)==-1){return false;}}if(V){var Y=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum|travel)$/;if(W[W.length-1].length!=2&&W[W.length-1].search(Y)==-1){return false;}}if(t<2){return false;}return true;}KC.N=EL;function TD(b){}KC.K=TD;function nz(b){var V=b.toUpperCase().indexOf("CN=");if(V==-1){return b;}var D=V;while((D=b.indexOf(" ",D+3))!=-1){if(b.charAt(D-1)!="\\"){b=b.substr(0,D)+"\\"+b.substr(D);}D+=2;}D=V;while((D=b.indexOf(",",D+3))!=-1){if(b.charAt(D-1)!="\\"){b=b.substr(0,D)+"\\"+b.substr(D);}D+=2;}return b;}KC.B=nz;function L4(b){var V=b.toUpperCase().indexOf("CN=");if(V==-1){return b;}var D=b.substr(0,V+3);var r=b.substr(V+3);r=r.replace("\\ "," ");r=r.replace("\\,",",");b=D+r;return b;}KC.f=L4;function B5(b){var V=new Array();var D=new Array();var r;var H;var S;var h=-1;var l=-1;var o=false;var q=b.length;var e=true;var d=false;for(H=S=-1,r=0;(e&&(r<q));r++){var f=b.charAt(r);switch(f){case "<":if(o){e=false;if(H==-1){D[D.length]=b.substring(r,q).strip();}else{D[D.length]=b.substring(H,q).strip();}continue;}h=H;if(h>=0){l=r;}H=r+1;var N=r;for(r++;r<q;r++){f=b.charAt(r);if(f=="\""){d=!d;}else{if(f==">"){if(d){continue;}break;}}}if(r>=q){e=false;D[D.length]=b.substring(N,q).strip();continue;}o=true;S=r;break;case ">":e=false;if(H==-1){D[D.length]=b.substring(r,q).strip();}else{D[D.length]=b.substring(H,q).strip();}continue;break;case ",":case ";":if(d){break;}if(H==-1){o=false;H=S=-1;break;}if(S==-1){S=r;}var B=b.substring(H,S).strip();var K=null;if(h>=0){K=b.substring(h,l).strip();}if(KC.N(B)){V[V.length]=new KC(K,B);}else{D[D.length]=B;}o=false;H=S=-1;h=l=-1;break;case " ":case "\t":case "\r":case "\n":break;case "\"":d=!d;if(H==-1){H=r;}break;default:if(H==-1){H=r;}break;}}if(e&&(H>=0)){if(S==-1){S=r;}var B=b.substring(H,S).strip();var K=null;if(h>=0){K=b.substring(h,l).strip();if(K.charAt(K.length-1)=="\""){K=K.substring(0,K.length-1);}if(K.charAt(0)=="\""){K=K.substring(1,K.length);}}if(KC.N(B)){V[V.length]=new KC(K,B);}else{D[D.length]=B;}}var C=new Array();C[0]=V;C[1]=D;return C;}KC.p=B5;