
(function($){$.fn.dataTableSettings=[];$.fn.dataTableExt={};$.fn.dataTableExt.oApi={};$.fn.dataTableExt.oPagination={"two_button":{"fnInit":function(oSettings,fnCallbackDraw)
{oSettings.nPrevious=document.createElement('div');oSettings.nNext=document.createElement('div');if(oSettings.sTableId!=='')
{oSettings.nPaginate.setAttribute('id',oSettings.sTableId+'_paginate');oSettings.nPrevious.setAttribute('id',oSettings.sTableId+'_previous');oSettings.nNext.setAttribute('id',oSettings.sTableId+'_next');}
oSettings.nPrevious.className="paginate_disabled_previous";oSettings.nNext.className="paginate_disabled_next";oSettings.nPaginate.appendChild(oSettings.nPrevious);oSettings.nPaginate.appendChild(oSettings.nNext);$(oSettings.nPaginate).insertAfter(oSettings.nTable);$(oSettings.nPrevious).click(function(){oSettings.iDisplayStart-=oSettings.iDisplayLength;if(oSettings.iDisplayStart<0)
{oSettings.iDisplayStart=0;}
fnCallbackDraw(oSettings);});$(oSettings.nNext).click(function(){if(oSettings.iDisplayStart+oSettings.iDisplayLength<oSettings.aiDisplay.length)
{oSettings.iDisplayStart+=oSettings.iDisplayLength;}
fnCallbackDraw(oSettings);});},"fnUpdate":function(oSettings,fnCallbackDraw)
{oSettings.nPrevious.className=(oSettings.iDisplayStart===0)?"paginate_disabled_previous":"paginate_enabled_previous";oSettings.nNext.className=(oSettings.iDisplayEnd==oSettings.aiDisplay.length)?"paginate_disabled_next":"paginate_enabled_next";}},"iFullNumbersShowPages":5,"full_numbers":{"fnInit":function(oSettings,fnCallbackDraw)
{var nFirst=document.createElement('span');var nPrevious=document.createElement('span');var nList=document.createElement('span');var nNext=document.createElement('span');var nLast=document.createElement('span');nFirst.innerHTML=oSettings.oLanguage.oPaginate.sFirst;nPrevious.innerHTML=oSettings.oLanguage.oPaginate.sPrevious;nNext.innerHTML=oSettings.oLanguage.oPaginate.sNext;nLast.innerHTML=oSettings.oLanguage.oPaginate.sLast;nFirst.className="paginate_button first";nPrevious.className="paginate_button previous";nNext.className="paginate_button next";nLast.className="paginate_button last";oSettings.nPaginate.appendChild(nFirst);oSettings.nPaginate.appendChild(nPrevious);oSettings.nPaginate.appendChild(nList);oSettings.nPaginate.appendChild(nNext);oSettings.nPaginate.appendChild(nLast);$(nFirst).click(function(){oSettings.iDisplayStart=0;fnCallbackDraw(oSettings);});$(nPrevious).click(function(){oSettings.iDisplayStart-=oSettings.iDisplayLength;if(oSettings.iDisplayStart<0)
{oSettings.iDisplayStart=0;}
fnCallbackDraw(oSettings);});$(nNext).click(function(){if(oSettings.iDisplayStart+oSettings.iDisplayLength<oSettings.aiDisplay.length)
{oSettings.iDisplayStart+=oSettings.iDisplayLength;}
fnCallbackDraw(oSettings);});$(nLast).click(function(){var iPages=parseInt((oSettings.aiDisplay.length-1)/oSettings.iDisplayLength,10)+1;oSettings.iDisplayStart=(iPages-1)*oSettings.iDisplayLength;fnCallbackDraw(oSettings);});$('span',oSettings.nPaginate).bind('mousedown',function(){return false;});$('span',oSettings.nPaginate).bind('selectstart',function(){return false;});oSettings.nPaginateList=nList;},"fnUpdate":function(oSettings,fnCallbackDraw)
{var iPageCount=jQuery.fn.dataTableExt.oPagination.iFullNumbersShowPages;var iPageCountHalf=Math.floor(iPageCount/2);var iPages=parseInt((oSettings.aiDisplay.length-1)/oSettings.iDisplayLength,10)+1;var iCurrentPage=parseInt(oSettings.iDisplayStart/oSettings.iDisplayLength,10)+1;var sList="";var iStartButton;var iEndButton;if(iPages<iPageCount)
{iStartButton=1;iEndButton=iPages;}
else
{if(iCurrentPage<=iPageCountHalf)
{iStartButton=1;iEndButton=iPageCount;}
else
{if(iCurrentPage>=(iPages-iPageCountHalf))
{iStartButton=iPages-iPageCount+1;iEndButton=iPages;}
else
{iStartButton=iCurrentPage-Math.ceil(iPageCount/2)+1;iEndButton=iStartButton+iPageCount-1;}}}
for(var i=iStartButton;i<=iEndButton;i++)
{if(iCurrentPage!=i)
{sList+='<span class="paginate_button">'+i+'</span>';}
else
{sList+='<span class="paginate_active">'+i+'</span>';}}
oSettings.nPaginateList.innerHTML=sList;$('span',oSettings.nPaginateList).bind('mousedown',function(){return false;});$('span',oSettings.nPaginateList).bind('selectstart',function(){return false;});$('span',oSettings.nPaginateList).click(function(){var iTarget=(this.innerHTML*1)-1;oSettings.iDisplayStart=iTarget*oSettings.iDisplayLength;fnCallbackDraw(oSettings);return false;});}}};$.fn.dataTableExt.oSort={"string-asc":function(a,b)
{var x=a.toLowerCase();var y=b.toLowerCase();return((x<y)?-1:((x>y)?1:0));},"string-desc":function(a,b)
{var x=a.toLowerCase();var y=b.toLowerCase();return((x<y)?1:((x>y)?-1:0));},"html-asc":function(a,b)
{var x=a.replace(/<.*?>/g,"").toLowerCase();var y=b.replace(/<.*?>/g,"").toLowerCase();return((x<y)?-1:((x>y)?1:0));},"html-desc":function(a,b)
{var x=a.replace(/<.*?>/g,"").toLowerCase();var y=b.replace(/<.*?>/g,"").toLowerCase();return((x<y)?1:((x>y)?-1:0));},"date-asc":function(a,b)
{var x=Date.parse(a);var y=Date.parse(b);if(isNaN(x))
{x=Date.parse("01/01/1970 00:00:00");}
if(isNaN(y))
{y=Date.parse("01/01/1970 00:00:00");}
return x-y;},"date-desc":function(a,b)
{var x=Date.parse(a);var y=Date.parse(b);if(isNaN(x))
{x=Date.parse("01/01/1970 00:00:00");}
if(isNaN(y))
{y=Date.parse("01/01/1970 00:00:00");}
return y-x;},"numeric-asc":function(a,b)
{var x=a=="-"?0:a;var y=b=="-"?0:b;return x-y;},"numeric-desc":function(a,b)
{var x=a=="-"?0:a;var y=b=="-"?0:b;return y-x;}};$.fn.dataTableExt.aTypes=[function(sData)
{var sValidChars="0123456789.-";var Char;for(i=0;i<sData.length;i++)
{Char=sData.charAt(i);if(sValidChars.indexOf(Char)==-1)
{return null;}}
return'numeric';},function(sData)
{if(!isNaN(Date.parse(sData)))
{return'date';}
return null;}];$.fn.dataTableExt._oExternConfig={"iNextUnique":0};$.fn.dataTable=function(oInit)
{var _aoSettings=$.fn.dataTableSettings;function classSettings()
{this.sInstance=null;this.oFeatures={"bPaginate":true,"bLengthChange":true,"bFilter":true,"bSort":true,"bInfo":true,"bAutoWidth":true,"bProcessing":false,"bSortClasses":true,"bStateSave":false};this.oLanguage={"sProcessing":"Processing...","sLengthMenu":"Show _MENU_ entries","sZeroRecords":"No matching records found","sInfo":"Showing _START_ to _END_ of _TOTAL_ entries","sInfoEmpty":"Showing 0 to 0 of 0 entries","sInfoFiltered":"(filtered from _MAX_ total entries)","sInfoPostFix":"","sSearch":"Search:","sUrl":"","oPaginate":{"sFirst":"First","sPrevious":"Previous","sNext":"Next","sLast":"Last"}};this.aoData=[];this.aiDisplay=[];this.aiDisplayMaster=[];this.aoColumns=[];this.iNextId=0;this.asDataSearch=[];this.oPreviousSearch={"sSearch":"","bEscapeRegex":true};this.aoPreSearchCols=[];this.nInfo=null;this.nProcessing=null;this.iDisplayLength=5;this.iDisplayStart=0;this.iDisplayEnd=5;this.aaSorting=[[0,'asc']];this.asStripClasses=['odd','even'];this.fnRowCallback=null;this.fnHeaderCallback=null;this.fnFooterCallback=null;this.fnDrawCallback=null;this.fnInitComplete=null;this.nFooter=null;this.sTableId="";this.nTable=null;this.iDefaultSortIndex=0;this.bInitialised=false;this.nOpenRow=null;this.nPaginate=null;this.nPrevious=null;this.nNext=null;this.sDomPositioning='lfrtip';this.sPaginationType="two_button";this.sAjaxSource=null;this.iCookieDuration=60*60*2;}
this.oApi={};this.fnDraw=function()
{_fnReDraw(_fnSettingsFromNode(this[0]));};this.fnFilter=function(sInput,iColumn,bEscapeRegex)
{var oSettings=_fnSettingsFromNode(this[0]);if(typeof bEscapeRegex=='undefined')
{bEscapeRegex=true;}
if(typeof iColumn=="undefined"||iColumn===null)
{_fnFilterComplete(oSettings,{"sSearch":sInput,"bEscapeRegex":bEscapeRegex},1);}
else
{oSettings.aoPreSearchCols[iColumn].sSearch=sInput;oSettings.aoPreSearchCols[iColumn].bEscapeRegex=bEscapeRegex;_fnFilterComplete(oSettings,oSettings.oPreviousSearch,1);}};this.fnSettings=function(nNode)
{return _fnSettingsFromNode(this[0]);};this.fnSort=function(aaSort)
{var oSettings=_fnSettingsFromNode(this[0]);oSettings.aaSorting=aaSort;_fnSort(oSettings);};this.fnAddData=function(mData,bRedraw)
{var aiReturn=[];var iTest;if(typeof bRedraw=='undefined')
{bRedraw=true;}
var oSettings=_fnSettingsFromNode(this[0]);if(typeof mData[0]=="object")
{for(var i=0;i<mData.length;i++)
{iTest=_fnAddData(oSettings,mData[i]);if(iTest==-1)
{return aiReturn;}
aiReturn.push(iTest);}}
else
{iTest=_fnAddData(oSettings,mData);if(iTest==-1)
{return aiReturn;}
aiReturn.push(iTest);}
oSettings.aiDisplay=oSettings.aiDisplayMaster.slice();_fnBuildSearchArray(oSettings,1);if(bRedraw)
{_fnReDraw(oSettings);}
return aiReturn;};this.fnDeleteRow=function(iAODataIndex,fnCallBack)
{var oSettings=_fnSettingsFromNode(this[0]);var i;for(i=0;i<oSettings.aiDisplayMaster.length;i++)
{if(oSettings.aiDisplayMaster[i]==iAODataIndex)
{oSettings.aiDisplayMaster.splice(i,1);break;}}
for(i=0;i<oSettings.aiDisplay.length;i++)
{if(oSettings.aiDisplay[i]==iAODataIndex)
{oSettings.aiDisplay.splice(i,1);}}
_fnBuildSearchArray(oSettings,1);if(typeof fnCallBack=="function")
{fnCallBack.call(this);}
if(oSettings.iDisplayStart>oSettings.aiDisplay.length)
{oSettings.iDisplayStart-=oSettings.iDisplayLength;}
_fnCalculateEnd(oSettings);_fnDraw(oSettings);return oSettings.aoData[iAODataIndex]._aData.slice();};this.fnClearTable=function()
{var oSettings=_fnSettingsFromNode(this[0]);oSettings.aoData.length=0;oSettings.aiDisplayMaster.length=0;oSettings.aiDisplay.length=0;_fnCalculateEnd(oSettings);_fnDraw(oSettings);};this.fnOpen=function(nTr,sHtml,sClass)
{var oSettings=_fnSettingsFromNode(this[0]);if(oSettings.nOpenRow!==null)
{this.fnClose();}
var nNewRow=document.createElement("tr");var nNewCell=document.createElement("td");nNewRow.appendChild(nNewCell);nNewRow.className=sClass;nNewCell.colSpan=oSettings.aoColumns.length;nNewCell.innerHTML=sHtml;$(nNewRow).insertAfter(nTr);oSettings.nOpenRow=nNewRow;};this.fnClose=function()
{var oSettings=_fnSettingsFromNode(this[0]);$(oSettings.nOpenRow).remove();oSettings.nOpenRow=null;};this.fnGetData=function(iRow)
{var oSettings=_fnSettingsFromNode(this[0]);if(typeof iRow!='undefined')
{return oSettings.aoData[iRow]._aData;}
return _fnGetDataMaster(oSettings);};this.fnGetNodes=function(iRow)
{var oSettings=_fnSettingsFromNode(this[0]);if(typeof iRow!='undefined')
{return oSettings.aoData[iRow].nTr;}
return _fnGetTrNodes(oSettings);};this.fnGetPosition=function(nNode)
{var oSettings=_fnSettingsFromNode(this[0]);var i;if(nNode.nodeName=="TR")
{for(i=0;i<oSettings.aoData.length;i++)
{if(oSettings.aoData[i].nTr==nNode)
{return i;}}}
else if(nNode.nodeName=="TD")
{for(i=0;i<oSettings.aoData.length;i++)
{var iCorrector=0;for(var j=0;j<oSettings.aoColumns.length;j++)
{if(oSettings.aoColumns[j].bVisible)
{if(oSettings.aoData[i].nTr.getElementsByTagName('td')[j-iCorrector]==nNode)
{return[i,j-iCorrector,j];}}
else
{iCorrector++;}}}}
return null;};this.fnUpdate=function(mData,iRow,iColumn,bRedraw)
{var oSettings=_fnSettingsFromNode(this[0]);var iVisibleColumn;var sRendered;if(typeof bRedraw=='undefined')
{bRedraw=true;}
if(typeof mData!='object')
{oSettings.aoData[iRow]._aData[iColumn]=mData;if(oSettings.aoColumns[iColumn].fnRender!==null&&oSettings.aoColumns[iColumn].bUseRendered)
{sRendered=oSettings.aoColumns[iColumn].fnRender({"iDataRow":iRow,"iDataColumn":iColumn,"aData":oSettings.aoData[iRow]._aData});oSettings.aoData[iRow]._aData[iColumn]=sRendered;}
iVisibleColumn=_fnColumnIndexToVisible(oSettings,iColumn);if(iVisibleColumn!==null)
{oSettings.aoData[iRow].nTr.getElementsByTagName('td')[iVisibleColumn].innerHTML=oSettings.aoData[iRow]._aData[iColumn];}}
else
{if(mData.length!=oSettings.aoColumns.length)
{alert('Warning: An array passed to fnUpdate must have the same number of columns as '+'the table in question - in this case '+oSettings.aoColumns.length);return 1;}
for(var i=0;i<mData.length;i++)
{oSettings.aoData[iRow]._aData[i]=mData[i];if(oSettings.aoColumns[i].fnRender!==null&&oSettings.aoColumns[i].bUseRendered)
{sRendered=oSettings.aoColumns[i].fnRender({"iDataRow":iRow,"iDataColumn":i,"aData":oSettings.aoData[iRow]._aData});oSettings.aoData[iRow]._aData[i]=sRendered;}
iVisibleColumn=_fnColumnIndexToVisible(oSettings,i);if(iVisibleColumn!==null)
{oSettings.aoData[iRow].nTr.getElementsByTagName('td')[iVisibleColumn].innerHTML=oSettings.aoData[iRow]._aData[i];}}}
_fnBuildSearchArray(oSettings,1);if(bRedraw)
{_fnReDraw(oSettings);}
return 0;};function _fnExternApiFunc(sFunc)
{return function(){var aArgs=[_fnSettingsFromNode(this[0])].concat(Array.prototype.slice.call(arguments));return $.fn.dataTableExt.oApi[sFunc].apply(this,aArgs);};}
var bApi=false;for(var sFunc in $.fn.dataTableExt.oApi)
{if(sFunc)
{this[sFunc]=_fnExternApiFunc(sFunc);bApi=true;}}
function _fnInitalise(oSettings)
{if(oSettings.bInitialised===false)
{setTimeout(function(){_fnInitalise(oSettings);},200);return;}
_fnAddOptionsHtml(oSettings);_fnDrawHead(oSettings);if(oSettings.oFeatures.bSort)
{_fnSort(oSettings,false);_fnSortingClasses(oSettings);}
else
{oSettings.aiDisplay=oSettings.aiDisplayMaster.slice();_fnCalculateEnd(oSettings);_fnDraw(oSettings);}
if(oSettings.sAjaxSource!==null)
{_fnProcessingDisplay(oSettings,true);$.getJSON(oSettings.sAjaxSource,null,function(json){for(var i=0;i<json.aaData.length;i++)
{_fnAddData(oSettings,json.aaData[i]);}
if(oSettings.oFeatures.bSort)
{_fnSort(oSettings);}
else
{oSettings.aiDisplay=oSettings.aiDisplayMaster.slice();_fnCalculateEnd(oSettings);_fnDraw(oSettings);}
_fnProcessingDisplay(oSettings,false);if(typeof oSettings.fnInitComplete=='function')
{oSettings.fnInitComplete(oSettings);}});return;}
if(oSettings.oFeatures.bSort)
{_fnSortingClasses(oSettings);}
if(typeof oSettings.fnInitComplete=='function')
{oSettings.fnInitComplete(oSettings);}}
function _fnLanguageProcess(oSettings,oLanguage,bInit)
{if(typeof oLanguage.sProcessing!='undefined'){oSettings.oLanguage.sProcessing=oLanguage.sProcessing;}
if(typeof oLanguage.sLengthMenu!='undefined'){oSettings.oLanguage.sLengthMenu=oLanguage.sLengthMenu;}
if(typeof oLanguage.sZeroRecords!='undefined'){oSettings.oLanguage.sZeroRecords=oLanguage.sZeroRecords;}
if(typeof oLanguage.sInfo!='undefined'){oSettings.oLanguage.sInfo=oLanguage.sInfo;}
if(typeof oLanguage.sInfoEmpty!='undefined'){oSettings.oLanguage.sInfoEmpty=oLanguage.sInfoEmpty;}
if(typeof oLanguage.sInfoFiltered!='undefined'){oSettings.oLanguage.sInfoFiltered=oLanguage.sInfoFiltered;}
if(typeof oLanguage.sInfoPostFix!='undefined'){oSettings.oLanguage.sInfoPostFix=oLanguage.sInfoPostFix;}
if(typeof oLanguage.sSearch!='undefined'){oSettings.oLanguage.sSearch=oLanguage.sSearch;}
if(typeof oLanguage.oPaginate!='undefined')
{if(typeof oLanguage.oPaginate!='undefined'){oSettings.oLanguage.oPaginate.sFirst=oLanguage.oPaginate.sFirst;}
if(typeof oLanguage.oPaginate!='undefined'){oSettings.oLanguage.oPaginate.sPrevious=oLanguage.oPaginate.sPrevious;}
if(typeof oLanguage.oPaginate!='undefined'){oSettings.oLanguage.oPaginate.sNext=oLanguage.oPaginate.sNext;}
if(typeof oLanguage.oPaginate!='undefined'){oSettings.oLanguage.oPaginate.sLast=oLanguage.oPaginate.sLast;}}
if(bInit)
{_fnInitalise(oSettings);}}
function _fnAddColumn(oSettings,oOptions)
{oSettings.aoColumns[oSettings.aoColumns.length++]={"sType":null,"_bAutoType":true,"bVisible":true,"bSearchable":true,"bSortable":true,"sTitle":null,"sWidth":null,"sClass":null,"fnRender":null,"bUseRendered":true,"iDataSort":oSettings.aoColumns.length-1};if(typeof oOptions!='undefined'&&oOptions!==null)
{var iLength=oSettings.aoColumns.length-1;if(typeof oOptions.sType!='undefined')
{oSettings.aoColumns[iLength].sType=oOptions.sType;oSettings.aoColumns[iLength]._bAutoType=false;}
if(typeof oOptions.bVisible!='undefined'){oSettings.aoColumns[iLength].bVisible=oOptions.bVisible;}
if(typeof oOptions.bSearchable!='undefined'){oSettings.aoColumns[iLength].bSearchable=oOptions.bSearchable;}
if(typeof oOptions.bSortable!='undefined'){oSettings.aoColumns[iLength].bSortable=oOptions.bSortable;}
if(typeof oOptions.sTitle!='undefined'){oSettings.aoColumns[iLength].sTitle=oOptions.sTitle;}
if(typeof oOptions.sWidth!='undefined'){oSettings.aoColumns[iLength].sWidth=oOptions.sWidth;}
if(typeof oOptions.sClass!='undefined'){oSettings.aoColumns[iLength].sClass=oOptions.sClass;}
if(typeof oOptions.fnRender!='undefined'){oSettings.aoColumns[iLength].fnRender=oOptions.fnRender;}
if(typeof oOptions.bUseRendered!='undefined'){oSettings.aoColumns[iLength].bUseRendered=oOptions.bUseRendered;}
if(typeof oOptions.iDataSort!='undefined'){oSettings.aoColumns[iLength].iDataSort=oOptions.iDataSort;}}
oSettings.aoPreSearchCols[oSettings.aoPreSearchCols.length++]={"sSearch":"","bEscapeRegex":true};}
function _fnAddData(oSettings,aData)
{if(aData.length!=oSettings.aoColumns.length)
{return-1;}
var iThisIndex=oSettings.aoData.length;oSettings.aoData.push({"_iId":oSettings.iNextId++,"_aData":aData.slice(),"nTr":document.createElement('tr')});var nTd;for(var i=0;i<aData.length;i++)
{if(oSettings.aoColumns[i].bVisible)
{nTd=document.createElement('td');if(typeof oSettings.aoColumns[i].fnRender=='function')
{var sRendered=oSettings.aoColumns[i].fnRender({"iDataRow":iThisIndex,"iDataColumn":i,"aData":aData});nTd.innerHTML=sRendered;if(oSettings.aoColumns[i].bUseRendered)
{oSettings.aoData[iThisIndex]._aData[i]=sRendered;}}
else
{nTd.innerHTML=aData[i];}
if(oSettings.aoColumns[i].sClass!==null)
{nTd.className=oSettings.aoColumns[i].sClass;}
if(oSettings.aoColumns[i]._bAutoType&&oSettings.aoColumns[i].sType!='string')
{if(oSettings.aoColumns[i].sType===null)
{oSettings.aoColumns[i].sType=_fnDetectType(aData[i]);}
else if(oSettings.aoColumns[i].sType=="date"||oSettings.aoColumns[i].sType=="numeric")
{oSettings.aoColumns[i].sType=_fnDetectType(aData[i]);}}
oSettings.aoData[iThisIndex].nTr.appendChild(nTd);}}
oSettings.aiDisplayMaster.push(iThisIndex);return iThisIndex;}
function _fnGatherData(oSettings)
{var nDataNodes;var iDataLength=$('tbody tr').length;var iLoop;var i,j;if($('thead th',oSettings.nTable).length!=oSettings.aoColumns.length)
{alert('Warning - columns do not match');}
oSettings.nHeader=$('thead',oSettings.nTable)[0];if(typeof $('tfoot',oSettings.nTable)[0]!='undefined')
{oSettings.nFooter=$('tfoot',oSettings.nTable)[0];}
$('tbody tr',oSettings.nTable).each(function(){var iThisIndex=oSettings.aoData.length;oSettings.aoData.push({"_iId":oSettings.iNextId++,"_aData":[],"nTr":this});oSettings.aiDisplayMaster.push(iThisIndex);var aLocalData=oSettings.aoData[iThisIndex]._aData;$('td',this).each(function(i){aLocalData[i]=this.innerHTML;});});var iCorrector=0;for(i=0;i<oSettings.aoColumns.length;i++)
{if(oSettings.aoColumns[i].sTitle===null)
{oSettings.aoColumns[i].sTitle=$('thead th:nth-child('+(i+1)+')',oSettings.nTable).html();}
if(oSettings.aoColumns[i]._bAutoType)
{iLoop=oSettings.aoData.length;for(j=0;j<iLoop;j++)
{if(oSettings.aoColumns[i].sType===null)
{oSettings.aoColumns[i].sType=_fnDetectType(oSettings.aoData[j]._aData[i]);}
else if(oSettings.aoColumns[i].sType=="date"||oSettings.aoColumns[i].sType=="numeric")
{oSettings.aoColumns[i].sType=_fnDetectType(oSettings.aoData[j]._aData[i]);}}}
if(oSettings.aoColumns[i].sClass!==null)
{iLoop=oSettings.aoData.length;for(j=0;j<iLoop;j++)
{oSettings.aoData[j].nTr.getElementsByTagName('td')[i-iCorrector].className+=' '+oSettings.aoColumns[i].sClass;}}
if(typeof oSettings.aoColumns[i].fnRender=='function')
{iLoop=oSettings.aoData.length;for(j=0;j<iLoop;j++)
{var sRendered=oSettings.aoColumns[i].fnRender({"iDataRow":j,"iDataColumn":i,"aData":oSettings.aoData[j]._aData});oSettings.aoData[j].nTr.getElementsByTagName('td')[i-iCorrector].innerHTML=sRendered;if(oSettings.aoColumns[i].bUseRendered)
{oSettings.aoData[j]._aData[i]=sRendered;}}}
if(!oSettings.aoColumns[i].bVisible)
{iLoop=oSettings.aoData.length;for(j=0;j<iLoop;j++)
{var nRemove=oSettings.aoData[j].nTr.getElementsByTagName('td')[i-iCorrector];nRemove.parentNode.removeChild(nRemove);}
iCorrector++;}}}
function _fnDrawHead(oSettings)
{var i;var nThOriginals=$('thead th',oSettings.nTable);if(nThOriginals.length==oSettings.aoColumns.length)
{for(i=0;i<oSettings.aoColumns.length;i++)
{if(oSettings.aoColumns[i].bVisible)
{if(oSettings.aoColumns[i].sWidth!==null)
{nThOriginals[i].style.width=oSettings.aoColumns[i].sWidth;}
if(oSettings.aoColumns[i].sTitle!=nThOriginals[i].innerHTML)
{nThOriginals[i].innerHTML=oSettings.aoColumns[i].sTitle;}}
else
{nThOriginals[i].parentNode.removeChild(nThOriginals[i]);}}}
else
{var nTh;var nTr=document.createElement("tr");for(i=0;i<oSettings.aoColumns.length;i++)
{if(oSettings.aoColumns[i].bVisible)
{nTh=document.createElement("th");if(typeof nThOriginals[i]!="undefined"&&nThOriginals[i].className!=='')
{nTh.className=nThOriginals[i].className;}
if(oSettings.aoColumns[i].sWidth!==null)
{nTh.style.width=oSettings.aoColumns[i].sWidth;}
nTh.innerHTML=oSettings.aoColumns[i].sTitle;nTr.appendChild(nTh);}}
$('thead',oSettings.nTable).html('')[0].appendChild(nTr);}
if(oSettings.oFeatures.bSort)
{$('thead th',oSettings.nTable).click(function(e){var iDataIndex=$("thead th",oSettings.nTable).index(this);iDataIndex=_fnVisibleToColumnIndex(oSettings,iDataIndex);if(oSettings.aoColumns[iDataIndex].bSortable===false)
{return;}
_fnProcessingDisplay(oSettings,true);setTimeout(function(){if(e.shiftKey)
{var bFound=false;for(var i=0;i<oSettings.aaSorting.length;i++)
{if(oSettings.aaSorting[i][0]==iDataIndex)
{if(oSettings.aaSorting[i][1]=="asc")
{oSettings.aaSorting[i][1]="desc";}
else
{oSettings.aaSorting.splice(i,1);}
bFound=true;break;}}
if(bFound===false)
{oSettings.aaSorting.push([iDataIndex,"asc"]);}}
else
{if(oSettings.aaSorting.length==1&&oSettings.aaSorting[0][0]==iDataIndex)
{oSettings.aaSorting[0][1]=oSettings.aaSorting[0][1]=="asc"?"desc":"asc";}
else
{oSettings.aaSorting.splice(0,oSettings.aaSorting.length);oSettings.aaSorting.push([iDataIndex,"asc"]);}}
_fnSortingClasses(oSettings);_fnSort(oSettings);_fnProcessingDisplay(oSettings,false);},0);});$('thead th',oSettings.nTable).mousedown(function(){this.onselectstart=function(){return false;};return false;});}
if(oSettings.oFeatures.bAutoWidth)
{oSettings.nTable.style.width=oSettings.nTable.offsetWidth+"px";}}
function _fnDraw(oSettings)
{var i;var anRows=[];var iRowCount=0;var iStrips=oSettings.asStripClasses.length;if(oSettings.aiDisplay.length!==0)
{for(var j=oSettings.iDisplayStart;j<oSettings.iDisplayEnd;j++)
{var nRow=oSettings.aoData[oSettings.aiDisplay[j]].nTr;$(nRow).removeClass(oSettings.asStripClasses.join(' '));$(nRow).addClass(oSettings.asStripClasses[iRowCount%iStrips]);if(typeof oSettings.fnRowCallback=="function")
{anRows[iRowCount]=oSettings.fnRowCallback(nRow,oSettings.aoData[oSettings.aiDisplay[j]]._aData,iRowCount,j);}
anRows.push(nRow);iRowCount++;}}
else
{anRows[0]=document.createElement('tr');if(typeof oSettings.asStripClasses[0]!='undefined')
{anRows[0].className=oSettings.asStripClasses[0];}
var nTd=document.createElement('td');nTd.setAttribute('valign',"top");nTd.colSpan=oSettings.aoColumns.length;nTd.style.textAlign="center";nTd.className='dataTables_empty';nTd.innerHTML=oSettings.oLanguage.sZeroRecords;anRows[iRowCount].appendChild(nTd);}
if(typeof oSettings.fnHeaderCallback=='function')
{oSettings.fnHeaderCallback($('thead tr',oSettings.nTable)[0],_fnGetDataMaster(oSettings),oSettings.iDisplayStart,oSettings.iDisplayEnd,oSettings.aiDisplay);}
if(typeof oSettings.fnFooterCallback=='function')
{oSettings.fnFooterCallback(oSettings.nFooter,_fnGetDataMaster(oSettings),oSettings.iDisplayStart,oSettings.iDisplayEnd,oSettings.aiDisplay);}
var nTrs=$('tbody:eq(0)>tr',oSettings.nTable);for(i=0;i<nTrs.length;i++)
{nTrs[i].parentNode.removeChild(nTrs[i]);}
var nBody=$('tbody:eq(0)',oSettings.nTable);for(i=0;i<anRows.length;i++)
{nBody[0].appendChild(anRows[i]);}
if(oSettings.oFeatures.bPaginate)
{$.fn.dataTableExt.oPagination[oSettings.sPaginationType].fnUpdate(oSettings,function(oSettings){_fnCalculateEnd(oSettings);_fnDraw(oSettings);});}
if(oSettings.oFeatures.bInfo)
{if(oSettings.aiDisplay.length===0&&oSettings.aiDisplay.length==oSettings.aiDisplayMaster.length)
{oSettings.nInfo.innerHTML=oSettings.oLanguage.sInfoEmpty+' '+oSettings.oLanguage.sInfoPostFix;}
else if(oSettings.aiDisplay.length===0)
{oSettings.nInfo.innerHTML=oSettings.oLanguage.sInfoEmpty+' '+
oSettings.oLanguage.sInfoFiltered.replace('_MAX_',oSettings.aiDisplayMaster.length)+' '+oSettings.oLanguage.sInfoPostFix;}
else if(oSettings.aiDisplay.length==oSettings.aiDisplayMaster.length)
{oSettings.nInfo.innerHTML=oSettings.oLanguage.sInfo.replace('_START_',oSettings.iDisplayStart+1).replace('_END_',oSettings.iDisplayEnd).replace('_TOTAL_',oSettings.aiDisplay.length)+' '+
oSettings.oLanguage.sInfoPostFix;}
else
{oSettings.nInfo.innerHTML=oSettings.oLanguage.sInfo.replace('_START_',oSettings.iDisplayStart+1).replace('_END_',oSettings.iDisplayEnd).replace('_TOTAL_',oSettings.aiDisplay.length)+' '+
oSettings.oLanguage.sInfoFiltered.replace('_MAX_',oSettings.aiDisplayMaster.length)+' '+
oSettings.oLanguage.sInfoPostFix;}}
_fnSaveState(oSettings);if(typeof oSettings.fnDrawCallback=='function')
{oSettings.fnDrawCallback();}}
function _fnReDraw(oSettings)
{if(oSettings.oFeatures.bSort)
{_fnSort(oSettings,oSettings.oPreviousSearch);}
else if(oSettings.oFeatures.bFilter)
{_fnFilterComplete(oSettings,oSettings.oPreviousSearch);}
else
{_fnCalculateEnd(oSettings);_fnDraw(oSettings);}}
function _fnAddOptionsHtml(oSettings)
{var nHolding=document.createElement('div');oSettings.nTable.parentNode.insertBefore(nHolding,oSettings.nTable);var nWrapper=document.createElement('div');nWrapper.className="dataTables_wrapper";if(oSettings.sTableId!=='')
{nWrapper.setAttribute('id',oSettings.sTableId+'_wrapper');}
var nInsertNode=nWrapper;var sDom=oSettings.sDomPositioning.split('');for(var i=0;i<sDom.length;i++)
{var cOption=sDom[i];if(cOption=='<')
{var nNewNode=document.createElement('div');var cNext=sDom[i+1];if(cNext=="'"||cNext=='"')
{var sClass="";var j=2;while(sDom[i+j]!=cNext)
{sClass+=sDom[i+j];j++;}
nNewNode.className=sClass;i+=j;}
nInsertNode.appendChild(nNewNode);nInsertNode=nNewNode;}
else if(cOption=='>')
{nInsertNode=nInsertNode.parentNode;}
else if(cOption=='l'&&oSettings.oFeatures.bPaginate&&oSettings.oFeatures.bLengthChange)
{nInsertNode.appendChild(_fnFeatureHtmlLength(oSettings));}
else if(cOption=='f'&&oSettings.oFeatures.bFilter)
{nInsertNode.appendChild(_fnFeatureHtmlFilter(oSettings));}
else if(cOption=='r'&&oSettings.oFeatures.bProcessing)
{nInsertNode.appendChild(_fnFeatureHtmlProcessing(oSettings));}
else if(cOption=='t')
{nInsertNode.appendChild(oSettings.nTable);}
else if(cOption=='i'&&oSettings.oFeatures.bInfo)
{nInsertNode.appendChild(_fnFeatureHtmlInfo(oSettings));}
else if(cOption=='p'&&oSettings.oFeatures.bPaginate)
{nInsertNode.appendChild(_fnFeatureHtmlPaginate(oSettings));}}
nHolding.parentNode.replaceChild(nWrapper,nHolding);}
function _fnFeatureHtmlFilter(oSettings)
{var nFilter=document.createElement('div');if(oSettings.sTableId!=='')
{nFilter.setAttribute('id',oSettings.sTableId+'_filter');}
nFilter.className="dataTables_filter";nFilter.innerHTML=oSettings.oLanguage.sSearch+' <input type="text" value="'+
oSettings.oPreviousSearch.sSearch.replace('"','&quot;')+'" />';$("input",nFilter).keyup(function(e){_fnFilterComplete(oSettings,{"sSearch":this.value,"bEscapeRegex":oSettings.oPreviousSearch.bEscapeRegex});});return nFilter;}
function _fnFeatureHtmlInfo(oSettings)
{var nInfo=document.createElement('div');oSettings.nInfo=nInfo;if(oSettings.sTableId!=='')
{oSettings.nInfo.setAttribute('id',oSettings.sTableId+'_info');}
oSettings.nInfo.className="dataTables_info";return nInfo;}
function _fnFeatureHtmlPaginate(oSettings)
{var nPaginate=document.createElement('div');nPaginate.className="dataTables_paginate";oSettings.nPaginate=nPaginate;$.fn.dataTableExt.oPagination[oSettings.sPaginationType].fnInit(oSettings,function(oSettings){_fnCalculateEnd(oSettings);_fnDraw(oSettings);});return nPaginate;}
function _fnFeatureHtmlLength(oSettings)
{var sName=(oSettings.sTableId==="")?"":'name="'+oSettings.sTableId+'_length"';var sStdMenu='<select size="1" '+sName+'>'+'<option value="10">10</option>'+'<option value="25">25</option>'+'<option value="50">50</option>'+'<option value="100">100</option>'+'</select>';var nLength=document.createElement('div');if(oSettings.sTableId!=='')
{nLength.setAttribute('id',oSettings.sTableId+'_length');}
nLength.className="dataTables_length";nLength.innerHTML=oSettings.oLanguage.sLengthMenu.replace('_MENU_',sStdMenu);$('select option[value="'+oSettings.iDisplayLength+'"]',nLength).attr("selected",true);$('select',nLength).change(function(){oSettings.iDisplayLength=parseInt($(this).val(),10);_fnCalculateEnd(oSettings);if(oSettings.iDisplayEnd==oSettings.aiDisplay.length)
{oSettings.iDisplayStart=oSettings.iDisplayEnd-oSettings.iDisplayLength;if(oSettings.iDisplayStart<0)
{oSettings.iDisplayStart=0;}}
_fnDraw(oSettings);});return nLength;}
function _fnFeatureHtmlProcessing(oSettings)
{var nProcessing=document.createElement('div');oSettings.nProcessing=nProcessing;if(oSettings.sTableId!=='')
{oSettings.nProcessing.setAttribute('id',oSettings.sTableId+'_processing');}
oSettings.nProcessing.appendChild(document.createTextNode(oSettings.oLanguage.sProcessing));oSettings.nProcessing.className="dataTables_processing";oSettings.nProcessing.style.visibility="hidden";oSettings.nTable.parentNode.insertBefore(oSettings.nProcessing,oSettings.nTable);return nProcessing;}
function _fnProcessingDisplay(oSettings,bShow)
{if(oSettings.oFeatures.bProcessing)
{if(bShow)
{oSettings.nProcessing.style.visibility="visible";}
else
{oSettings.nProcessing.style.visibility="hidden";}}}
function _fnFilterComplete(oSettings,oInput,iForce)
{_fnFilter(oSettings,oInput.sSearch,iForce,oInput.bEscapeRegex);for(var i=0;i<oSettings.aoPreSearchCols.length;i++)
{_fnFilterColumn(oSettings,oSettings.aoPreSearchCols[i].sSearch,i,oSettings.aoPreSearchCols[i].bEscapeRegex);}
if(typeof oSettings.iInitDisplayStart!='undefined'&&oSettings.iInitDisplayStart!=-1)
{oSettings.iDisplayStart=oSettings.iInitDisplayStart;oSettings.iInitDisplayStart=-1;}
else
{oSettings.iDisplayStart=0;}
_fnCalculateEnd(oSettings);_fnDraw(oSettings);_fnBuildSearchArray(oSettings,0);}
function _fnFilterColumn(oSettings,sInput,iColumn,bEscapeRegex)
{if(sInput==="")
{return;}
var iIndexCorrector=0;var sRegexMatch=bEscapeRegex?_fnEscapeRegex(sInput):sInput;var rpSearch=new RegExp(sRegexMatch,"i");for(i=oSettings.aiDisplay.length-1;i>=0;i--)
{if(!rpSearch.test(oSettings.aoData[oSettings.aiDisplay[i]]._aData[iColumn]))
{oSettings.aiDisplay.splice(i,1);iIndexCorrector++;}}}
function _fnFilter(oSettings,sInput,iForce,bEscapeRegex)
{var flag,i,j;if(typeof iForce=='undefined'||iForce===null)
{iForce=0;}
if(typeof bRedraw=='undefined'||bRedraw===null)
{bRedraw=true;}
var asSearch=bEscapeRegex?_fnEscapeRegex(sInput).split(' '):sInput.split(' ');var sRegExpString='^(?=.*?'+asSearch.join(')(?=.*?')+').*$';var rpSearch=new RegExp(sRegExpString,"i");if(sInput.length<=0)
{oSettings.aiDisplay.splice(0,oSettings.aiDisplay.length);oSettings.aiDisplay=oSettings.aiDisplayMaster.slice();}
else
{if(oSettings.aiDisplay.length==oSettings.aiDisplayMaster.length||oSettings.oPreviousSearch.sSearch.length>sInput.length||iForce==1||sInput.indexOf(oSettings.oPreviousSearch.sSearch)!==0)
{oSettings.aiDisplay.splice(0,oSettings.aiDisplay.length);_fnBuildSearchArray(oSettings,1);for(i=0;i<oSettings.aiDisplayMaster.length;i++)
{if(rpSearch.test(oSettings.asDataSearch[i]))
{oSettings.aiDisplay.push(oSettings.aiDisplayMaster[i]);}}}
else
{var iIndexCorrector=0;for(i=0;i<oSettings.asDataSearch.length;i++)
{if(!rpSearch.test(oSettings.asDataSearch[i]))
{oSettings.aiDisplay.splice(i-iIndexCorrector,1);iIndexCorrector++;}}}}
oSettings.oPreviousSearch.sSearch=sInput;oSettings.oPreviousSearch.bEscapeRegex=bEscapeRegex;}
function _fnSort(oSettings,bApplyClasses)
{var sDynamicSort="var fnLocalSorting = function(a,b){"+"var iTest;"+"var oSort = $.fn.dataTableExt.oSort;"+"var aoData = oSettings.aoData;";var aaSort=oSettings.aaSorting;var iDataSort;var iDataType;if(aaSort.length!==0)
{for(var i=0;i<aaSort.length-1;i++)
{iDataSort=oSettings.aoColumns[aaSort[i][0]].iDataSort;iDataType=oSettings.aoColumns[iDataSort].sType;sDynamicSort+="iTest = oSort['"+iDataType+"-"+aaSort[i][1]+"']"+"( aoData[a]._aData["+iDataSort+"], aoData[b]._aData["+iDataSort+"] ); if ( iTest === 0 )";}
iDataSort=oSettings.aoColumns[aaSort[aaSort.length-1][0]].iDataSort;iDataType=oSettings.aoColumns[iDataSort].sType;sDynamicSort+="iTest = oSort['"+iDataType+"-"+aaSort[aaSort.length-1][1]+"']"+"( aoData[a]._aData["+iDataSort+"], aoData[b]._aData["+iDataSort+"] ); return iTest;}";eval(sDynamicSort);oSettings.aiDisplayMaster.sort(fnLocalSorting);}
if(typeof bApplyClasses=='undefined'||bApplyClasses)
{_fnSortingClasses(oSettings);}
if(oSettings.oFeatures.bFilter)
{_fnFilterComplete(oSettings,oSettings.oPreviousSearch,1);}
else
{oSettings.aiDisplay=oSettings.aiDisplayMaster.slice();_fnCalculateEnd(oSettings);_fnDraw(oSettings);}}
function _fnSortingClasses(oSettings)
{$("thead th",oSettings.nTable).removeClass("sorting_asc sorting_desc sorting");var iCorrector=0;var i;for(i=0;i<oSettings.aoColumns.length;i++)
{if(oSettings.aoColumns[i].bSortable&&oSettings.aoColumns[i].bVisible)
{var sClass="sorting";for(var j=0;j<oSettings.aaSorting.length;j++)
{if(oSettings.aaSorting[j][0]==i)
{sClass=(oSettings.aaSorting[j][1]=="asc")?"sorting_asc":"sorting_desc";break;}}
$("thead th:eq("+_fnColumnIndexToVisible(oSettings,i)+")",oSettings.nTable).addClass(sClass);}}
if(oSettings.oFeatures.bSortClasses)
{var nTrs=_fnGetTrNodes(oSettings);$('td',nTrs).removeClass('sorting_1 sorting_2 sorting_3');for(i=0;i<oSettings.aaSorting.length;i++)
{if(i<=1)
{$('td:eq('+_fnColumnIndexToVisible(oSettings,oSettings.aaSorting[i][0])+')',nTrs).addClass('sorting_'+(i+1));}
else
{$('td:eq('+_fnColumnIndexToVisible(oSettings,oSettings.aaSorting[i][0])+')',nTrs).addClass('sorting_3');}}}}
function _fnVisibleToColumnIndex(oSettings,iMatch)
{var iColumn=-1;for(var i=0;i<oSettings.aoColumns.length;i++)
{if(oSettings.aoColumns[i].bVisible===true)
{iColumn++;}
if(iColumn==iMatch)
{return i;}}
return null;}
function _fnColumnIndexToVisible(oSettings,iMatch)
{var iVisible=-1;for(var i=0;i<oSettings.aoColumns.length;i++)
{if(oSettings.aoColumns[i].bVisible===true)
{iVisible++;}
if(i==iMatch)
{return oSettings.aoColumns[i].bVisible===true?iVisible:null;}}
return null;}
function _fnBuildSearchArray(oSettings,iMaster)
{oSettings.asDataSearch.splice(0,oSettings.asDataSearch.length);var aArray=(typeof iMaster!='undefined'&&iMaster==1)?oSettings.aiDisplayMaster:oSettings.aiDisplay;for(i=0;i<aArray.length;i++)
{oSettings.asDataSearch[i]='';for(j=0;j<oSettings.aoColumns.length;j++)
{if(oSettings.aoColumns[j].bSearchable)
{var sData=oSettings.aoData[aArray[i]]._aData[j];if(oSettings.aoColumns[j].sType=="html")
{oSettings.asDataSearch[i]+=sData.replace(/\n/g," ").replace(/<.*?>/g,"")+' ';}
else if(typeof sData=="string")
{oSettings.asDataSearch[i]+=sData.replace(/\n/g," ")+' ';}
else
{oSettings.asDataSearch[i]+=sData+' ';}}}}}
function _fnCalculateEnd(oSettings)
{if(oSettings.oFeatures.bPaginate===false)
{oSettings.iDisplayEnd=oSettings.aiDisplay.length;}
else
{if(oSettings.iDisplayStart+oSettings.iDisplayLength>oSettings.aiDisplay.length)
{oSettings.iDisplayEnd=oSettings.aiDisplay.length;}
else
{oSettings.iDisplayEnd=oSettings.iDisplayStart+oSettings.iDisplayLength;}}}
function _fnConvertToWidth(sWidth,nParent)
{if(!sWidth||sWidth===null||sWidth==='')
{return 0;}
if(typeof nParent=="undefined")
{nParent=document.getElementsByTagName('body')[0];}
var iWidth;var nTmp=document.createElement("div");nTmp.style.width=sWidth;nParent.appendChild(nTmp);iWidth=nTmp.offsetWidth;nParent.removeChild(nTmp);return(iWidth);}
function _fnCalculateColumnWidths(oSettings)
{var iTableWidth=oSettings.nTable.offsetWidth;var iTotalUserIpSize=0;var iTmpWidth;var iVisibleColumns=0;var i;var oHeaders=$('thead th',oSettings.nTable);for(i=0;i<oSettings.aoColumns.length;i++)
{if(oSettings.aoColumns[i].bVisible)
{iVisibleColumns++;if(oSettings.aoColumns[i].sWidth!==null)
{iTmpWidth=_fnConvertToWidth(oSettings.aoColumns[i].sWidth,oSettings.nTable.parentNode);iTotalUserIpSize+=iTmpWidth;oSettings.aoColumns[i].sWidth=iTmpWidth+"px";}}}
if(oSettings.aoColumns.length==oHeaders.length&&iTotalUserIpSize===0)
{for(i=0;i<oSettings.aoColumns.length;i++)
{oSettings.aoColumns[i].sWidth=oHeaders[i].offsetWidth+"px";}}
else
{var nCalcTmp=oSettings.nTable.cloneNode(false);nCalcTmp.setAttribute("id",'');var sTableTmp='<table class="'+nCalcTmp.className+'">';var sCalcHead="<tr>";var sCalcHtml="<tr>";for(i=0;i<oSettings.aoColumns.length;i++)
{if(oSettings.aoColumns[i].bVisible)
{sCalcHead+='<th>'+oSettings.aoColumns[i].sTitle+'</th>';if(oSettings.aoColumns[i].sWidth!==null)
{var sWidth='';if(oSettings.aoColumns[i].sWidth!==null)
{sWidth=' style="width:'+oSettings.aoColumns[i].sWidth+';"';}
sCalcHtml+='<td'+sWidth+' tag_index="'+i+'">'+fnGetMaxLenString(oSettings,i)+'</td>';}
else
{sCalcHtml+='<td tag_index="'+i+'">'+fnGetMaxLenString(oSettings,i)+'</td>';}}}
sCalcHead+="</tr>";sCalcHtml+="</tr>";nCalcTmp=$(sTableTmp+sCalcHead+sCalcHtml+'</table>')[0];nCalcTmp.style.width=iTableWidth+"px";nCalcTmp.style.visibility="hidden";nCalcTmp.style.position="absolute";oSettings.nTable.parentNode.appendChild(nCalcTmp);var oNodes=$("td",nCalcTmp);var iIndex;for(i=0;i<oNodes.length;i++)
{iIndex=oNodes[i].getAttribute('tag_index');oSettings.aoColumns[iIndex].sWidth=$("td",nCalcTmp)[i].offsetWidth+"px";}
oSettings.nTable.parentNode.removeChild(nCalcTmp);}}
function fnGetMaxLenString(oSettings,iCol)
{var iMax=0;var iMaxIndex=-1;for(var i=0;i<oSettings.aoData.length;i++)
{if(oSettings.aoData[i]._aData[iCol].length>iMax)
{iMax=oSettings.aoData[i]._aData[iCol].length;iMaxIndex=i;}}
if(iMaxIndex>=0)
{return oSettings.aoData[iMaxIndex]._aData[iCol];}
return'';}
function _fnArrayCmp(aArray1,aArray2)
{if(aArray1.length!=aArray2.length)
{return 1;}
for(var i=0;i<aArray1.length;i++)
{if(aArray1[i]!=aArray2[i])
{return 2;}}
return 0;}
function _fnDetectType(sData)
{var aTypes=$.fn.dataTableExt.aTypes;var iLen=aTypes.length;for(var i=0;i<iLen;i++)
{var sType=aTypes[i](sData);if(sType!==null)
{return sType;}}
return'string';}
function _fnSettingsFromNode(nTable)
{for(var i=0;i<_aoSettings.length;i++)
{if(_aoSettings[i].nTable==nTable)
{return _aoSettings[i];}}
return null;}
function _fnGetDataMaster(oSettings)
{var aData=[];var iLen=oSettings.aoData.length;for(var i=0;i<iLen;i++)
{aData.push(oSettings.aoData[i]._aData);}
return aData;}
function _fnGetTrNodes(oSettings)
{var aNodes=[];var iLen=oSettings.aoData.length;for(var i=0;i<iLen;i++)
{aNodes.push(oSettings.aoData[i].nTr);}
return aNodes;}
function _fnEscapeRegex(sVal)
{var acEscape=['/','.','*','+','?','|','(',')','[',']','{','}','\\','$','^'];var reReplace=new RegExp('(\\'+acEscape.join('|\\')+')','g');return sVal.replace(reReplace,'\\$1');}
function _fnSaveState(oSettings)
{if(!oSettings.oFeatures.bStateSave)
{return;}
var sValue="{";sValue+='"iStart": '+oSettings.iDisplayStart+',';sValue+='"iEnd": '+oSettings.iDisplayEnd+',';sValue+='"iLength": '+oSettings.iDisplayLength+',';sValue+='"sFilter": "'+oSettings.oPreviousSearch.sSearch.replace('"','\\"')+'",';sValue+='"sFilterEsc": '+oSettings.oPreviousSearch.bEscapeRegex+',';sValue+='"aaSorting": [ ';for(var i=0;i<oSettings.aaSorting.length;i++)
{sValue+="["+oSettings.aaSorting[i][0]+",'"+oSettings.aaSorting[i][1]+"'],";}
sValue=sValue.substring(0,sValue.length-1);sValue+="]}";_fnCreateCookie("SpryMedia_DataTables_"+oSettings.sInstance,sValue,oSettings.iCookieDuration);}
function _fnLoadState(oSettings)
{if(!oSettings.oFeatures.bStateSave)
{return;}
var sData=_fnReadCookie("SpryMedia_DataTables_"+oSettings.sInstance);if(sData!==null&&sData!=='')
{if(typeof JSON=='object'&&typeof JSON.parse=='function')
{oData=JSON.parse(sData.replace(/'/g,'"'));}
else
{oData=eval('('+sData+')');}
oSettings.iDisplayStart=oData.iStart;oSettings.iInitDisplayStart=oData.iStart;oSettings.iDisplayEnd=oData.iEnd;oSettings.iDisplayLength=oData.iLength;oSettings.oPreviousSearch.sSearch=oData.sFilter;oSettings.aaSorting=oData.aaSorting.slice();if(typeof oData.sFilterEsc!='undefined')
{oSettings.oPreviousSearch.bEscapeRegex=oData.sFilterEsc;}}}
function _fnCreateCookie(sName,sValue,iSecs)
{var date=new Date();date.setTime(date.getTime()+(iSecs*1000));sName+='_'+window.location.pathname.replace(/[\/:]/g,"");document.cookie=sName+"="+sValue+"; expires="+date.toGMTString()+"; path=/";}
function _fnReadCookie(sName)
{var sNameEQ=sName+'_'+window.location.pathname.replace(/[\/:]/g,"")+"=";var sCookieContents=document.cookie.split(';');for(var i=0;i<sCookieContents.length;i++)
{var c=sCookieContents[i];while(c.charAt(0)==' ')
{c=c.substring(1,c.length);}
if(c.indexOf(sNameEQ)===0)
{return c.substring(sNameEQ.length,c.length);}}
return null;}
if(bApi)
{this.oApi._fnInitalise=_fnInitalise;this.oApi._fnLanguageProcess=_fnLanguageProcess;this.oApi._fnAddColumn=_fnAddColumn;this.oApi._fnAddData=_fnAddData;this.oApi._fnGatherData=_fnGatherData;this.oApi._fnDrawHead=_fnDrawHead;this.oApi._fnDraw=_fnDraw;this.oApi._fnAddOptionsHtml=_fnAddOptionsHtml;this.oApi._fnFeatureHtmlFilter=_fnFeatureHtmlFilter;this.oApi._fnFeatureHtmlInfo=_fnFeatureHtmlInfo;this.oApi._fnFeatureHtmlPaginate=_fnFeatureHtmlPaginate;this.oApi._fnFeatureHtmlLength=_fnFeatureHtmlLength;this.oApi._fnFeatureHtmlProcessing=_fnFeatureHtmlProcessing;this.oApi._fnProcessingDisplay=_fnProcessingDisplay;this.oApi._fnFilterComplete=_fnFilterComplete;this.oApi._fnFilterColumn=_fnFilterColumn;this.oApi._fnFilter=_fnFilter;this.oApi._fnSortingClasses=_fnSortingClasses;this.oApi._fnVisibleToColumnIndex=_fnVisibleToColumnIndex;this.oApi._fnColumnIndexToVisible=_fnColumnIndexToVisible;this.oApi._fnBuildSearchArray=_fnBuildSearchArray;this.oApi._fnCalculateEnd=_fnCalculateEnd;this.oApi._fnConvertToWidth=_fnConvertToWidth;this.oApi._fnCalculateColumnWidths=_fnCalculateColumnWidths;this.oApi._fnArrayCmp=_fnArrayCmp;this.oApi._fnDetectType=_fnDetectType;this.oApi._fnGetDataMaster=_fnGetDataMaster;this.oApi._fnGetTrNodes=_fnGetTrNodes;this.oApi._fnEscapeRegex=_fnEscapeRegex;this.oApi._fnSaveState=_fnSaveState;this.oApi._fnLoadState=_fnLoadState;this.oApi._fnCreateCookie=_fnCreateCookie;this.oApi._fnReadCookie=_fnReadCookie;}
return this.each(function()
{var oSettings=new classSettings();_aoSettings.push(oSettings);var bInitHandedOff=false;var bUsePassedData=false;var sId=this.getAttribute('id');if(sId!==null)
{oSettings.sTableId=sId;oSettings.sInstance=sId;}
else
{oSettings.sInstance=$.fn.dataTableExt._oExternConfig.iNextUnique++;}
oSettings.nTable=this;if(typeof oInit!='undefined'&&oInit!==null)
{if(typeof oInit.bPaginate!='undefined'){oSettings.oFeatures.bPaginate=oInit.bPaginate;}
if(typeof oInit.bLengthChange!='undefined'){oSettings.oFeatures.bLengthChange=oInit.bLengthChange;}
if(typeof oInit.bFilter!='undefined'){oSettings.oFeatures.bFilter=oInit.bFilter;}
if(typeof oInit.bSort!='undefined'){oSettings.oFeatures.bSort=oInit.bSort;}
if(typeof oInit.bInfo!='undefined'){oSettings.oFeatures.bInfo=oInit.bInfo;}
if(typeof oInit.bProcessing!='undefined'){oSettings.oFeatures.bProcessing=oInit.bProcessing;}
if(typeof oInit.bAutoWidth!='undefined'){oSettings.oFeatures.bAutoWidth=oInit.bAutoWidth;}
if(typeof oInit.bSortClasses!='undefined'){oSettings.oFeatures.bSortClasses=oInit.bSortClasses;}
if(typeof oInit.aaData!='undefined'){bUsePassedData=true;}
if(typeof oInit.iDisplayLength!='undefined'){oSettings.iDisplayLength=oInit.iDisplayLength;}
if(typeof oInit.asStripClasses!='undefined'){oSettings.asStripClasses=oInit.asStripClasses;}
if(typeof oInit.fnRowCallback!='undefined'){oSettings.fnRowCallback=oInit.fnRowCallback;}
if(typeof oInit.fnHeaderCallback!='undefined'){oSettings.fnHeaderCallback=oInit.fnHeaderCallback;}
if(typeof oInit.fnFooterCallback!='undefined'){oSettings.fnFooterCallback=oInit.fnFooterCallback;}
if(typeof oInit.fnDrawCallback!='undefined'){oSettings.fnDrawCallback=oInit.fnDrawCallback;}
if(typeof oInit.fnInitComplete!='undefined'){oSettings.fnInitComplete=oInit.fnInitComplete;}
if(typeof oInit.aaSorting!='undefined'){oSettings.aaSorting=oInit.aaSorting;}
if(typeof oInit.sPaginationType!='undefined'){oSettings.sPaginationType=oInit.sPaginationType;}
if(typeof oInit.sDom!='undefined'){oSettings.sDomPositioning=oInit.sDom;}
if(typeof oInit.sAjaxSource!='undefined'){oSettings.sAjaxSource=oInit.sAjaxSource;}
if(typeof oInit.iCookieDuration!='undefined'){oSettings.iCookieDuration=oInit.iCookieDuration;}
if(typeof oInit.bStateSave!='undefined')
{oSettings.oFeatures.bStateSave=oInit.bStateSave;_fnLoadState(oSettings);}
if(typeof oInit!='undefined'&&typeof oInit.aoData!='undefined')
{oInit.aoColumns=oInit.aoData;}
if(typeof oInit.oLanguage!='undefined')
{if(typeof oInit.oLanguage.sUrl!='undefined')
{oSettings.oLanguage.sUrl=oInit.oLanguage.sUrl;$.getJSON(oSettings.oLanguage.sUrl,null,function(json){_fnLanguageProcess(oSettings,json,true);});bInitHandedOff=true;}
else
{_fnLanguageProcess(oSettings,oInit.oLanguage,false);}}}
if(typeof oInit!='undefined'&&typeof oInit.aoColumns!='undefined')
{for(var i=0;i<oInit.aoColumns.length;i++)
{_fnAddColumn(oSettings,oInit.aoColumns[i]);}}
else
{$('thead th',this).each(function(){_fnAddColumn(oSettings,null);});}
if(bUsePassedData)
{for(var j=0;j<oInit.aaData.length;j++)
{_fnAddData(oSettings,oInit.aaData[j]);}
if($('thead',this).length===0)
{this.appendChild(document.createElement('thead'));}
if($('tbody',this).length===0)
{this.appendChild(document.createElement('tbody'));}}
else
{_fnGatherData(oSettings);}
oSettings.aiDisplay=oSettings.aiDisplayMaster.slice();if(oSettings.oFeatures.bAutoWidth)
{_fnCalculateColumnWidths(oSettings);}
oSettings.bInitialised=true;if(bInitHandedOff===false)
{_fnInitalise(oSettings);}});};})(jQuery);