function addEvent( obj, type, fn ) {if ( obj.attachEvent ) {obj['e'+type+fn] = fn;obj[type+fn] = function(){obj['e'+type+fn]( window.event );}obj.attachEvent( 'on'+type, obj[type+fn] );} else {obj.addEventListener( type, fn, false );}}function removeEvent( obj, type, fn ) {if ( obj.detachEvent ) {obj.detachEvent( 'on'+type, obj[type+fn] );obj[type+fn] = null;} else {obj.removeEventListener( type, fn, false );}}function noBubble(e) {if (e && e.stopPropagation) {e.stopPropagation();} else {window.event.cancelBubble = true;}}function getElementsByClassName ( searchClass , node , tag ) {var classElements = new Array();if ( node == null ){node = document;}if ( tag == null ){tag = '*';}var els = node.getElementsByTagName ( tag );var elsLen = els.length;var pattern = new RegExp( "(^|\\s)" + searchClass + "(\\s|$)" );for ( i = 0, j = 0; i < elsLen; i++ ) {if ( pattern.test(els[i].className ) ) {classElements[j] = els[i];j++;}}return classElements;}function trimString (str) { str = this != window? this : str; return str.replace(/^\s+/g, '').replace(/\s+$/g, '');}String.prototype.trim = trimString;function inic() {try {locinic();} catch (e) {}}function remove() {try {locrem();} catch (e) {}}addEvent(window,'load',inic);addEvent(window,'unload',remove);