eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('c.S(c.2t,{33:7(N){p f=1r c.f(N,5[0]);j(f.h.3h){5.2q("1N.4Q:1o").2I(7(){f.2k=B});5.1o(7(3t){j(f.h.2r)3t.4r();7 29(){j(f.h.3b){f.h.3b.O(f,f.12);8 L}8 B}j(f.2k){f.2k=L;8 29()}j(f.T()){j(5.1c){5.V=B;8 L}8 29()}27{f.1E();8 L}})}8 f},K:7(t){8 5.4e(c.4t(5.4v(),t))}});c.S(c.5b[":"],{4w:"!c.1I(a.b)",4a:"!!c.1I(a.b)",4z:"!a.3x"});J.R=7(1e,Z){j(1J.q==1)8 7(){p 1X=c.2B(1J);1X.3R(1e);8 J.R.4A(5,1X)};j(1J.q>2&&Z.1Z!=3f){Z=c.2B(1J).4C(1)}j(Z.1Z!=3f){Z=[Z]}c.1m(Z,7(i,n){1e=1e.30(1r 3u("\\\\{"+i+"\\\\}","g"),n)});8 1e};c.f=7(N,T){5.h=c.S({},c.f.2h,N);5.12=T;5.1t=5.h.2p;5.2M=5.1t.q&&5.1t||c(T);5.23=5.h.3g.2T(5.h.2p);5.V={};5.1W={};5.1c=0;5.1k={};5.1f();5.2V()};c.S(c.f,{2h:{17:{},Q:"14",28:"u",1E:B,3g:c([]),2p:c([]),3h:B,2G:[],1P:7(6){j(!5.19(6)&&(6.l W 5.V||!5.s(6))){5.6(6)}},1T:7(6){j(6.l W 5.V||6==5.2s){5.6(6)}},1n:7(6){j(6.l W 5.V)5.6(6)}},4F:7(h){c.S(c.f.2h,h)},17:{1q:"51 3s 4G 1q.",1g:"v 4H 5 3s.",2f:"v x a y 2f 4I.",2e:"v x a y 4J.",1l:"v x a y 1l.",2A:"v x a y 1l (4K).",2E:"3m 3p 3o 2g gü4L 4M 2g.",1O:"v x a y 1O.",2J:"3m 3p 3o 4N 4O 2g.",1V:"v x 4P 1V",2U:"v x a y 4R 4S.",3C:"v x 2W 4T b 4U.",2C:"v x a b 4V a y 4W.",2u:J.R("v x a b 2H 4Y 2b {0} 2c."),35:J.R("v x a b 4Z 53 54 {0} 2c."),3e:J.R("v x a b 3v {0} 3w {1} 2c 56."),3l:J.R("v x a b 3v {0} 3w {1}."),3k:J.R("v x a b 58 2b 3z 3A 3B {0}."),3i:J.R("v x a b 59 2b 3z 3A 3B {0}.")},3D:{T:7(){5.1U();H(p i=0;5.I[i];i++){5.1u(5.I[i])}c.S(5.V,5.15);5.1k=c.S({},5.15);5.h.36&&5.h.36.O(5);5.16();8 5.y()},6:7(6){6=5.1C(6);5.2s=6;5.2O(6);p 1a=5.1u(6);j(1a){3E 5.1k[6.l]}27{5.1k[6.l]=B}5.16();8 1a},16:7(C){j(C){c.S(5.15,C);H(l W C){5.F.K({r:C[l],6:c("[@l=\'"+l+"\']:3F",5.12)[0]})}5.18=c.2x(5.18,7(6){8!(6.l W C)})}5.h.16?5.h.16.O(5,5.15,5.F):5.34()},20:7(){j(c.2t.20)c(5.12).20();5.1U();5.24();5.I.1B(5.h.Q)},3G:7(){p 22=0;H(i W 5.1k)22++;8 22},24:7(){5.25(5.1b).2a()},y:7(){8 5.2v()==0},2v:7(){8 5.F.q},1E:7(){j(5.h.1E){2P{c(5.2w()||5.F.q&&5.F[0].6||[]).1L(":3I").1R()}2Q(e){}}},2w:7(){p 11=5.11;8 11&&c.2x(5.F,7(n){8 n.6.l==11.l}).q==1&&11},2V:7(2m){p f=5;f.1i={};7 1Q(){f.11=5;j(f.h.45&&!f.3K){c(5).1B(f.h.Q);f.1G(5).2a()}}j(2m){$(2m).1m(7(){j(f.I.3M(5)>-1){f.I.2T(5)}f.1i[5.l]=f.z(5)}).1R(1Q)}5.I=c(5.12).2q("1N, 1w, 3N").1y(":1o, :1f").1y("[@3O]").1y(5.h.2G).1L(7(){!5.l&&f.h.2r&&2R.1K&&1K.14("%o 3P 2H l 3Q",5);j(5.l W f.1i||!f.z(5).q)8 L;f.1i[5.l]=f.z(5);8 B});5.I.1R(1Q);f.h.1P&&f.I.3S(7(){f.h.1P.O(f,5)});f.h.1T&&f.I.3U(7(){f.h.1T.O(f,5)});j(f.h.1n){p 1S=c([]);f.I.1m(7(){j(f.19(5))1S.K(f.2l(5))});f.h.1n&&1S.2I(7(){f.h.1n.O(f,5)})}},1C:7(2L){8 c(2L)[0]},C:7(){8 c(5.h.28+"."+5.h.Q,5.2M)},1f:7(6){5.18=[];5.F=[];5.15={};5.1h=c([]);5.1b=c([])},1U:7(){5.1f();5.1b=5.C().K(5.23)},2O:7(6){5.1f();5.1b=5.1G(5.1C(6))},1u:7(6){6=5.1C(6);c(6).1B(5.h.Q);p z=5.1i[6.l];H(p i=0;z[i];i++){p U=z[i];2P{p 1a=c.f.1F[U.E].O(5,c.1I(6.b),6,U.2j);j(1a===-1)3Z;j(!1a){c(6).1x(5.h.Q);5.32(U,6);8 L}}2Q(e){5.h.2r&&2R.1K&&1K.14("42 43 44 47 6 "+6.1H+", 1u 2W \'"+U.E+"\' E");48 e}}j(z.q&&5.h.13)5.18.K(6);8 B},2Z:7(1H,E){p m=5.h.17[1H];8 m&&(m.1Z==J?m:m[E])},1A:7(6,E){8 5.2Z(6.l,E)||6.4c||c.f.17[E]||"<31>4f: 4g r 4i H "+6.l+"</31>"},32:7(U,6){p r=5.1A(6,U.E);j(Y r=="7")r=r.O(5,U.2j,6);5.F.K({r:r,6:6});5.15[6.l]=r;5.V[6.l]=r},25:7(1z){j(5.h.1v)1z.K(1z.4k(5.h.1v));8 1z},34:7(){H(p i=0;5.F[i];i++){p 14=5.F[i];5.26(14.6,14.r)}j(5.F.q){5.1h.K(5.23)}H(p i=0;5.18[i];i++){5.26(5.18[i])}5.1b=5.1b.1y(5.1h);5.24();5.25(5.1h).3c()},26:7(6,r){p u=5.1G(6);j(u.q){u.1B().1x(5.h.Q);j(5.h.4p||u.37("39")){u.3a(r)}}27{u=c("<"+5.h.28+"/>").37({"H":5.2d(6),39:B}).1x(5.h.Q).3a(r||"");j(5.h.1v){u=u.2a().3c().4u("<"+5.h.1v+">").4x()}j(!5.1t.4B(u).q)5.h.3d?5.h.3d(u,c(6)):u.4D(6)}j(!r&&5.h.13){u.2N("");Y 5.h.13=="1p"?u.1x(5.h.13):5.h.13(u)}5.1h.K(u)},1G:7(6){8 5.C().1L("[@H=\'"+5.2d(6)+"\']")},2d:7(6){8 5.19(6)?6.l:6.1H||6.l},z:7(6){p M=5.M(6);j(!M)8[];p z=[];j(Y M=="1p"){p 2i={};2i[M]=B;M=2i}c.1m(M,7(3n,b){z[z.q]={E:3n,2j:b}});8 z},M:7(6){8 5.h.z?5.h.z[6.l]:5.h.3q?c(6).3r()[5.h.3q]:c(6).3r()},19:7(6){8/4X|50/i.P(6.2D)},2l:7(6){8 c(6.T||55).2q(\'[@l="\'+6.l+\'"]\')},1j:7(b,6){2S(6.2z.2Y()){1s\'1w\':8 c("2K:2F",6).q;1s\'1N\':j(5.19(6))8 5.2l(6).1L(\':3x\').q}8 b.q},2y:7(k,6){j(5.h.3y){j(5.h.3y(c(6)))8 L}8 5.2n[Y k]?5.2n[Y k](k,6):B},2n:{"5a":7(k,6){8 k},"1p":7(k,6){8!!c(k,6.T).q},"7":7(k,6){8 k(6)}},s:7(6){8!c.f.1F.1q.O(5,c.1I(6.b),6)},2X:7(){5.1c++},38:7(y){5.1c--;j(y&&5.1c==0&&5.V&&5.T()){c(5.12).1o()}}},1F:{1q:7(b,6,k){j(!5.2y(k,6))8-1;2S(6.2z.2Y()){1s\'1w\':p N=c("2K:2F",6);8 N.q>0&&(6.2D=="1w-3T"||(c.3V.3W&&!(N[0].3X[\'b\'].3Y)?N[0].2N:N[0].b).q>0);1s\'1N\':j(5.19(6))8 5.1j(b,6)>0;41:8 b.q>0}},1g:7(b,6,k){j(5.s(6))8 B;p G=5.1W[6.l];j(!G){5.1W[6.l]=G={1Y:46,y:B,r:5.1A(6,"1g")}}5.h.17[6.l].1g=Y G.r=="7"?G.r(b):G.r;j(G.1Y!==b){G.1Y=b;p f=5;5.2X();c.4b({2e:k,4d:"4h",4j:"33",4l:"4n",M:{b:b},13:7(1D){j(!1D){p C={};C[6.l]=f.1A(6,"1g");f.16(C)}G.y=1D;f.38(1D)}});8 L}8 G.y},35:7(b,6,k){8 5.s(6)||5.1j(b,6)>=k},2u:7(b,6,k){8 5.s(6)||5.1j(b,6)<=k},3e:7(b,6,k){p q=5.1j(b,6);8 5.s(6)||(q>=k[0]&&q<=k[1])},3i:7(b,6,k){8 5.s(6)||b>=k},3k:7(b,6,k){8 5.s(6)||b<=k},3l:7(b,6,k){8 5.s(6)||(b>=k[0]&&b<=k[1])},2f:7(b,6){8 5.s(6)||/^[\\w-+\\.]+@([\\w-]+\\.)+[\\w-]{2,}$/i.P(b)},2e:7(b,6){8 5.s(6)||/^(52?|57):\\/\\/[A-X-9](\\.?[A-X-9ÄÜÖ][A-X-2o\\-ÄÜÖ]*)*(\\/([A-X-9ÄÜÖ][A-X-2o\\-\\.ÄÜÖ]*)?)*(\\?([A-X-9ÄÜÖ][A-X-2o\\-\\.%\\+=&ÄÜÖ]*)?)?$/i.P(b)},1l:7(b,6){8 5.s(6)||!/3H|3J/.P(1r 3L(b))},2A:7(b,6){8 5.s(6)||/^\\d{4}[\\/-]\\d{1,2}[\\/-]\\d{1,2}$/.P(b)},2E:7(b,6){8 5.s(6)||/^\\d\\d?\\.\\d\\d?\\.\\d\\d\\d?\\d?$/.P(b)},1O:7(b,6){8 5.s(6)||/^-?(?:\\d+|\\d{1,3}(?:,\\d{3})+)(?:\\.\\d+)?$/.P(b)},2J:7(b,6){8 5.s(6)||/^-?(?:\\d+|\\d{1,3}(?:\\.\\d{3})+)(?:,\\d+)?$/.P(b)},1V:7(b,6){8 5.s(6)||/^\\d+$/.P(b)},2U:7(b,6){j(5.s(6))8 B;p 21=0,1d=0,1M=L;b=b.30(/\\D/g,"");H(n=b.q-1;n>=0;n--){p 3j=b.4q(n);p 1d=4E(3j,10);j(1M){j((1d*=2)>9)1d-=9}21+=1d;1M=!1M}8(21%10)==0},2C:7(b,6,k){k=Y k=="1p"?k:"40|49?g|4m";8 5.s(6)||b.4y(1r 3u(".("+k+")$"))},3C:7(b,6,k){8 b==c(k).4o()}},4s:7(l,E,r){c.f.1F[l]=E;c.f.17[l]=r}});',62,322,'|||||this|element|function|return|||value|jQuery|||validator||settings||if|param|name||||var|length|message|optional||label|Please||enter|valid|rules||true|errors||method|errorList|cached|for|elements|String|push|false|data|options|call|test|errorClass|format|extend|form|rule|submitted|in|Z0|typeof|params||lastActive|currentForm|success|error|errorMap|showErrors|messages|successList|checkable|result|toHide|pendingRequest|nDigit|source|reset|remote|toShow|rulesCache|getLength|invalid|date|each|onclick|submit|string|required|new|case|labelContainer|check|wrapper|select|addClass|not|toToggle|defaultMessage|removeClass|clean|response|focusInvalid|methods|errorsFor|id|trim|arguments|console|filter|bEven|input|number|onblur|focused|focus|checkables|onkeyup|prepareForm|digits|valueCache|args|old|constructor|resetForm|nCheck|count|containers|hideErrors|addWrapper|showLabel|else|errorElement|handle|hide|than|characters|idOrName|url|email|ein|defaults|transformed|parameters|cancelSubmit|checkableGroup|selection|dependTypes|9_|errorLabelContainer|find|debug|lastElement|fn|maxLength|size|findLastActive|grep|depend|nodeName|dateISO|makeArray|accept|type|dateDE|selected|ignore|no|click|numberDE|option|selector|errorContext|text|prepareElement|try|catch|window|switch|add|creditcard|refresh|the|startRequest|toLowerCase|configuredMessage|replace|strong|formatAndAdd|validate|defaultShowErrors|minLength|invalidHandler|attr|stopRequest|generated|html|submitHandler|show|errorPlacement|rangeLength|Array|errorContainer|onsubmit|minValue|cDigit|maxValue|rangeValue|Bitte|key|Sie|geben|meta|metadata|field|event|RegExp|between|and|checked|subformRequired|or|equal|to|equalTo|prototype|delete|first|numberOfInvalids|Invalid|visible|NaN|blockFocusCleanup|Date|index|textarea|disabled|has|assigned|unshift|blur|multiple|keyup|browser|msie|attributes|specified|break|png|default|exception|occured|when|focusCleanup|null|checking|throw|jpe|filled|ajax|title|mode|setArray|Warning|No|abort|defined|port|parents|dataType|gif|json|val|overrideErrors|charAt|preventDefault|addMethod|merge|wrap|get|blank|parent|match|unchecked|apply|append|slice|insertAfter|parseInt|setDefaults|is|fix|address|URL|ISO|ltiges|Datum|eine|Nummer|only|cancel|credit|card|same|again|with|extension|radio|longer|of|checkbox|This|https|at|least|document|long|ftp|less|greater|boolean|expr'.split('|'),0,{}))


/* CUSTOM VALIDATION METHODS */

//add max word count validator method
$.validator.addMethod( "maxWords", function(value, element, params) { 
	return worldCount(value) <= params; 
}, String.format("Your entry must contain {0} words or less.") );

//add min word count validator method
$.validator.addMethod( "minWords", function(value, element, params) { 
	return worldCount(value) > params; 
}, String.format("Your entry must contain more than {0} words.") );

//add real date validator method
$.validator.addMethod( "realDate", function(value) {
	return isDate( String($('#birthmonth').attr('value')) + "/" + String($('#birthday').attr('value')) + "/" + String($('#birthyear').attr('value')) );
}, "Please enter a valid date." );

//add validator method character length
$.validator.addMethod( "charLength", function(value, element, params) {
	return value.length == params || value == "" || value == undefined;
}, String.format("Your entry must be {0} characters long.") );

//add validator method for minumum character length
$.validator.addMethod( "minlength", function(value, element, params) {
	return value.length >= params;
}, String.format("Your entry must have a minimum of {0} characters.") );

//add validator method for minumum value
$.validator.addMethod( "minimum", function(value, element, params) {
	return value >= params;
}, String.format("Please enter a value greater than or equal to {0}.") );


//Word count function
function worldCount(string) {
	var char_count = string.length;
	var fullStr = string + " ";
	var initial_whitespace_rExp = /^[^A-Za-z0-9]+/gi;
	var left_trimmedStr = fullStr.replace(initial_whitespace_rExp, "");
	var non_alphanumerics_rExp = rExp = /[^A-Za-z0-9]+/gi;
	var cleanedStr = left_trimmedStr.replace(non_alphanumerics_rExp, " ");
	var splitString = cleanedStr.split(" ");
	var word_count = splitString.length -1;
	if (fullStr.length <2) { word_count = 0; }
	return word_count;
}



/**
 * DHTML date validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */
// Declaring valid date character, minimum year and maximum year
var dtCh= "/";
var maxYear = new Date().getFullYear();
var minYear = new Date().getFullYear() - 120;  //max age 120? :)

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dtStr){
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strMonth=dtStr.substring(0,pos1)
	var strDay=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	//alert( dtStr );
	if ( dtStr == "undefined/undefined/undefined" || dtStr == "undefined" || dtStr == "" ) {
		//isDate function should not make a date mandatory (use jQuery.validate "required = true" )
		return true
	}
	if (pos1==-1 || pos2==-1){
		//alert("The date format should be : mm/dd/yyyy")
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){
		//alert("Please enter a valid month")
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		//alert("Please enter a valid day")
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		//alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
		return false
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		//alert("Please enter a valid date")
		return false
	}
return true
}
