var isIE = (navigator.appName.indexOf("Microsoft") != -1);
var isNav = (navigator.appName.indexOf("Netscape") != -1);
var Prototype = {Version:'1.2.0'};
var Class = {
    create:function() {
        return function() {
            this.initialize.apply(this, arguments);
        }
    }
};
var Abstract = new Object();
Object.prototype.extend = function(object) {
    for (property in object) {
        this[property] = object[property];
    }
    return this;
};
Function.prototype.bind = function(object) {
    var method = this;
    return function() {
        method.apply(object, arguments);
    }
};
Function.prototype.bindAsEventListener = function(object) {
    var method = this;
    return function(event) {
        method.call(object, event || window.event);
    }
};
Number.prototype.toColorPart = function() {
    var digits = this.toString(16);
    if (this < 16)return '0' + digits;
    return digits;
};
var Try = {these:function() {
    var returnValue;
    for (var i = 0; i < arguments.length; i++) {
        var lambda = arguments[i];
        try {
            returnValue = lambda();
            break;
        } catch(e) {
        }
    }
    return returnValue;
}};
var PeriodicalExecuter = Class.create();
PeriodicalExecuter.prototype = {initialize:function(callback, frequency) {
    this.callback = callback;
    this.frequency = frequency;
    this.currentlyExecuting = false;
    this.registerCallback();
},registerCallback:function() {
    setTimeout(this.onTimerEvent.bind(this), this.frequency * 1000);
},onTimerEvent:function() {
    if (!this.currentlyExecuting) {
        try {
            this.currentlyExecuting = true;
            this.callback();
        } finally {
            this.currentlyExecuting = false;
        }
    }
    this.registerCallback();
}};
function $() {
    var elements = new Array();
    for (var i = 0; i < arguments.length; i++) {
        var element = arguments[i];
        if (typeof element == 'string')element = document.getElementById(element);
        if (arguments.length == 1)return element;
        elements.push(element);
    }
    return elements;
};

if (!Array.prototype.push) {
    Array.prototype.push = function() {
        var startLength = this.length;
        for (var i = 0; i < arguments.length; i++)this[startLength + i] = arguments[i];
        return this.length;
    }
};

if (!Function.prototype.apply) {
    Function.prototype.apply = function(object, parameters) {
        var parameterStrings = new Array();
        if (!object)object = window;
        if (!parameters)parameters = new Array();
        for (var i = 0; i < parameters.length; i++)parameterStrings[i] = 'x[' + i + ']';
        object.__apply__ = this;
        var result = eval('obj.__apply__(' + parameterStrings[i].join(', ') + ')');
        object.__apply__ = null;
        return result;
    }
};

var Ajax = {getTransport:function() {
    return Try.these(function() {
        return new ActiveXObject('Msxml2.XMLHTTP')
    }, function() {
        return new ActiveXObject('Microsoft.XMLHTTP')
    }, function() {
        return new XMLHttpRequest()
    }) || false;
},emptyFunction:function() {
}};
Ajax.Base = function() {
};
Ajax.Base.prototype = {setOptions:function(options) {
    this.options = {method:'post',asynchronous:true,parameters:''}.extend(options || {});
}};
Ajax.Request = Class.create();
Ajax.Request.Events = ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];
Ajax.Request.prototype = (new Ajax.Base()).extend({initialize:function(url, options) {
    this.transport = Ajax.getTransport();
    this.setOptions(options);
    try {
        if (this.options.method == 'get')url += '?' + this.options.parameters + '&_=';
        this.transport.open(this.options.method, url, false);
        if (this.options.asynchronous) {
            this.transport.onreadystatechange = this.onStateChange.bind(this);
            setTimeout((function() {
                this.respondToReadyState(10)
            }).bind(this));
        }
        this.transport.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
        this.transport.setRequestHeader('X-Prototype-Version', Prototype.Version);
        this.transport.setRequestHeader("If-Modified-Since","0");
        if (this.options.method == 'post') {
            this.transport.setRequestHeader('Content-type', 'text/xml;charset=gb2312');
        }
        this.transport.send(this.options.method == 'post' ?this.options.parameters:null);
    } catch(e) {
    }
},onStateChange:function() {
    var readyState = this.transport.readyState;
    if (readyState != 1)this.respondToReadyState(readyState);
},respondToReadyState:function(readyState) {
    var event = Ajax.Request.Events[readyState];
    (this.options['on' + event] || Ajax.emptyFunction)(this.transport);
}});
Ajax.Updater = Class.create();
Ajax.Updater.prototype = (new Ajax.Base()).extend({initialize:function(container, url, options) {
    this.container = $(container);
    this.setOptions(options);
    if (this.options.asynchronous) {
        this.onComplete = this.options.onComplete;
        this.options.onComplete = this.updateContent.bind(this);
    }
    this.request = new Ajax.Request(url, this.options);
    if (!this.options.asynchronous)this.updateContent();
},updateContent:function() {
    if (this.options.insertion) {
        new this.options.insertion(this.container, this.request.transport.responseText);
    } else {
        this.container.innerHTML = this.request.transport.responseText;
    }
    if (this.onComplete) {
        setTimeout((function() {
            this.onComplete(this.request)
        }).bind(this), 10);
    }
}});
function postAjax(url, formName, onComplete) {
    var options = new Object();
    options.method = "post";
    options.asynchronous = true;
    
    options.parameters = Form.serializeXML(formName);
    options.onComplete = onComplete;
    return new Ajax.Request(url, options);
};

function postAjaxXML(url, xmlStr, onComplete) {
    var options = new Object();
    options.method = "post";
    options.asynchronous = true;
    options.parameters = xmlStr;
    options.onComplete = onComplete;
    return new Ajax.Request(url, options);
};

function isSuccess(xmlObj) {
    if (xmlObj) {
        var title = "";
        var node = xmlObj.getElementsByTagName("stat");
        if (node.length > 0) {
            title = node[0].firstChild.nodeValue;
            if (title == 'success' || title == 'SUCCESS') {
                return true;
            } else {
                return false;
            }
        } else {
            return false;
        }
    }
};

function getMessage(xmlObj) {
    if (xmlObj) {
        var title = "";
        var node = xmlObj.getElementsByTagName("message");
        if (node.length > 0) {
            return node[0].firstChild.nodeValue;
        } else {
            return "";
        }
    }
};

var Field = {clear:function() {
    for (var i = 0; i < arguments.length; i++)$(arguments[i]).value = '';
},focus:function(element) {
    $(element).focus();
},present:function() {
    for (var i = 0; i < arguments.length; i++)if ($(arguments[i]).value == '')return false;
    return true;
},select:function(element) {
    $(element).select();
}, activate:function(element) {
    $(element).focus();
    $(element).select();
}};
var Form = {serialize:function(form) {
    var elements = Form.getElements($(form));
    var queryComponents = new Array();
    for (var i = 0; i < elements.length; i++) {
        var queryComponent = Form.Element.serialize(elements[i]);
        if (queryComponent)queryComponents.push(queryComponent);
    }
    return queryComponents.join('&');
},getElements:function(form) {
    form = $(form);
    var elements = new Array();
    for (tagName in Form.Element.Serializers) {
        var tagElements = form.getElementsByTagName(tagName);
        for (var j = 0; j < tagElements.length; j++)elements.push(tagElements[j]);
    }
    return elements;
},disable:function(form) {
    var elements = Form.getElements(form);
    for (var i = 0; i < elements.length; i++) {
        var element = elements[i];
        element.blur();
        element.disable = 'true';
    }
},focusFirstElement:function(form) {
    form = $(form);
    var elements = Form.getElements(form);
    for (var i = 0; i < elements.length; i++) {
        var element = elements[i];
        if (element.type != 'hidden' && !element.disabled) {
            Field.activate(element);
            break;
        }
    }
},reset:function(form) {
    $(form).reset();
}, serializeXML:function(form) {
    var elements = Form.getElements($(form));
    var queryComponents = new Array();
    var xmlStr = '<?xml version="1.0" encoding="GBK" ?>\n';
    xmlStr += '<parameters>\n';
    for (var i = 0; i < elements.length; i++) {
        var element = elements[i];
        if (element) {
            var method = element.tagName.toLowerCase();
            var parameter = Form.Element.Serializers[method](element);
            if (parameter) {
                xmlStr += "<parameter>\n";
                xmlStr += "<parameter-name>" + encodeURI(parameter[0]) + "</parameter-name>\n";
                xmlStr += "<parameter-value><![CDATA[" + encodeURI(parameter[1]) + "]]></parameter-value>\n";
                xmlStr += "</parameter>\n";
            }
        }
    }
    xmlStr += '</parameters>';
    return xmlStr;
}};
Form.Element = {serialize:function(element) {
    element = $(element);
    var method = element.tagName.toLowerCase();
    var parameter = Form.Element.Serializers[method](element);
    if (parameter)return encodeURI(parameter[0]) + '=' + encodeURI(parameter[1]);
},getValue:function(element) {
    element = $(element);
    var method = element.tagName.toLowerCase();
    var parameter = Form.Element.Serializers[method](element);
    if (parameter)return parameter[1];
}};
Form.Element.Serializers = {input:function(element) {
    switch (element.type.toLowerCase()) {case 'hidden':case 'password':case 'text':return Form.Element.Serializers.textarea(element);case 'checkbox':case 'radio':return Form.Element.Serializers.inputSelector(element);}
    return false;
},inputSelector:function(element) {
    if (element.checked)return [element.name, element.value];
},textarea:function(element) {
    return [element.name, element.value];
},select:function(element) {
    var index = element.selectedIndex;
    var value = element.options[index].value || element.options[index].text;
    return [element.name,(index >= 0)? value :''];
}};
var $F = Form.Element.getValue;
Abstract.TimedObserver = function() {
};
Abstract.TimedObserver.prototype = {initialize:function(element, frequency, callback) {
    this.frequency = frequency;
    this.element = $(element);
    this.callback = callback;
    this.lastValue = this.getValue();
    this.registerCallback();
},registerCallback:function() {
    setTimeout(this.onTimerEvent.bind(this), this.frequency * 1000);
},onTimerEvent:function() {
    var value = this.getValue();
    if (this.lastValue != value) {
        this.callback(this.element, value);
        this.lastValue = value;
    }
    this.registerCallback();
}};
Form.Element.Observer = Class.create();
Form.Element.Observer.prototype = (new Abstract.TimedObserver()).extend({getValue:function() {
    return Form.Element.getValue(this.element);
}});
Form.Observer = Class.create();
Form.Observer.prototype = (new Abstract.TimedObserver()).extend({getValue:function() {
    return Form.serialize(this.element);
}});
document.getElementsByClassName = function(className) {
    var children = document.getElementsByTagName('*') || document.all;
    var elements = new Array();
    for (var i = 0; i < children.length; i++) {
        var child = children[i];
        var classNames = child.className.split(' ');
        for (var j = 0; j < classNames.length; j++) {
            if (classNames[j] == className) {
                elements.push(child);
                break;
            }
        }
    }
    return elements;
};
var Element = {toggle:function() {
    for (var i = 0; i < arguments.length; i++) {
        var element = $(arguments[i]);
        element.style.display = (element.style.display == 'none' ? '' :'none');
    }
},hide:function() {
    for (var i = 0; i < arguments.length; i++) {
        var element = $(arguments[i]);
        element.style.display = 'none';
    }
},show:function() {
    for (var i = 0; i < arguments.length; i++) {
        var element = $(arguments[i]);
        element.style.display = '';
    }
},remove:function(element) {
    element = $(element);
    element.parentNode.removeChild(element);
}, getHeight:function(element) {
    element = $(element);
    return element.offsetHeight;
}};
var Toggle = new Object();
Toggle.display = Element.toggle;
Abstract.Insertion = function(adjacency) {
    this.adjacency = adjacency;
};
Abstract.Insertion.prototype = {initialize:function(element, content) {
    this.element = $(element);
    this.content = content;
    if (this.adjacency && this.element.insertAdjacentHTML) {
        this.element.insertAdjacentHTML(this.adjacency, this.content);
    } else {
        this.range = this.element.ownerDocument.createRange();
        if (this.initializeRange)this.initializeRange();
        this.fragment = this.range.createContextualFragment(this.content);
        this.insertContent();
    }
}};
var Insertion = new Object();
Insertion.Before = Class.create();
Insertion.Before.prototype = (new Abstract.Insertion('beforeBegin')).extend({initializeRange:function() {
    this.range.setStartBefore(this.element);
},insertContent:function() {
    this.element.parentNode.insertBefore(this.fragment, this.element);
}});
Insertion.Top = Class.create();
Insertion.Top.prototype = (new Abstract.Insertion('afterBegin')).extend({initializeRange:function() {
    this.range.selectNodeContents(this.element);
    this.range.collapse(true);
},insertContent:function() {
    this.element.insertBefore(this.fragment, this.element.firstChild);
}});
Insertion.Bottom = Class.create();
Insertion.Bottom.prototype = (new Abstract.Insertion('beforeEnd')).extend({initializeRange:function() {
    this.range.selectNodeContents(this.element);
    this.range.collapse(this.element);
},insertContent:function() {
    this.element.appendChild(this.fragment);
}});
Insertion.After = Class.create();
Insertion.After.prototype = (new Abstract.Insertion('afterEnd')).extend({initializeRange:function() {
    this.range.setStartAfter(this.element);
},insertContent:function() {
    this.element.parentNode.insertBefore(this.fragment, this.element.nextSibling);
}});
var Effect = new Object();
Effect.Highlight = Class.create();
Effect.Highlight.prototype = {initialize:function(element) {
    this.element = $(element);
    this.start = 153;
    this.finish = 255;
    this.current = this.start;
    this.fade();
},fade:function() {
    if (this.isFinished())return;
    if (this.timer)clearTimeout(this.timer);
    this.highlight(this.element, this.current);
    this.current += 17;
    this.timer = setTimeout(this.fade.bind(this), 250);
},isFinished:function() {
    return this.current > this.finish;
},highlight:function(element, current) {
    element.style.backgroundColor = "#ffff" + current.toColorPart();
}};
Effect.Fade = Class.create();
Effect.Fade.prototype = {initialize:function(element) {
    this.element = $(element);
    this.start = 100;
    this.finish = 0;
    this.current = this.start;
    this.fade();
},fade:function() {
    if (this.isFinished()) {
        this.element.style.display = 'none';
        return;
    }
    if (this.timer)clearTimeout(this.timer);
    this.setOpacity(this.element, this.current);
    this.current -= 10;
    this.timer = setTimeout(this.fade.bind(this), 50);
},isFinished:function() {
    return this.current <= this.finish;
},setOpacity:function(element, opacity) {
    opacity = (opacity == 100)? 99.999 :opacity;
    element.style.filter = "alpha(opacity:" + opacity + ")";
    element.style.opacity = opacity / 100;
}};
Effect.Scale = Class.create();
Effect.Scale.prototype = {initialize:function(element, percent) {
    this.element = $(element);
    this.startScale = 1.0;
    this.startHeight = this.element.offsetHeight;
    this.startWidth = this.element.offsetWidth;
    this.currentHeight = this.startHeight;
    this.currentWidth = this.startWidth;
    this.finishScale = (percent / 100);
    if (this.element.style.fontSize == "")this.sizeEm = 1.0;
    if (this.element.style.fontSize.indexOf("em") > 0)this.sizeEm = parseFloat(this.element.style.fontSize);
    if (this.element.effect_scale) {
        clearTimeout(this.element.effect_scale.timer);
        this.startScale = this.element.effect_scale.currentScale;
        this.startHeight = this.element.effect_scale.startHeight;
        this.startWidth = this.element.effect_scale.startWidth;
        if (this.element.effect_scale.sizeEm)this.sizeEm = this.element.effect_scale.sizeEm;
    }
    this.element.effect_scale = this;
    this.currentScale = this.startScale;
    this.factor = this.finishScale - this.startScale;
    this.options = arguments[2] || {};
    this.scale();
},scale:function() {
    if (this.isFinished()) {
        this.setDimensions(this.element, this.startWidth * this.finishScale, this.startHeight * this.finishScale);
        if (this.sizeEm)this.element.style.fontSize = this.sizeEm * this.finishScale + "em";
        if (this.options.complete)this.options.complete(this);
        return;
    }
    if (this.timer)clearTimeout(this.timer);
    if (this.options.step)this.options.step(this);
    this.setDimensions(this.element, this.currentWidth, this.currentHeight);
    if (this.sizeEm)this.element.style.fontSize = this.sizeEm * this.currentScale + "em";
    this.currentScale += (this.factor / 10);
    this.currentWidth = this.startWidth * this.currentScale;
    this.currentHeight = this.startHeight * this.currentScale;
    this.timer = setTimeout(this.scale.bind(this), 50);
},isFinished:function() {
    return(this.factor < 0)? this.currentScale <= this.finishScale :this.currentScale >= this.finishScale;
},setDimensions:function(element, width, height) {
    element.style.width = width + 'px';
    element.style.height = height + 'px';
}};
Effect.Squish = Class.create();
Effect.Squish.prototype = {initialize:function(element) {
    this.element = $(element);
    new Effect.Scale(this.element, 1, {complete:this.hide.bind(this)});
},hide:function() {
    this.element.style.display = 'none';
}};
Effect.Puff = Class.create();
Effect.Puff.prototype = {initialize:function(element) {
    this.element = $(element);
    this.opacity = 100;
    this.startTop = this.element.top || this.element.offsetTop;
    this.startLeft = this.element.left || this.element.offsetLeft;
    new Effect.Scale(this.element, 200, {step:this.fade.bind(this), complete:this.hide.bind(this)});
},fade:function(effect) {
    topd = (((effect.currentScale) * effect.startHeight) - effect.startHeight) / 2;
    leftd = (((effect.currentScale) * effect.startWidth) - effect.startWidth) / 2;
    this.element.style.position = 'absolute';
    this.element.style.top = this.startTop - topd + "px";
    this.element.style.left = this.startLeft - leftd + "px";
    this.opacity -= 10;
    this.setOpacity(this.element, this.opacity);
    if (navigator.appVersion.indexOf('AppleWebKit') > 0)this.element.innerHTML += '';
},hide:function() {
    this.element.style.display = 'none';
},setOpacity:function(element, opacity) {
    opacity = (opacity == 100)? 99.999 :opacity;
    element.style.filter = "alpha(opacity:" + opacity + ")";
    element.style.opacity = opacity / 100;
}};
Effect.Appear = Class.create();
Effect.Appear.prototype = {initialize:function(element) {
    this.element = $(element);
    this.start = 0;
    this.finish = 100;
    this.current = this.start;
    this.fade();
},fade:function() {
    if (this.isFinished())return;
    if (this.timer)clearTimeout(this.timer);
    this.setOpacity(this.element, this.current);
    this.current += 10;
    this.timer = setTimeout(this.fade.bind(this), 50);
},isFinished:function() {
    return this.current > this.finish;
},setOpacity:function(element, opacity) {
    opacity = (opacity == 100)? 99.999 :opacity;
    element.style.filter = "alpha(opacity:" + opacity + ")";
    element.style.opacity = opacity / 100;
    element.style.display = '';
}};
Effect.ContentZoom = Class.create();
Effect.ContentZoom.prototype = {initialize:function(element, percent) {
    this.element = $(element);
    if (this.element.style.fontSize == "")this.sizeEm = 1.0;
    if (this.element.style.fontSize.indexOf("em") > 0)this.sizeEm = parseFloat(this.element.style.fontSize);
    if (this.element.effect_contentzoom) {
        this.sizeEm = this.element.effect_contentzoom.sizeEm;
    }
    this.element.effect_contentzoom = this;
    this.element.style.fontSize = this.sizeEm * (percent / 100) + "em";
    if (navigator.appVersion.indexOf('AppleWebKit') > 0) {
        this.element.scrollTop -= 1;
    }
    ;
}};
function trim(s) {
    while (s.substring(0, 1) == ' ') {
        s = s.substring(1, s.length);
    }
    while (s.substring(s.length - 1, s.length) == ' ') {
        s = s.substring(0, s.length - 1);
    }
    return s;
}
;
String.prototype.replaceAll = function(findStr, replaceStr) {
    return this.split(findStr).join(replaceStr);
};
String.prototype.getLength = function() {
    var i,sum = 0;
    for (i = 0; i < this.length; i++) {
        if ((this.charCodeAt(i) >= 0) && (this.charCodeAt(i) <= 255))sum++;
        elsesum += 2;
    }
    return sum;
};
var Check = {isNull:function(fieldName) {
    var field = $(fieldName);
    for (var i = 0; i < arguments.length; i++) {
        var field = $(fieldName);
        if (field) {
            if (trim(field.value) == '') {
                return true;
            }
        }
    }
    return false;
},isNumeric :function(name) {
    var pattern = /^([0-9]|(-[0-9]))[0-9]*((\.[0-9]+)|([0-9]*))$/;
    for (var i = 0; i < arguments.length; i++) {
        var field = $(name);
        if (field) {
            if (!pattern.test(field.value)) {
                return false;
            }
        }
    }
    return true;
},isInteger :function() {
    var pattern = /^(\d|(-\d))\d*$/;
    for (var i = 0; i < arguments.length; i++) {
        var field = $(arguments[i]);
        if (field) {
            if (!pattern.test(field.value)) {
                return false;
            }
        }
    }
    return true;
},isNullity:function() {
    var SPECIAL_STR = "~!@%^&*();'\"?><[]{}\\|,:/=+¡ª¡°¡±¡®";
    for (var i = 0; i < arguments.length; i++) {
        var field = $(arguments[i]);
        if (field) {
            for (j = 0; i < field.value.length; i++)if (SPECIAL_STR.indexOf(field.value.charAt(j)) != -1) {
                return true;
            }
        }
    }
    return false;
},isEmail:function() {
    var pattern = /^([a-zA-Z0-9_-])+(\.([a-zA-Z0-9_-])+)*@([a-zA-Z0-9_-])+(\.([a-zA-Z0-9_-])+)+$/;
    for (var i = 0; i < arguments.length; i++) {
        var field = $(arguments[i]);
        if (field) {
            if (!pattern.test(field.value)) {
                return false;
            }
        }
    }
    return true;
},isChinese:function() {
    var pattern = /[^\x00-\xff]/;
    for (var i = 0; i < arguments.length; i++) {
        var field = $(arguments[i]);
        if (field) {
            if (!pattern.test(field.value)) {
                return false;
            }
        }
    }
    return true;
},isNLU:function() {
    var pattern = /^\w*$/;
    for (var i = 0; i < arguments.length; i++) {
        var field = $(arguments[i]);
        if (field) {
            if (!pattern.test(field.value)) {
                return false;
            }
        }
    }
    return true;
},isIdno:function() {
    var pattern = /(^\d{16}$)|(^\d{18}$)/;
    for (var i = 0; i < arguments.length; i++) {
        var field = $(arguments[i]);
        if (field) {
            if (!pattern.test(field.value)) {
                return false;
            }
        }
    }
    return true;
},isPostCode:function() {
    var pattern = /^\d{6}$/;
    for (var i = 0; i < arguments.length; i++) {
        var field = $(arguments[i]);
        if (field) {
            if (!pattern.test(field.value)) {
                return false;
            }
        }
    }
    return true;
},isTel:function() {
    var pattern = /(^0\d{2,3}\-\d{7,8}$)|(^0?13[0,1,3,5,6,8,9]\d{8}$)/;
    for (var i = 0; i < arguments.length; i++) {
        var field = $(arguments[i]);
        if (field) {
            if (!pattern.test(field.value)) {
                return false;
            }
        }
    }
    return true;
},isLong:function(fieldName, max) {
    var field = $(fieldName);
    if (field) {
        if (field.value.length > max) {
            return true;
        }
    }
    return false;
},isLenBetween:function(fieldName, min, max) {
    var field = $(fieldName);
    if (field) {
        if (field.value.length >= min && field.value.length <= max) {
            return true;
        }
    }
    return false;
}};
function getCenterX(offsetX) {
    var posX;
    if (isIE) {
        posX = (window.screen.width - offsetX) / 2  + document.body.scrollLeft + window.screenLeft;
    } else {
        posX = (window.innerWidth - offsetX) / 2 ;
    }
    return posX;
}
;
function getCenterY(offsetY) {
    var posX;
    if (isIE) {
        posX = window.screen.height / 2 - offsetY + document.body.scrollTop + window.screenTop
    } else {
        posX = window.innerWidth / 2 - offsetY;
    }
    return posX;
}
;
function moveTo(divName, posX, posY) {
    var divObj = $(divName);
    if (isIE) {
        divObj.style.left = posX;
        divObj.style.top = posY;
    } else {
        divObj.style.left = posX + "px";
        divObj.style.top = posY + "px";
    }
}
;
function getTitle(xmlObj) {
    return xmlObj.getElementsByTagName("title")[0].firstChild.nodeValue;
}
;