var Util ={'$VERSION':1.06};
function isArray(o){return(o!=null && typeof(o)=="object" && typeof(o.length)=="number" &&(o.length==0 || defined(o[0])));};
function isObject(o){return(o!=null && typeof(o)=="object" && defined(o.constructor) && o.constructor==Object && !defined(o.nodeName));};
function defined(o){return(typeof(o)!="undefined");};
function map(func){var i,j,o;var results = [];if(typeof(func)=="string"){func = new Function('$_',func);}for(i=1;i<arguments.length;i++){o = arguments[i];if(isArray(o)){for(j=0;j<o.length;j++){results[results.length] = func(o[j]);}}else if(isObject(o)){for(j in o){results[results.length] = func(o[j]);}}else{results[results.length] = func(o);}}return results;};
function setDefaultValues(o,values){if(!defined(o) || o==null){o ={};}if(!defined(values) || values==null){return o;}for(var val in values){if(!defined(o[val])){o[val] = values[val];}}return o;};
Array.prototype.contains = function(o){var i,l;if(!(l = this.length)){return false;}for(i=0;i<l;i++){if(o==this[i]){return true;}}}
var DOM =(function(){var dom ={};
dom.getParentByTagName = function(o,tagNames){if(o==null){return null;}if(isArray(tagNames)){tagNames = map("return $_.toUpperCase()",tagNames);while(o=o.parentNode){if(o.nodeName && tagNames.contains(o.nodeName)){return o;}}}else{tagNames = tagNames.toUpperCase();while(o=o.parentNode){if(o.nodeName && tagNames==o.nodeName){return o;}}}return null;};
dom.removeNode = function(o){if(o!=null && o.parentNode && o.parentNode.removeChild){for(var i in o){if(typeof(o[i])=="function"){o[i] = null;}}o.parentNode.removeChild(o);return true;}return false;};
dom.getOuterWidth = function(o){if(defined(o.offsetWidth)){return o.offsetWidth;}return null;};
dom.getOuterHeight = function(o){if(defined(o.offsetHeight)){return o.offsetHeight;}return null;};
dom.resolve = function(){var results = new Array();var i,j,o;for(var i=0;i<arguments.length;i++){var o = arguments[i];if(o==null){if(arguments.length==1){return null;}results[results.length] = null;}else if(typeof(o)=='string'){if(document.getElementById){o = document.getElementById(o);}else if(document.all){o = document.all[o];}if(arguments.length==1){return o;}results[results.length] = o;}else if(isArray(o)){for(j=0;j<o.length;j++){results[results.length] = o[j];}}else if(isObject(o)){for(j in o){results[results.length] = o[j];}}else if(arguments.length==1){return o;}else{results[results.length] = o;}}return results;};dom.$ = dom.resolve;return dom;})();
var CSS =(function(){var css ={};
css.rgb2hex = function(rgbString){if(typeof(rgbString)!="string" || !defined(rgbString.match)){return null;}var result = rgbString.match(/^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*/);if(result==null){return rgbString;}var rgb = +result[1] << 16 | +result[2] << 8 | +result[3]
var hex = "";var digits = "0123456789abcdef";while(rgb!=0){hex = digits.charAt(rgb&0xf)+hex;rgb>>>=4;}while(hex.length<6){hex='0'+hex;}return "#" + hex;};
css.hyphen2camel = function(property){if(!defined(property) || property==null){return null;}if(property.indexOf("-")<0){return property;}var str = "";var c = null;var l = property.length;for(var i=0;i<l;i++){c = property.charAt(i);str +=(c!="-")?c:property.charAt(++i).toUpperCase();}return str;};
css.hasClass = function(obj,className){if(!defined(obj) || obj==null || !RegExp){return false;}var re = new RegExp("(^|\\s)" + className + "(\\s|$)");if(typeof(obj)=="string"){return re.test(obj);}else if(typeof(obj)=="object" && obj.className){return re.test(obj.className);}return false;};
css.addClass = function(obj,className){if(typeof(obj)!="object" || obj==null || !defined(obj.className)){return false;}if(obj.className==null || obj.className==''){obj.className = className;return true;}if(css.hasClass(obj,className)){return true;}obj.className = obj.className + " " + className;return true;};
css.removeClass = function(obj,className){if(typeof(obj)!="object" || obj==null || !defined(obj.className) || obj.className==null){return false;}if(!css.hasClass(obj,className)){return false;}var re = new RegExp("(^|\\s+)" + className + "(\\s+|$)");obj.className = obj.className.replace(re,' ');return true;};
css.replaceClass = function(obj,className,newClassName){if(typeof(obj)!="object" || obj==null || !defined(obj.className) || obj.className==null){return false;}css.removeClass(obj,className);css.addClass(obj,newClassName);return true;};
css.getStyle = function(o, property){if(o==null){return null;}var val = null;var camelProperty = css.hyphen2camel(property);if(property=="float"){val = css.getStyle(o,"cssFloat");if(val==null){val = css.getStyle(o,"styleFloat");}}else if(o.currentStyle && defined(o.currentStyle[camelProperty])){val = o.currentStyle[camelProperty];}else if(window.getComputedStyle){val = window.getComputedStyle(o,null).getPropertyValue(property);}else if(o.style && defined(o.style[camelProperty])){val = o.style[camelProperty];}if(/^\s*rgb\s*\(/.test(val)){val = css.rgb2hex(val);}if(/^#/.test(val)){val = val.toLowerCase();}return val;};css.get = css.getStyle;
css.setStyle = function(o, property, value){if(o==null || !defined(o.style) || !defined(property) || property==null || !defined(value)){return false;}if(property=="float"){o.style["cssFloat"] = value;o.style["styleFloat"] = value;}else if(property=="opacity"){o.style['-moz-opacity'] = value;o.style['-khtml-opacity'] = value;o.style.opacity = value;if(defined(o.style.filter)){o.style.filter = "alpha(opacity=" + value*100 + ")";}}else{o.style[css.hyphen2camel(property)] = value;}return true;};css.set = css.setStyle;
css.uniqueIdNumber=1000;css.createId = function(o){if(defined(o) && o!=null && defined(o.id) && o.id!=null && o.id!=""){return o.id;}var id = null;while(id==null || document.getElementById(id)!=null){id = "ID_"+(css.uniqueIdNumber++);}if(defined(o) && o!=null &&(!defined(o.id)||o.id=="")){o.id = id;}return id;};return css;})();
var Event =(function(){var ev ={};
ev.resolve = function(e){if(!defined(e) && defined(window.event)){e = window.event;}return e;};
ev.add = function( obj, type, fn, capture){if(obj.addEventListener){obj.addEventListener( type, fn, capture);return true;}else if(obj.attachEvent){obj.attachEvent( "on"+type, fn);return true;}return false;};
ev.getMouseX = function(e){e = ev.resolve(e);if(defined(e.pageX)){return e.pageX;}if(defined(e.clientX)){return e.clientX+Screen.getScrollLeft();}return null;};
ev.getMouseY = function(e){e = ev.resolve(e);if(defined(e.pageY)){return e.pageY;}if(defined(e.clientY)){return e.clientY+Screen.getScrollTop();}return null;};
ev.cancelBubble = function(e){e = ev.resolve(e);if(typeof(e.stopPropagation)=="function"){e.stopPropagation();}if(defined(e.cancelBubble)){e.cancelBubble = true;}};ev.stopPropagation = ev.cancelBubble;
ev.preventDefault = function(e){e = ev.resolve(e);if(typeof(e.preventDefault)=="function"){e.preventDefault();}if(defined(e.returnValue)){e.returnValue = false;}};return ev;})();
var Screen =(function(){var screen ={};
screen.getBody = function(){if(document.body){return document.body;}if(document.getElementsByTagName){var bodies = document.getElementsByTagName("BODY");if(bodies!=null && bodies.length>0){return bodies[0];}}return null;};
screen.getScrollTop = function(){if(document.documentElement && defined(document.documentElement.scrollTop) && document.documentElement.scrollTop>0){return document.documentElement.scrollTop;}if(document.body && defined(document.body.scrollTop)){return document.body.scrollTop;}return null;};
screen.getScrollLeft = function(){if(document.documentElement && defined(document.documentElement.scrollLeft) && document.documentElement.scrollLeft>0){return document.documentElement.scrollLeft;}if(document.body && defined(document.body.scrollLeft)){return document.body.scrollLeft;}return null;};
screen.zero = function(n){return(!defined(n) || isNaN(n))?0:n;};
screen.getDocumentWidth = function(){var width = 0;var body = screen.getBody();if(document.documentElement &&(!document.compatMode || document.compatMode=="CSS1Compat")){var rightMargin = parseInt(CSS.get(body,'marginRight'),10) || 0;var leftMargin = parseInt(CSS.get(body,'marginLeft'), 10) || 0;width = Math.max(body.offsetWidth + leftMargin + rightMargin, document.documentElement.clientWidth);}else{width =  Math.max(body.clientWidth, body.scrollWidth);}if(isNaN(width) || width==0){width = screen.zero(self.innerWidth);}return width;};
screen.getDocumentHeight = function(){var body = screen.getBody();var innerHeight =(defined(self.innerHeight)&&!isNaN(self.innerHeight))?self.innerHeight:0;if(document.documentElement &&(!document.compatMode || document.compatMode=="CSS1Compat")){var topMargin = parseInt(CSS.get(body,'marginTop'),10) || 0;var bottomMargin = parseInt(CSS.get(body,'marginBottom'), 10) || 0;return Math.max(body.offsetHeight + topMargin + bottomMargin, document.documentElement.clientHeight, document.documentElement.scrollHeight, screen.zero(self.innerHeight));}return Math.max(body.scrollHeight, body.clientHeight, screen.zero(self.innerHeight));};
screen.getViewportWidth = function(){if(document.documentElement &&(!document.compatMode || document.compatMode=="CSS1Compat")){return document.documentElement.clientWidth;}else if(document.compatMode && document.body){return document.body.clientWidth;}return screen.zero(self.innerWidth);};
screen.getViewportHeight = function(){if(!window.opera && document.documentElement &&(!document.compatMode || document.compatMode=="CSS1Compat")){return document.documentElement.clientHeight;}else if(document.compatMode && !window.opera && document.body){return document.body.clientHeight;}return screen.zero(self.innerHeight);};return screen;})();
var Sort =(function(){var sort ={};
sort.AlphaNumeric = function(a,b){if(a==b){return 0;}if(a<b){return -1;}return 1;};sort.Default = sort.AlphaNumeric;
sort.NumericConversion = function(val){if(typeof(val)!="number"){if(typeof(val)=="string"){val = parseFloat(val.replace(/,/g,''));if(isNaN(val) || val==null){val=0;}}else{val = 0;}}return val;};
sort.Numeric = function(a,b){return sort.NumericConversion(a)-sort.NumericConversion(b);};
sort.IgnoreCaseConversion = function(val){if(val==null){val="";}return(""+val).toLowerCase();};
sort.IgnoreCase = function(a,b){return sort.AlphaNumeric(sort.IgnoreCaseConversion(a),sort.IgnoreCaseConversion(b));};
sort.CurrencyConversion = function(val){if(typeof(val)=="string"){val = val.replace(/^[^\d\.]/,'');}return sort.NumericConversion(val);};
sort.Currency = function(a,b){return sort.Numeric(sort.CurrencyConversion(a),sort.CurrencyConversion(b));};
sort.DateConversion = function(val){function getdate(str){function fixYear(yr){yr = +yr;if(yr<50){yr += 2000;}else if(yr<100){yr += 1900;}return yr;};var ret;if(ret=str.match(/(\d{2,4})-(\d{1,2})-(\d{1,2})/)){return(fixYear(ret[1])*10000) +(ret[2]*100) +(+ret[3]);}if(ret=str.match(/(\d{1,2})[\/-](\d{1,2})[\/-](\d{2,4})/)){return(fixYear(ret[3])*10000) +(ret[1]*100) +(+ret[2]);}return 99999999;};return getdate(val);};
sort.Date = function(a,b){return sort.Numeric(sort.DateConversion(a),sort.DateConversion(b));};return sort;})();var Table ={};Table.VERSION = .955;
Table.getTable = function(o){if(o==null){return o;}return DOM.getParentByTagName(o,"TABLE");};
Table.resolve = function(o){if(o==null){return null;}if(o.nodeName && o.nodeName!="TABLE"){o = this.getTable(o);}CSS.createId(o);return o;};
Table.getCell = function(o){if(o==null){return null;}if(o.nodeName && o.nodeName!="TH" && o.nodeName!="TD"){o = DOM.getParentByTagName(o,["TD","TH"]);}return o;};
Table.expandBodies = function(t){var bodies = this.getBodies(t);if(bodies==null){return bodies;}for(var i=0;i<bodies.length;i++){if(CSS.get(bodies[i],"display")=="none"){CSS.set(bodies[i],"display","block");}}};
Table.getBodies = function(t){if(t==null){return t;}if(t.getElementsByTagName){return t.getElementsByTagName("TBODY");}return null;};
Table.getHeads = function(t){if(t==null){return t;}if(t.getElementsByTagName){return t.getElementsByTagName("THEAD");}return null;};
Table.expandRowClicked = function(o){var t, tr;if((tr = DOM.getParentByTagName(o,"TR"))==null){return;}if((t = this.getTable(tr))==null){return;}
this.expandBodies(t);CSS.setStyle(tr,"display","none");};Table.processHeaderCells = function(t, func){t = this.resolve(t);if(t==null){return;}var theads = this.getHeads(t);for(var i=0;i<theads.length;i++){var th = theads[i];if(th.rows && th.rows.length && th.rows.length>0){var rows = th.rows;var len = rows.length;for(var j=0;j<len;j++){var row = rows[j];if(row.cells && row.cells.length && row.cells.length>0){var cells = row.cells;var len2 = cells.length;for(var k=0;k<len2;k++){var cellsK = cells[k];func(cellsK);}}}}}};
Table.getCellIndex = function(td){var tr = td.parentNode;var cells = tr.cells;if(cells && cells.length){if(cells.length>1 && cells[cells.length-1].cellIndex && cells[cells.length-1].cellIndex>0){this.getCellIndex = function(td){return td.cellIndex;};return td.cellIndex;}for(var i=0;i<cells.length;i++){if(tr.cells[i]==td){return i;}}}return 0;};
Table.getCellValue = function(td,useInnerText){if(td==null){return null;}if(useInnerText && defined(td.innerText)){return td.innerText;}if(!td.childNodes){return "";}var childNodes = td.childNodes;var childNodesLength = childNodes.length;var node = null;var ret = "";for(var i=0;i<childNodesLength;i++){node = childNodes[i];if(node.nodeType && node.nodeType==1){if(node.nodeName=="INPUT" && defined(node.value)){if(node.type &&(node.type!="checkbox" || node.checked)){ret += node.value;}}else if(node.nodeName=="SELECT" && node.selectedIndex>=0 && node.options){ret += node.options[node.selectedIndex].text;}else if(node.nodeName=="IMG" && node.name){ret += node.name;}else{ret += this.getCellValue(node);}}else{if(node.nodeType && node.nodeType==3){if(defined(node.innerText)){ret += node.innerText;}else if(defined(node.nodeValue)){ret += node.nodeValue;}}}}return ret;};Table.tableHeaderIndexes ={};
Table.getActualCellIndex = function(tableCellObj){var tableObj = this.getTable(tableCellObj);var cellCoordinates = tableCellObj.parentNode.rowIndex+"-"+this.getCellIndex(tableCellObj);if(typeof(this.tableHeaderIndexes[tableObj.id])!='undefined'){return this.tableHeaderIndexes[tableObj.id][cellCoordinates];}var matrix = [];this.tableHeaderIndexes[tableObj.id] ={};var thead = tableObj.getElementsByTagName('THEAD')[0];var trs = thead.getElementsByTagName('TR');for(var i=0;i<trs.length;i++){var cells = trs[i].cells;for(var j=0;j<cells.length;j++){var c = cells[j];var rowIndex = c.parentNode.rowIndex;var cellId = rowIndex+"-"+this.getCellIndex(c);var rowSpan = c.rowSpan || 1;var colSpan = c.colSpan || 1
var firstAvailCol;if(typeof(matrix[rowIndex])=="undefined"){matrix[rowIndex] = [];}var m = matrix[rowIndex];for(var k=0;k<m.length+1;k++){if(typeof(m[k])=="undefined"){firstAvailCol = k;break;}}this.tableHeaderIndexes[tableObj.id][cellId] = firstAvailCol;for(var k=rowIndex;k<rowIndex+rowSpan;k++){if(typeof(matrix[k])=="undefined"){matrix[k] = [];}var matrixrow = matrix[k];for(var l=firstAvailCol;l<firstAvailCol+colSpan;l++){matrixrow[l] = "x";}}}}return this.tableHeaderIndexes[tableObj.id][cellCoordinates];};Table.lastSortedColumn ={};Table.SortedAscendingClassName = "TableSortedAscending";Table.SortedDescendingClassName = "TableSortedDescending";Table.SortableClassName = "sortable";
Table.sort = function(t,args){var colIndex, sortType, descending, rowShade, ignoreHiddenRows;if(!defined(args)){args ={};}var origT = t;if(t==null){return;}t = this.resolve(t);if(defined(args['colIndex'])){colIndex = args['colIndex'];}else if(defined(origT) && defined(origT.cellIndex)){colIndex = this.getActualCellIndex(origT);}else{colIndex = 0;}sortType =((!defined(args['sortType'])) ||(typeof(args['sortType'])!="function")) ? Sort.Default : args['sortType'];if(defined(this.lastSortedColumn[t.id]) && this.lastSortedColumn[t.id]['index']==colIndex){descending = !(this.lastSortedColumn[t.id]['descending']);}else if(defined(args['descending']) && typeof(args['descending'])=="boolean"){descending = args['descending'];}else{descending = false;}ignoreHiddenRows =(defined(args['ignoreHiddenRows'])) ? args['ignoreHiddenRows'] : false;var sortedAscendingClassName = this.SortedAscendingClassName;var sortedDescendingClassName = this.SortedDescendingClassName;var sortableClassName = this.SortableClassName;var sortedClassName = descending?sortedDescendingClassName:sortedAscendingClassName;var sortConversion = false;if(sortType==Sort.Default || sortType==Sort.AlphaNumeric){sortType=Sort.AlphaNumeric;}else if(sortType==Sort.IgnoreCase){sortConversion = Sort.IgnoreCaseConversion;sortType=Sort.AlphaNumeric;}else if(sortType==Sort.Numeric){sortConversion = Sort.NumericConversion;sortType=Sort.AlphaNumeric;}else if(sortType==Sort.Currency){sortConversion = Sort.CurrencyConversion;sortType=Sort.AlphaNumeric;}else if(sortType==Sort.Date){sortConversion = Sort.DateConversion;sortType=Sort.AlphaNumeric;}this.lastSortedColumn[t.id] ={'index':colIndex, 'descending':descending};var self = this;this.processHeaderCells(t,
function(cell){if(CSS.hasClass(cell,sortableClassName)){CSS.removeClass(cell,sortedAscendingClassName);CSS.removeClass(cell,sortedDescendingClassName);if(colIndex==self.getActualCellIndex(cell)){CSS.addClass(cell,sortedClassName);}}});var bodies = this.getBodies(t);if(bodies==null || bodies.length==0){return;}for(var i=0;i<bodies.length;i++){var tb = bodies[i];var tbrows = tb.rows;var tbrowslength = tbrows.length;var rows = [];var useInnerText =(tb.getElementsByTagName('INPUT').length==0);var cRow;var cRowIndex=0;if(cRow=tbrows[cRowIndex]){do{if(rowCells = cRow.cells){var cellValue =(rowCells&&colIndex<rowCells.length)?this.getCellValue(rowCells[colIndex],useInnerText):null;if(sortConversion) cellValue = sortConversion(cellValue);rows[cRowIndex] = [cellValue,tbrows[cRowIndex]];}}while(cRow=tbrows[++cRowIndex])}var newSortFunc = function(a,b){return(descending)?sortType(b[0],a[0]):sortType(a[0],b[0]);};rows.sort(newSortFunc);var cRow;var cRowIndex=0;if(cRow=rows[cRowIndex]){do{tb.appendChild(cRow[1]);}while(cRow=rows[++cRowIndex])}}if(defined(args['rowShade'])){this.shadeOddRows(t,args['rowShade'],ignoreHiddenRows);}};Table.FilteredClassName = "TableFiltered";Table.FilterableClassName = "filterable";Table.Filters ={};
Table.filter = function(t,filters,args){var colIndex, rowShade, filter, allFilters;var reset = false;if(!defined(args)){args ={};}if(!defined(filters)){return;}if(filters && filters.nodeName && filters.nodeName=="SELECT" && filters.type){if(filters.type=="select-one" && defined(filters.selectedIndex) && filters.selectedIndex>-1){var sel = filters;filters ={};filters.filter = sel.options[sel.selectedIndex].value;}}if(isObject(filters) && !isArray(filters)){filters = [filters];}else if(filters==null){reset = true;filters = [];}else{return;}t = this.getCell(t);for(var i=0;i<filters.length;i++){colIndex = filters[i].colIndex;if(!defined(colIndex) && defined(t) && defined(t.cellIndex)){filters[i].colIndex = this.getCellIndex(t);}}if(t==null){return;}t = this.resolve(t);if(!defined(this.Filters[t.id]) || reset){this.Filters[t.id] ={};}var allFilters = this.Filters[t.id];for(var i=0;i<filters.length;i++){filter = filters[i];if(filter.filter==null || filter.filter==""){delete allFilters[filter.colIndex];}else{allFilters[filter.colIndex] = filter.filter;}}var bodies = this.getBodies(t);if(bodies==null || bodies.length==0){return;}for(var i=0;i<bodies.length;i++){var tb = bodies[i];for(var j=0;j<tb.rows.length;j++){var row = tb.rows[j];if(reset){row.style.display="";}else if(row.cells){var cells = row.cells;var cellsLength = cells.length;var hide = false;for(colIndex in allFilters){if(!hide){filter = allFilters[colIndex];if(colIndex < cellsLength){var val = this.getCellValue(cells[colIndex]);if(filter.charAt(0)=="/" && val.search){hide =(val.search(new RegExp(filter.substring(1,filter.length-1)))<0);}else if(val!=filter){hide = true;}}}}if(hide){row.style.display = "none";}else{row.style.display="";}}}}var self = this;this.processHeaderCells(t,
function(cell){if(defined(allFilters[self.getCellIndex(cell)]) && CSS.hasClass(cell,self.FilterableClassName)){CSS.addClass(cell,self.FilteredClassName);}else{CSS.removeClass(cell,self.FilteredClassName);}});if(defined(args['rowShade'])){this.shadeOddRows(t,args['rowShade']);}};
Table.shadeOddRows = function(t,className,ignoreHiddenRows){if(t==null){return;}ignoreHiddenRows =(defined(ignoreHiddenRows) && typeof(ignoreHiddenRows)=="boolean") ? ignoreHiddenRows : false;t = this.resolve(t);var bodies = this.getBodies(t);if(bodies==null || bodies.length==0){return;}for(var i=0;i<bodies.length;i++){var tb = bodies[i];var tbrows = tb.rows;var cRowIndex=0;var cRow;var displayedCount=0;if(cRow=tbrows[cRowIndex]){do{if(ignoreHiddenRows || CSS.getStyle(cRow,"display")!="none"){if(displayedCount++%2==0){CSS.removeClass(cRow,className);}else{CSS.addClass(cRow,className);}}}while(cRow=tbrows[++cRowIndex])}}};Table.pages ={};
Table.page = function(t,pageIndex,pageSize,args){if(!defined(args)){args ={};}if(!defined(pageSize) || typeof(pageSize)!="number" || pageSize==0){pageSize = 25;}if(!defined(pageIndex) || typeof(pageIndex)!="number"){pageIndex = 0;}var startRow = pageIndex*pageSize;var endRow = startRow + pageSize - 1;if(t==null){return;}t = this.resolve(t);var bodies = this.getBodies(t);if(bodies==null || bodies.length==0){return;}var tb = bodies[0];if(startRow<0){pageIndex = 0;startRow = 0;endRow = startRow + pageSize - 1;}if(startRow > tb.rows.length){pageIndex = Math.floor(tb.rows.length/pageSize);if(pageIndex==tb.rows.length/pageSize){pageIndex--;}startRow = pageIndex * pageSize;endRow = startRow + pageSize;}this.pages[t.id] ={'pageIndex':pageIndex, 'pageSize':pageSize};for(var i=0;i<tb.rows.length;i++){var row = tb.rows[i];if(i<startRow || i>endRow){row.style.display="none";}else{row.style.display="";}}if(defined(args['rowShade'])){this.shadeOddRows(t,args['rowShade']);}}
Table.pageNext = function(t,pageSize,args){t = this.resolve(t);if(defined(Table.pages[t.id])){var pages = Table.pages[t.id];var newPage = pages.pageIndex+1;this.page(t,newPage,pageSize || pages.pageSize,args);return newPage;}else{this.page(t,1,pageSize,args);return 1;}return -1;};
Table.pagePrevious = function(t,pageSize,args){t = this.resolve(t);if(defined(Table.pages[t.id])){var pages = Table.pages[t.id];var newPage = pages.pageIndex-1;this.page(t,newPage,pageSize || pages.pageSize,args);return newPage;}else{this.page(t,0,pageSize,args);return 0;}return -1;};

