    var query = "query";
    var userKeyword = "";
    var qObj = getObject(query,"");
    var useSuggestFunction = true;
    var totalKeywordCount = 0;
    var totalrKeywordCount = 0;
    var curCursorPos = -1;
    var doActionKeyword = true;
    var oldValue = "";
    var nowValue = "";
    var searchCount = 0;
    var db = "";
    document.onmousedown = eventHandler;
    function getBrowserType() {
        if (navigator.appName == "Microsoft Internet Explorer")
            return 1;
        else if (navigator.appName == "Netscape")
            return 2;
        else
            return 0;
    }
    function eventHandler(e) {
        if (!e) var e = window.event;
        //alert(e.type);
        var elemId;
        if(getBrowserType()==1){
            elemId = e.srcElement.id;
        }else{
            elemId = e.target.id;
        }
        if(elemId == "basicQuery"){
            if(useSuggestFunction){
                var str = checkStr(document.search.query.value);
                if(str == ""){
                    return
                }
                jQuery.ajax(
                        { url : "/ark.do",
                          data : {
                              target : "1",
                              query : str,
                              convert : "fw"
                          },
                          dataType : "xml",
                          success : buildQueryList
                        }
                    );
            }
        }
     /* false : 아래의 링크를 클릭하더라도 해당 사이트로 이동하지 않음
     *  true  : 아래의 링크를 클릭하면 이 메소드가 실행된 후 해당 링크로 이동함
     */
    }
    /**********************************************
    * 입력된 키워드를 WNSimple서버로 전송하고 req객체에서
    *   결과를 전달 받는다.
    **********************************************/
    //function loadXMLDoc(_str) {
    function getAutoQuery(str,event) {
        if(!useSuggestFunction){
            return;
        }
        try{
            var key = event.keyCode;
            if(key == 13){
                document.getElementById("autoDiv").style.display = "none";
                return;
            }
        } catch(errorObj){
        }
        if(doActionKeyword){
            if(str == ""){
                document.getElementById("autoDiv").style.display = "none";
                return
            }
            jQuery.ajax(
                    { url : "/ark.do",
                      data : {
                          target : "1",
                          query : str,
                          convert : "fw"
                      },
                      dataType : "xml",
                      success : buildQueryList,
                      error: function(content,result){document.getElementById("autoDiv").style.display = "none";document.getElementById("autoDiv").innerHTML = "";}
                    }
                );
        }
    }
    //초기화
    function clearQueryList() {
        document.getElementById("autoDiv").innerHTML = "";
    }
    /**********************************************
    *   입력된 키워드 체크
    **********************************************/
    function checkStr(str) {
        var ch;
        var returnStr = "";
        for (var i=0;i<str.length;i++) {
            ch = str.charAt(i);
            if(ch==" ")
                returnStr += "%20";
            else
                returnStr +=ch;
        }
        return returnStr;
    }
    /**********************************************
    *   결과로 받은 추천어 리스트를 출력한다.
    **********************************************/
    function buildQueryList(result) {
        oldValue = document.search.oldQuery.value;
        clearQueryList();
        try{
            var ark = result.getElementsByTagName("ARKList");
            var items =ark[0].getElementsByTagName("ARK");
            var arkR = result.getElementsByTagName("ARKRList");
            var ritems =arkR[0].getElementsByTagName("ARK");
            var totalCnt =getXmlValue(ark[0].getElementsByTagName("TotalCount")[0]);
            var totalCnt2 =getXmlValue(arkR[0].getElementsByTagName("TotalCount")[0]);;
            totalKeywordCount = items.length;
            totalrKeywordCount = ritems.length;
            var total = Number(totalCnt) + Number(totalCnt2);
            var allCount = 0;
            var html ="";
            if(totalCnt >0){
                html ="<div class=\"t1\">";
            }
            if(total >10){
                switch(Number(totalCnt2)){
                    case '0':
                        totalCnt = 10;
                        break;
                    case '1':
                        totalCnt = 9;
                        break;
                    case '2':
                        totalCnt = 8;
                        break;
                    case '3':
                        totalCnt = 7;
                        break;
                    case '4':
                        totalCnt = 6;
                        break;
                    case '5':
                        totalCnt = 5;
                        break;
                    case '6':
                    case '7':
                    case '8':
                    case '9':
                    case '10':
                        totalCnt = 5;
                        totalCnt2 = 5;
                        break;
                    default :
                        break;
                }
            }
            for (var i=0;i<Number(totalCnt);i++) {
                html +="<ul id=\"autoKeyword"+allCount+"\">";
                html +="    <li ><a href=\"#\"  onclick=\"javascript:changeKeyword('"+items[i].getAttribute("keyword")+"');\"  onmouseover=\"onMousechange('autoKeyword"+allCount+"','over');\" onmouseout=\"onMousechange('autoKeyword"+allCount+"','out');\" >"+items[i].getAttribute("HKeyword")+"</a><span id='f"+ allCount +"' style=\"display:none;\">"+items[i].getAttribute("keyword")+"</span></li>";
                html +="</ul>";
                allCount++;
            }
            if(totalCnt >0){
                html +="</div>";
            }
            if(totalCnt2 >0){
                html +="<div class=\"tline\"></div>";
                html +="<div class=\"t1\">";
            }
            for (var i=0;i<Number(totalCnt2);i++) {
                html +="<ul id=\"autoKeyword"+allCount+"\">";
                html +="    <li ><a href=\"#\"  onclick=\"javascript:changeKeyword('"+ritems[i].getAttribute("keyword")+"');\"  onmouseover=\"onMousechange('autoKeyword"+allCount+"','over');\" onmouseout=\"onMousechange('autoKeyword"+allCount+"','out');\" >"+ritems[i].getAttribute("HKeyword")+"</a><span id='f"+ allCount +"' style=\"display:none;\">"+ritems[i].getAttribute("keyword")+"</span></li>";
                html +="</ul>";
                allCount++;
            }
            if(totalCnt2 >0){
                html +="</div>";
            }
            searchCount = allCount;
            if(Number(totalCnt)>0 || Number(totalCnt2)>0){
                html +="<div class=\"t3\">";
                html +="    <a href=\"#\"><img src=\"/search/images/bt_sch_auto_1.gif\" alt=\"도움말\" width=\"37\" height=\"11\" /></a>";
                html +="    <input name=\"autoCom\" id=\"autoCom\" value=\"1\" type=\"checkbox\" class=\"input_m\"  ";
                html +="      onclick=\"javascript:autoCheck();\"   />";
                html +="        <label class=\"base\" for=\"autoCom\"><img src=\"/search/images/bt_sch_auto_2.gif\" alt=\"기능끄기\" width=\"36\" height=\"11\" /></label>";
                html +="</div>";
                document.getElementById("autoDiv").innerHTML = html;
                //jQuery('input').customInput();
                document.getElementById("autoDiv").style.display = "";
            } else {
                document.getElementById("autoDiv").style.display = "none";
            }
        }catch(errorObj){document.getElementById("autoDiv").style.display = "none";}
    }
    function onMousechange(arg,arg2){
        if(arg2 == "over"){
            getObject(arg).style.backgroundColor="#eeeeee";
        } else {
            getObject(arg).style.backgroundColor="#ffffff";
        }
    }
    function changeKeyword(arg){
        document.search.query.value = arg;
        document.search.query.focus();
        var form = document.search;
        form.submit();
    }
    function autoCheck(){
        try{
            if(document.getElementById("autoCom").checked){
                useSuggestFunction = false;
                clearAutoDiv();
            } else {
                useSuggestFunction = true;
                clearAutoDiv();
            }
        } catch(errorObj){}
    }
    /***********************************************
        키보드 입력키를 체크한다.
    **********************************************/
    function isAvailableKeyCode(key) {
        /**
        * 37~40 : 방향키
        * 112 ~ 123 : F1~F12,
        * alt : 18
        * ctl : 17
        * 116 : F5
        * 27 : esc
        */
        var keyArr = new Array(17,18,37,39,116);
        for(var i=0;i<keyArr.length;i++) {
            if(keyArr[i]==key)
                return false;
        }
        return true;
    }
    /***********************************************
    추천된 단어 리스트를 방향키로 선택할 경우
    **********************************************/
    function moveFocusToSelect(key) {
        clearCursorPos();
        if(key==38) {
            if(curCursorPos==-1 || curCursorPos==0) {
                qObj.value = userKeyword;
                return;
            }else {
                curCursorPos = curCursorPos - 1;
            }
        }else if(key==40) {
            if(curCursorPos!=(totalKeywordCount+totalrKeywordCount-1)) {
                curCursorPos = curCursorPos + 1;
            }
        }
        setTimeout("setCursorPos()",10);
    }
    /***********************************************
    추천된 리스트의 포커스에 색을 입힌다.
    **********************************************/
    function setCursorPos(num) {
        if(checkLayerDisplay("autoDiv")) {
            var pos = curCursorPos;
            if(num==0)
                pos = 0;
            if(getObject("f"+pos,"")) {
                doActionKeyword = false;
                document.search.query.value = getObject("f"+pos,"").innerHTML;
                //doActionKeyword = true;
                getObject("autoKeyword"+pos,"").style.backgroundColor="#eeeeee";
            }
            return;
        }
    }
    /***********************************************
    커서 위치가 움질일때마다 선택되지 않은 부부은 초기화한다.
    *********************************************
    */
    function clearCursorPos() {
        for(var i=0; i<(totalKeywordCount+totalrKeywordCount); i++){
            if(getObject("autoKeyword"+i,"")){
                getObject("autoKeyword"+i,"").style.backgroundColor="#ffffff";
            }
        }
    }
    /** 객체 얻기 */
    function getObject(objectId, nodeObject){
        // checkW3C DOM, then MSIE 4, then NN 4.
        var doc = document;
        if(nodeObject=="parent"){
            doc = parent.document;
        }
        if(doc.getElementById && doc.getElementById(objectId)){
            return doc.getElementById(objectId); // 대부분의 브라우저
        }else if (doc.all && doc.all(objectId)){
            return doc.all(objectId); // IE4와 5.0
        }else if (doc.layers && doc.layers[objectId]){
            return doc.layers[objectId];  // Netscape 4.x
        }else{
            return false;
        }
    }
    /***********************************************
    입력된 키 이벤트값에 따라서 자동완성 여부를 체크한다.
    **********************************************/
    function setFrameEvent(e) {
        if (!e) var e = window.event;
        if (e && useSuggestFunction) {
            var key = e.keyCode;
            if(key == 13 ){
                document.getElementById("autoDiv").style.display = "none";
                return;
            }
            if(!isAvailableKeyCode(key)) {
                doActionKeyword = true;
                return;
            }else {
                if(key==27) {
                    document.getElementById("autoDiv").style.display = "none";
                }else if(key==13) {
                    document.getElementById("autoDiv").style.display = "none";
                }else if(key==38) {
                    moveFocusToSelect(key);
                }else if(key==40) {
                    if(getObject(query,"").value != '') {
                        if(!checkLayerDisplay("autoDiv")) {
                            getAutoQuery(getObject(query,"").value);
                        }else {
                            setTimeout("moveFocusToSelect(40)", 10);
                        }
                    }
                } else {
                    doActionKeyword = true;
                    //특별한 이벤트 처리는 없다
                }
            }
        }
    }
    function checkLayerDisplay(obj) {
        if(getObject(obj,"").style.display==''){
            return true;
        }else{
            return false;
        }
    }
    function displayChange(obj){
        if(searchCount == 0){
            clearAutoDiv();
        }
        obj.nextSibling.nextSibling.style.display= (obj.nextSibling.nextSibling.style.display=='none')?'':'none';
    }
    function clearAutoDiv(){
        var html ="";
        html ="<div class=\"t1\">";
        html +="<ul>";
        if(useSuggestFunction){
            html +="    <li ><a href=\"#\">현재 검색어 &nbsp;<b>자동 추천 기능</b>을 사용하고 있습니다.</a></li>";
        } else {
            html +="    <li ><a href=\"#\"><b>자동 추천 기능</b>을 사용해 보세요.</a></li>";
        }
        html +="</ul>";
        html +="</div>";
        html +="<div class=\"t3\">";
        html +="    <a href=\"#\"><img src=\"/search/images/bt_sch_auto_1.gif\" alt=\"도움말\" /></a>";
        html +="    <input name=\"autoCom\" id=\"autoCom\" value=\"1\" type=\"checkbox\" class=\"input_m\" ";
        if(!useSuggestFunction){
            html +="checked";
        }
        html +="      onclick=\"javascript:autoCheck();\"   />";
        html +="        <label class=\"base\" for=\"autoCom\"><img src=\"/search/images/bt_sch_auto_2.gif\" alt=\"기능끄기\" /></label>";
        html +="</div>";
        document.getElementById("autoDiv").innerHTML = html;
    }
    function onBlurCheck(){
        if(getBrowserType() !=1){
            setTimeout("changeBlur", 2000);
        }
    }
    function changeBlur(){
        document.getElementById('autoDiv').style.display='none';
    }
    function trick() {
        try{
            if (db != document.search.query.value) {
                db = document.search.query.value;
                if(getBrowserType() !=1){
                    getAutoQuery(db);
                }
            }
        }catch(errorObj){}
        setTimeout("trick()", 10);
    }

