(function(){var o=function(){e("Tommy");Tommy.createNamespace=e;Tommy.createAjaxRequest=d;Tommy.addEvent=b;Tommy.domain="tommymontgomery.com";Tommy.setCookie=m;Tommy.unsetCookie=c;Tommy.getCookie=h;Tommy.getElementsByClassName=j;Tommy.getGlobalPosition=a;Tommy.mod=i;Tommy.getText=l;Tommy.isSubElement=n;e("Tommy.Browser");Tommy.Browser.isIe="\v"=="v";Tommy.Browser.isOpera=/^function \(/.test([].sort);Tommy.Browser.isFirefox=/a/[-1]=="a";Tommy.Browser.isSafari=/a/.__proto__=="//";Tommy.Browser.isChrome=/source/.test((/a/.toString+""))};var k=function(p){this.constructor=function(){return new ActiveXObject(p)}};var b=function(p,r,q){q=q||window;if(!q.events){q.events={}}if(!q.events[p]){q.events[p]={};q.events[p].handlers=[]}q.events[p].handlers.push(r);q["on"+p]=f};var f=function(s){s=s||g(window.event);var q=this.events[s.type].handlers;for(var r=0,p=q.length;r<p;r++){q[r].call(window,s)}};function g(p){p.preventDefault=g.preventDefault;p.stopPropagation=g.stopPropagation;return p}g.preventDefault=function(){this.returnValue=false};g.stopPropagation=function(){this.cancelBubble=true};var d=function(){var q=null;if(window.XMLHttpRequest){q=new XMLHttpRequest();if(typeof(q.constructor)=="undefined"){q.constructor=XMLHttpRequest}}else{if(window.ActiveXObject){try{q=new k("Msxml2.XMLHTTP")}catch(p){q=false}}else{q=false}}return function(r,v,s,u){if(!q){return false}var t=new q.constructor();v=v.toUpperCase();t.open(v,r,s);if(s&&u){t.onreadystatechange=function(w){u.apply(null,[t,w||window.event])}}if(!Tommy.Browser.isChrome){t.setRequestHeader("Origin","http://"+Tommy.domain)}else{t.setRequestHeader("X-Origin","http://"+Tommy.domain)}t.setRequestHeader("Accept","text/xml,application/xml,text/plain,text/html");if(v==="POST"){t.setRequestHeader("Content-Type","application/x-www-form-urlencoded");t.setRequestHeader("Connection","close")}return t}}();var e=function(r){var q=r.split("."),t=window,u=0;for(var s=0,p=q.length;s<p;s++){if(typeof(t[q[s]])=="undefined"){t[q[s]]={};u++}t=t[q[s]]}return u};var m=function(q,r,s){var p=new Date();p.setDate(p.getDate()+s);p=p.toGMTString();document.cookie=q+"="+r+";expires="+p};var c=function(p){m(p,"",-1)};var h=function(q){var s=document.cookie.split(";");for(var r=0,p=s.length,t;r<p;r++){t=s[r].trim().split("=");if(t[0]===q){return t[1]}}return null};var j=function(s,r,q){r=r||document;q=q||"*";var u=r.getElementsByTagName(q);var w=[];for(var t=0,p=u.length,v=new RegExp("(^|\\s)"+s+"($|\\s)","i");t<p;t++){if(u[t].className.match(v)!=null){w.push(u[t])}}return w};var i=function(q,p){return(p+(q%p))%p};var a=function(p){var q=(typeof(p.offsetLeft)=="undefined")?[0,0]:[p.offsetLeft,p.offsetTop];while(p=p.offsetParent){q[0]+=parseInt(p.offsetLeft);q[1]+=parseInt(p.offsetTop)}return q};var l=function(p){var q="";var r=p.firstChild;if(r){do{q+=(r.nodeType===3)?r.nodeValue:l(r)}while(r=r.nextSibling)}return q};var n=function(s,t){var r=t.getElementsByTagName(s.nodeName);for(var q=0,p=r.length;q<p;q++){if(s==r[q]){return true}}return false};o()}());(function(){if(typeof(Tommy)=="undefined"){throw new Error("Tommy is not defined")}var d=function(){Tommy.createNamespace("Tommy.Xml");Tommy.Xml.createDocument=b;Tommy.Xml.XmlDocument=a;Tommy.Xml.cleanXPathExpression=c};var b=function(){var g=null;if(document.implementation&&document.implementation.createDocument&&document.evaluate){g=function(e){return document.implementation.createDocument("",e,null)}}else{if(window.ActiveXObject){try{g=function(e){var h=new ActiveXObject("MSXML2.DOMDocument.3.0");h.loadXML("<"+e+"></"+e+">");return h}}catch(f){}}}return function(e){if(g===null){throw new Error("Cannot create XML document because your browser sucks. plz upgrade. kthxbye")}var h=g.call(null,e||"foo");return new Tommy.Xml.XmlDocument(h)}}();function a(e){this.dom=e}a.prototype={evaluate:function(h){h=c(h);var e=[];if(this.dom.evaluate){var f=this.dom.evaluate(h,this.dom,null,XPathResult.ANY_TYPE,null);var g=f.iterateNext();while(g!==null){e.push(g);g=f.iterateNext()}}else{this.dom.setProperty("SelectionLanguage","XPath");e=this.dom.selectNodes(h)}return e}};var c=function(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};d()}());(function(){var a={chatmiscellaneousprogrammingtechnologytimezoneweb:63,chatprogrammingtechnologytimezoneweb:55,chattechnologytimezoneweb:54,chattimezoneweb:38,chatweb:36,chat:4,web:32,chattimezone:6,timezone:2,timezoneweb:34,chattechnologyweb:52,chattechnology:20,technology:16,technologyweb:48,chattechnologytimezone:22,technologytimezone:18,technologytimezoneweb:50,chatprogrammingtimezoneweb:39,chatprogrammingweb:37,chatprogramming:5,programming:1,programmingweb:33,chatprogrammingtimezone:7,programmingtimezone:3,programmingtimezoneweb:35,chatprogrammingtechnologyweb:53,chatprogrammingtechnology:21,programmingtechnology:17,programmingtechnologyweb:49,chatprogrammingtechnologytimezone:23,programmingtechnologytimezone:19,programmingtechnologytimezoneweb:51,chatmiscellaneoustechnologytimezoneweb:62,chatmiscellaneoustimezoneweb:46,chatmiscellaneousweb:44,chatmiscellaneous:12,miscellaneous:8,miscellaneousweb:40,chatmiscellaneoustimezone:14,miscellaneoustimezone:10,miscellaneoustimezoneweb:42,chatmiscellaneoustechnologyweb:60,chatmiscellaneoustechnology:28,miscellaneoustechnology:24,miscellaneoustechnologyweb:56,chatmiscellaneoustechnologytimezone:30,miscellaneoustechnologytimezone:26,miscellaneoustechnologytimezoneweb:58,chatmiscellaneousprogrammingtimezoneweb:47,chatmiscellaneousprogrammingweb:45,chatmiscellaneousprogramming:13,miscellaneousprogramming:9,miscellaneousprogrammingweb:41,chatmiscellaneousprogrammingtimezone:15,miscellaneousprogrammingtimezone:11,miscellaneousprogrammingtimezoneweb:43,chatmiscellaneousprogrammingtechnologyweb:61,chatmiscellaneousprogrammingtechnology:29,miscellaneousprogrammingtechnology:25,miscellaneousprogrammingtechnologyweb:57,chatmiscellaneousprogrammingtechnologytimezone:31,miscellaneousprogrammingtechnologytimezone:27,miscellaneousprogrammingtechnologytimezoneweb:59,};var e=null;var m=["Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"];var l=function(){Tommy.domain="acronymulator.com";var p=document.getElementById("tabheader").getElementsByTagName("li");for(var o=0,n=p.length;o<n;o++){p[o].onclick=function(){var q="tabcontent-";for(var r=0;r<n;r++){p[r].className="";document.getElementById(q+p[r].id.split("-")[1]).style.display="none"}this.className="active";document.getElementById(q+this.id.split("-")[1]).style.display="block"}}c=c();d();h();b()};var b=function(){var n=m[Math.floor(Math.random()*50)];document.getElementById("contact-state").appendChild(document.createTextNode(n));var o=document.getElementById("contact-submit");o.onclick=function(){var t=document.getElementById("contact-email").value;var w=document.getElementById("contact-message").value;var q=document.getElementById("contact-answer").value;var v=document.createElement("div");v.className="idiot";var x=document.getElementById("message-idiot");if(x){x.parentNode.removeChild(x)}x=document.getElementById("email-idiot");if(x){x.parentNode.removeChild(x)}var s=true;if(!/[\w\d\._]+@\w+\.\w+/.test(t)){var p=v.cloneNode(false);p.id="email-idiot";p.appendChild(document.createTextNode("your email is invalid. plz fix. kthxbye."));document.getElementById("contact-email").parentNode.appendChild(p);s=false}if(w.length<20){var r=v.cloneNode(false);r.id="message-idiot";r.appendChild(document.createTextNode("your message is too short. plz fix. kthxbye."));document.getElementById("contact-message").parentNode.appendChild(r);s=false}if(s){var u=Tommy.createAjaxRequest("/contact","POST",true,i);u.send("email="+t+"&message="+w+"&state="+n+"&capital="+q)}}};var i=function(q,p){if(q.readyState===4){var o=document.createElement("div");o.className=(q.status===200)?"success":"failure";o.appendChild(document.createTextNode(q.responseText));var n=document.getElementById("contact-result");while(n.firstChild){n.removeChild(n.firstChild)}n.appendChild(o)}};var d=function(){var p=c();for(var o=0,n=p.length;o<n;o++){p[o].onclick=g}document.getElementById("toggle-acronym-list").onclick=f};var c=function(){var q=null;if(q===null){q=[];var o=document.getElementById("choosie").getElementsByTagName("input");for(var p=0,n=o.length;p<n;p++){if(o[p].type==="checkbox"){q.push(o[p])}}}return function(){return q}};var k=function(q){var p=c();for(var o=0,n=p.length;o<n;o++){p[o].checked=q}};var g=function(){if(this.id==="choosie-all"){k(this.checked)}else{var q=c();var o=true;for(var p=0,n=q.length;p<n;p++){if(!q[p].checked&&q[p].id!=="choosie-all"){o=false;break}}document.getElementById("choosie-all").checked=o}h()};var h=function(){var t=c();var p=[];for(var q=0,n=t.length,s;q<n;q++){if(t[q].id==="choosie-all"){continue}s=t[q].id.split("-")[1];if(t[q].checked){p.push(s)}}p.sort();p=p.join("");var r=document.getElementById("choosie-link");while(r.firstChild){r.removeChild(r.firstChild)}if(p.length>0){var o=document.createElement("input");o.setAttribute("type","text");o.setAttribute("readonly","readonly");o.setAttribute("value",'<script type="text/javascript" src="http://acronymulator.com/'+a[p]+'"><\/script>');var u=document.createElement("p");u.className="header";u.appendChild(document.createTextNode("Paste this crap in your HTML"));document.getElementById("choosie-link").appendChild(u);document.getElementById("choosie-link").appendChild(o);r.style.display="block"}else{r.style.display="none"}j()};var f=function(){if(e===null){var o=Tommy.createAjaxRequest("/acronyms.xml","GET",false);o.send(null);if(o.status===200){e=new Tommy.Xml.XmlDocument(o.responseXML)}else{return}}var n=document.getElementById("acronym-definition-list");if(n.style.display==="block"){n.style.display="none";document.getElementById("toggle-acronym-list").className="show-acronym-list"}else{n.style.display="block";document.getElementById("toggle-acronym-list").className="hide-acronym-list"}j()};var j=function(){if(e===null){return}var r=c();var s=[];for(var q=0,u=r.length;q<u;q++){if(r[q].checked&&r[q].id!=="choosie-all"){s.push(r[q].id.split("-")[1])}}var y=document.getElementById("acronym-definition-list");while(y.firstChild){y.removeChild(y.firstChild)}if(s.length>0){var v='/acronyms/acronym/categories[category="'+s.join('" or category="')+'"]/..';var z=e.evaluate(v);var t=document.createElement("dl");var A=document.createElement("table");for(var q=0,u=z.length,w,o,x;q<u;q++){if(q%8===0){w=A.insertRow(-1)}o=w.insertCell(-1);x=document.createElement("acronym");x.setAttribute("title",z[q].getElementsByTagName("definition")[0].firstChild.nodeValue);x.appendChild(document.createTextNode(z[q].getElementsByTagName("name")[0].firstChild.nodeValue));o.appendChild(x)}y.appendChild(A)}else{var n=document.createElement("p");n.appendChild(document.createTextNode("No acronym categories chosen."));y.appendChild(n)}};Tommy.addEvent("load",l,window)}());