function addEvent(a,b,c,d){if(a.addEventListener){a.addEventListener(b,c,d);return!0}if(a.attachEvent){var e=a.attachEvent("on"+b,c);return e}}function ts_sort_default(a,b){aa=ts_getInnerText(a.cells[SORT_COLUMN_INDEX]),bb=ts_getInnerText(b.cells[SORT_COLUMN_INDEX]);if(aa==bb)return 0;if(aa<bb)return-1;return 1}function ts_sort_caseinsensitive(a,b){aa=ts_getInnerText(a.cells[SORT_COLUMN_INDEX]).toLowerCase(),bb=ts_getInnerText(b.cells[SORT_COLUMN_INDEX]).toLowerCase();if(aa==bb)return 0;if(aa<bb)return-1;return 1}function ts_sort_numeric(a,b){at=ts_getInnerText(a.cells[SORT_COLUMN_INDEX]),aa=parseFloat(at),isNaN(aa)&&(aa=0),at.match(/[kK]$/)&&(aa*=1024),at.match(/[mM]$/)&&(aa*=1048576),bt=ts_getInnerText(b.cells[SORT_COLUMN_INDEX]),bb=parseFloat(bt),isNaN(bb)&&(bb=0),bt.match(/[kK]$/)&&(bb*=1024),bt.match(/[mM]$/)&&(bb*=1048576);return aa-bb}function ts_sort_currency(a,b){aa=ts_getInnerText(a.cells[SORT_COLUMN_INDEX]).replace(/[^0-9.]/g,""),bb=ts_getInnerText(b.cells[SORT_COLUMN_INDEX]).replace(/[^0-9.]/g,"");return parseFloat(aa)-parseFloat(bb)}function ts_sort_time(a,b){aa=ts_getInnerText(a.cells[SORT_COLUMN_INDEX]),bb=ts_getInnerText(b.cells[SORT_COLUMN_INDEX]),am=1,/^[\d\.]+ (second|minute|hour|day|month|year)s$/.exec(aa)&&(am=TIME_MULTIPLIERS[RegExp.$1]),aa=parseFloat(aa)*am,isNaN(aa)&&(aa=0),bm=1,/^[\d\.]+ (second|minute|hour|day|month|year)s$/.exec(bb)&&(bm=TIME_MULTIPLIERS[RegExp.$1]),bb=parseFloat(bb)*bm,isNaN(bb)&&(bb=0);return aa-bb}function ts_sort_date(a,b){aa=ts_getInnerText(a.cells[SORT_COLUMN_INDEX]),bb=ts_getInnerText(b.cells[SORT_COLUMN_INDEX]),aa.length==10?dt1=aa.substr(6,4)+aa.substr(3,2)+aa.substr(0,2):(yr=aa.substr(6,2),parseInt(yr)<50?yr="20"+yr:yr="19"+yr,dt1=yr+aa.substr(3,2)+aa.substr(0,2)),bb.length==10?dt2=bb.substr(6,4)+bb.substr(3,2)+bb.substr(0,2):(yr=bb.substr(6,2),parseInt(yr)<50?yr="20"+yr:yr="19"+yr,dt2=yr+bb.substr(3,2)+bb.substr(0,2));if(dt1==dt2)return 0;if(dt1<dt2)return-1;return 1}function getParent(a,b){return a==null?null:a.nodeType==1&&a.tagName.toLowerCase()==b.toLowerCase()?a:getParent(a.parentNode,b)}function ts_resortTable(a){var b;for(var c=0;c<a.childNodes.length;c++)a.childNodes[c].tagName&&a.childNodes[c].tagName.toLowerCase()=="span"&&(b=a.childNodes[c]);if(!!b){var d=ts_getInnerText(b),e=a.parentNode,f=SORT_COLUMN_MAP[e.cellIndex],g=getParent(e,"TABLE");if(g.rows.length<=1)return;var h=ts_getInnerText(g.rows[1].cells[f]);sortfn=ts_sort_caseinsensitive,h.match(/^\d\d[\/-]\d\d[\/-]\d\d\d\d$/)&&(sortfn=ts_sort_date),h.match(/^\d\d[\/-]\d\d[\/-]\d\d$/)&&(sortfn=ts_sort_date),h.match(/^[\d\.]+ (second|minute|hour|day|month|year)s$/)&&(sortfn=ts_sort_time),h.match(/^[�$]/)&&(sortfn=ts_sort_currency),h.match(/^\s*[\d\.]+[kmKM\%]?$/)&&(sortfn=ts_sort_numeric),SORT_COLUMN_INDEX=f;var k=[],l=[];for(i=0;i<g.rows[0].length;i++)k[i]=g.rows[0][i];for(j=1;j<g.rows.length;j++)l[j-1]=g.rows[j];l.sort(sortfn),b.getAttribute("sortdir")=="down"?(ARROW="&nbsp;&nbsp;&uarr;",l.reverse(),b.setAttribute("sortdir","up")):(ARROW="&nbsp;&nbsp;&darr;",b.setAttribute("sortdir","down"));for(i=0;i<l.length;i++)(!l[i].className||l[i].className&&l[i].className.indexOf("sortbottom")==-1)&&g.tBodies[0].appendChild(l[i]);for(i=0;i<l.length;i++)l[i].className&&l[i].className.indexOf("sortbottom")!=-1&&g.tBodies[0].appendChild(l[i]);var m=document.getElementsByTagName("span");for(var c=0;c<m.length;c++)m[c].className=="sortarrow"&&getParent(m[c],"table")==getParent(a,"table")&&(m[c].innerHTML="");b.innerHTML=ARROW}}function ts_getInnerText(a){if(typeof a=="string")return a;if(typeof a=="undefined")return a;if(a.innerText)return a.innerText;var b="",c=a.childNodes,d=c.length;for(var e=0;e<d;e++)switch(c[e].nodeType){case 1:b+=ts_getInnerText(c[e]);break;case 3:b+=c[e].nodeValue}return b}function ts_makeSortable(a){if(a.rows&&a.rows.length>0)var b=a.rows[0];if(!!b){for(var c=0;c<b.cells.length;c++){var d=b.cells[c];if((" "+d.className+" ").indexOf(" nosort ")!=-1)continue;var e=ts_getInnerText(d);d.innerHTML='<a id="sortcolid'+c+'" href="#" class="sortheader" onclick="ts_resortTable(this);return false;">'+e+'<span class="sortarrow"></span></a>',SORT_COLUMN_MAP[d.cellIndex]=c}ts_resortTable(document.getElementById("sortcolid0"))}}function sortables_init(){if(!!document.getElementsByTagName){tbls=document.getElementsByTagName("table");for(ti=0;ti<tbls.length;ti++)thisTbl=tbls[ti],(" "+thisTbl.className+" ").indexOf("sortable")!=-1&&thisTbl.id&&ts_makeSortable(thisTbl)}}addEvent(window,"load",sortables_init);var SORT_COLUMN_INDEX,SORT_COLUMN_MAP=[],TIME_MULTIPLIERS=[];TIME_MULTIPLIERS.second=1,TIME_MULTIPLIERS.minute=60,TIME_MULTIPLIERS.hour=3600,TIME_MULTIPLIERS.day=86400,TIME_MULTIPLIERS.year=31536e3
