/*
Compressed and obfuscated by JSCruncher Pro.
http://nebiru.com/jscruncherpro
*/





var PrototypeCopyRight = null;



var Class = {
  create: function() 
  {
    return function() 
    { 
      this.initialize.apply(this, arguments);
    };
  }
};


Object.extend = function(destination, source) {
  for (property in source) {
    destination[property] = source[property];
  }
  return destination;
};


Function.prototype.bind = function() {
  var __method = this;
  var args = $A(arguments);
  var object = args.shift();
  return function() {
    return __method.apply(object, args.concat($A(arguments)));
  };
};



function g() {
  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;
};






var $break    = new Object();
var $continue = new Object();


var Enumerable = {
  each: function(iterator) {
    var index = 0;
    try {
      this._each(function(value) {
        try {
          iterator(value, index++);
        } catch (e) {
          if (e != $continue) throw e;
        }
      });
    } catch (e) {
      if (e != $break) throw e;
    }
  },
   
  
  findAll: function(iterator) {
    var results = [];
    this.each(function(value, index) {
      if (iterator(value, index))
        results.push(value);
    });
    return results;
  },
  
  
  include: function(object) {
    var found = false;
    this.each(function(value) {
      if (value == object) {
        found = true;
        throw $break;
      }
    });
    return found;
  },
  
  
  collect: function(iterator) {
    var results = [];
    this.each(function(value, index) {
      results.push(iterator(value, index));
    });
    return results;
  },
   
  toArray: function() {
    return this.collect(function(x){return x});
  }
  
  
};

Object.extend(Enumerable, {
  select:  Enumerable.findAll,
  member:  Enumerable.include,
  entries: Enumerable.toArray
});







var $A = Array.from = function(iterable) {
  if (!iterable) return [];
  if (iterable.toArray) {
    return iterable.toArray();
  } else {
    var results = [];
    for (var i = 0; i < iterable.length; i++)
      results.push(iterable[i]);
    return results;
  }
};

Object.extend(Array.prototype, Enumerable);


Object.extend(Array.prototype, 
  {
    
    _each: function(iterator) 
    {
      for (var i = 0; i < this.length; i++)
        iterator(this[i]);
    },
   
    
    without: function() 
    {
      var values = $A(arguments);
      return this.select(
        function(value) 
        {
          return !values.include(value);
        }
      );
      },
  
    
    shift: function() {
      var result = this[0];
      for (var i = 0; i < this.length - 1; i++)
        this[i] = this[i + 1];
        this.length--;
      return result;
    }
 
  }
);



var Ajax = {
  getTransport: function() 
  {
    var ret = null;
    if (window.XMLHttpRequest)  
    {
      ret = new window.XMLHttpRequest(); 
    }
    else if (window.ActiveXObject)   
    {
      ret = new ActiveXObject("Msxml2.XMLHTTP");

      if (!ret)
      {
        ret = new ActiveXObject("Microsoft.XMLHTTP");
        if (!ret)
        {        
          throw Ajax.Exception.XmlHttpNotSupported;
        }
      }
    }
    else
    {      
      throw Ajax.Exception.XmlHttpNotSupported;
    }
    
    return ret||false;
  }, 
  emptyFunction: function() {},
  activeRequestCount: 0
  
};



Ajax.Exception = 
{
  XmlHttpNotSupported: "XMLHTTPRequest is not supported by the browser.",
  XmlDomNotSupported: "XML DOM is not supported by the browser.",
  XmlIslandNotSupported: "XML Data Island is not supported by the browser.",
  InvalidMethod: "'method' must be 'GET', 'POST', or 'HEAD'.",
  MissingUrl: "'url' must be specified.",
  InvalidHeaders: "'headers' must be an object.",
  InvalidContent: "'content' must be a string of the format 'name1=value1&name2=value2'.",
  IllegalContent: "'content' must be null when 'method' is 'GET' or 'HEAD'.",
  IllegalInterval: "'interval' can be set only if 'callback' of 'request' is set.",
  InvalidCallbackArgs: "'args' for the callback function misses certain properties."
};


Ajax.Responders = {
  responders: [],
  
  _each: function(iterator) 
  {
    this.responders._each(iterator);
  },

  register: function(responderToAdd) 
  {
    if (!this.include(responderToAdd))
      this.responders.push(responderToAdd);
  }, 
  
  unregister: function(responderToRemove) 
  {
    
    this.responders = this.responders.without(responderToRemove);
  }, 
  
  dispatch: function(callback, request, transport, json) 
  {
    
    this.each(
      
      function(responder) 
      {
        if (responder[callback] && typeof responder[callback] == 'function') 
        {
          try 
          {
            responder[callback].apply(responder, [request, transport, json]);
          } catch (e) {}
        }
      }
    );
  }
};


Object.extend(Ajax.Responders, Enumerable);

Ajax.Responders.register(
  {
    onCreate: function() 
    {
      Ajax.activeRequestCount++;
    },
  
    onComplete: function() 
    {
      Ajax.activeRequestCount--;
    }
  }
);


Ajax.Base = function() {};
Ajax.Base.prototype = {
  setOptions: function(options) 
  {
    this.options = 
    {
      method:       'post',
      asynchronous: true,
      parameters:   ''
    };
    
    
    Object.extend(this.options, options || {});
  },  

  responseIsSuccess: function() 
  {
    return this.transport.status == undefined
        || this.transport.status == 0 
        || (this.transport.status >= 200 && this.transport.status < 300);
  },

  responseIsFailure: function() 
  {
    return !this.responseIsSuccess();
  }
};




Ajax.Request = Class.create();

Ajax.Request.Events = 
  ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];

Ajax.Request.prototype = Object.extend(new Ajax.Base(), {
  initialize: function(url, options) {
    this.transport = Ajax.getTransport();
    this.setOptions(options);
    this.request(url);
  },

  request: function(url) 
  {
    var parameters = this.options.parameters || '';
    if (parameters.length > 0) parameters += '&_=';

    try {
      this.url = url;
      if (this.options.method == 'get' && parameters.length > 0)
        this.url += (this.url.match(/\?/) ? '&' : '?') + parameters;
      
      Ajax.Responders.dispatch('onCreate', this, this.transport);
      
      this.transport.open(this.options.method, this.url, 
        this.options.asynchronous);

      if (this.options.asynchronous) {
        this.transport.onreadystatechange = this.onStateChange.bind(this);
        setTimeout((function() {this.respondToReadyState(1)}).bind(this), 10);
      }

      this.setRequestHeaders();

      var body = this.options.postBody ? this.options.postBody : parameters;
      this.transport.send(this.options.method == 'post' ? body : null);

    } catch (e) {
      this.dispatchException(e);
    }
  },

  setRequestHeaders: function() 
  {
    var requestHeaders = 
      ['X-Requested-With', 'XMLHttpRequest'];

    if (this.options.method == 'post') 
    {
      requestHeaders.push('Content-type', 
        'application/x-www-form-urlencoded');

      
      if (this.transport.overrideMimeType)
        requestHeaders.push('Connection', 'close');
    }

    if (this.options.requestHeaders)
      requestHeaders.push.apply(requestHeaders, this.options.requestHeaders);

    for (var i = 0; i < requestHeaders.length; i += 2)
      this.transport.setRequestHeader(requestHeaders[i], requestHeaders[i+1]);
  },

  onStateChange: function() {
    var readyState = this.transport.readyState;
    if (readyState != 1)
      this.respondToReadyState(this.transport.readyState);
  },
  
  header: function(name) {
    try {
      return this.transport.getResponseHeader(name);
    } catch (e) {}
  },
  
  evalJSON: function() {
    try {
      return eval(this.header('X-JSON'));
    } catch (e) {}
  },
  
  evalResponse: function() {
    try {
      return eval(this.transport.responseText);
    } catch (e) {
      this.dispatchException(e);
    }
  },

  respondToReadyState: function(readyState) {
    var event = Ajax.Request.Events[readyState];
    var transport = this.transport, json = this.evalJSON();

    if (event == 'Complete') {
      try {
        (this.options['on' + this.transport.status]
         || this.options['on' + (this.responseIsSuccess() ? 'Success' : 'Failure')]
         || Ajax.emptyFunction)(transport, json);
      } catch (e) {
        this.dispatchException(e);
      }
      
      if ((this.header('Content-type') || '').match(/^text\/javascript/i))
        this.evalResponse();
    }
    
    try {
      (this.options['on' + event] || Ajax.emptyFunction)(transport, json);
      Ajax.Responders.dispatch('on' + event, this, transport, json);
    } catch (e) {
      this.dispatchException(e);
    }
    
    
    if (event == 'Complete')
      this.transport.onreadystatechange = Ajax.emptyFunction;
  },
  
  dispatchException: function(exception) {
    (this.options.onException || Ajax.emptyFunction)(this, exception);
    Ajax.Responders.dispatch('onException', this, exception);
  }
});




AjaxProxy = Class.create();



AjaxProxy.prototype = {
  
  
  initialize: function(sUrl, sPars, hOnSuccess, hOnFailure, times){
    this.url = sUrl;
    this.pars = sPars;
    this.onSuccessHandler = hOnSuccess;
    this.onFailureHandler = hOnFailure;
    this.timeOut = times;
    
    
    var ajaxReq = new Ajax.Request(
         this.url,
       {method: 'get', parameters: this.pars, onSuccess: this.success.bind(this), onFailure: this.failure.bind(this)} 
         );
    if(g('word') != null)
    {
      g('word').focus();  
    }
  },
  
  success: function(result){
  
    this.onSuccessHandler(result);  
    
  },
  
  failure: function(result){
  
    if(this.timeOut > 1)
    {
      var ajaxReq = new Ajax.Request(
         this.url,
       
       {method: 'get', parameters: this.pars, onSuccess: this.success.bind(this), onFailure: this.failure.bind(this)} 
      
         );
       this.timeOut -= 1;
    }
    else
    {
    
      this.onFailureHandler();
    
    }
  }
  

}; 




function BookmarkMng(cbHistoryLoad, cbHistoryUpdate)
{
  
  window.bookmarkMng = this;
  
  var _pollInterval = 200;
  var _currentHash = _getHash();
  
  var historyLoad = cbHistoryLoad;
  var historyUpdate = cbHistoryUpdate;
  
  var updateFlag = true;   
  var isIE = false;
  
  if (setInterval)
  {
    var _intervalID = setInterval(_checkHash, _pollInterval);
  }
  
  
  this._historyLoad = function($hash)
  {
      historyLoad($hash);
  };
  
  
  this.addBookmark = function($bookmarkHash) 
  { 
    _currentHash = $bookmarkHash;
    _setHash($bookmarkHash);
    
  };
  
  
  this._historyUpdate = function($newHash)
  {
    historyUpdate($newHash);  
  };
  
  
  
  if(/MSIE/.test(navigator.userAgent) && !/Opera/.test(navigator.userAgent)) 
  {
    
    if (navigator.appVersion.match(/MSIE\s(\d\.\d+)/)[1] >= 5.5) 
    {
      isIE = true;
      
      
      var $historyFrame = false;
      this.addBookmark = function($newHash) 
      { 
        _currentHash = $newHash;
        _createHistoryHTML($newHash, false);
      };
      
      this._historyUpdate = function($newHash)
      {
        
        _currentHash = $newHash;
        _setHash($newHash);
        if(updateFlag)
        {      
          historyUpdate($newHash);  
        }
        
        updateFlag = true;    
      };
        
      function _createHistoryHTML($newHash, flag) 
      {
        updateFlag = flag;
        
        $historyFrame.document.open('text/html');
        $historyFrame.document.write('<html><head></head><body onload="window.parent.bookmarkMng._historyUpdate(\''+$newHash+'\');"></body></html>');
        $historyFrame.document.close();
      };
      
      
      function _setUpHistoryFrame() 
      {
        
        
        if (!window.frames['HistoryFrame']) 
        {
          $historyFrame = document.createElement("iframe");
          $historyFrame.name = 'HistoryFrame';
          $historyFrame.id = 'HistoryFrame';
          $historyFrame.style.position = 'absolute';
          $historyFrame.style.top = '-900px';
        
          document.body.appendChild($historyFrame);
          
        }
        
        
        $historyFrame = window.frames[window.frames.length-1];
      
        
        
        _createHistoryHTML(_currentHash, false);
      };
      
    } 
    else 
    { 
      
    }
  }
  
  
  
  if(this._historyLoad)
  {
    if(isIE)  
    {
        _setUpHistoryFrame();
    }
    this._historyLoad(_currentHash);
  }
  
  
  
  function _getHash() 
  {
    
                
                var index = window.location.href.indexOf("#");
                if (index == -1) {
              index =window. location.href.length;
                }
                else {
                    index += 1;
                }
                return window.location.href.substring(index);
  };
  
  function _setHash($newHash) 
  {
    window.location.hash = $newHash;
  };
  
  function _checkHash() 
  {
    var $newHash = _getHash();
        
    if (_currentHash != $newHash) 
    {
      
      if(UrlEncode($newHash) == _currentHash)  
        return;
      
      _currentHash = $newHash;
      window.bookmarkMng._historyUpdate(_currentHash);
    }
    
    
  };
  
  
};




var maplet = null;









hotCallback = function(strURL)
{
  var pattern = /^&hotspot=([^&]+)$/;
  var result = strURL.match(pattern);
  if(result == null)
  {
    return;
  }
  else
  {
    if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         sessionOn();
         
         
         writeBack(result[1]);
         var pars = "word=" + UrlEncode(result[1]) + "&ct=10";  
         
         writePageLink("#" + pars);
         
        new AjaxProxy(
             's',
             pars,
             cbSearchSuccess,
             cbSearchFail,
             BaiduMap.TIMES
           );
         
       
       }
       catch(Ex)
    {
      sessionOff();
    }  
  }

};



  
BMap.setMode = function(imode)
{
  if(!maplet)
    return;
  maplet.setMode(imode);
};


BMap.displayMap = function()
{
  if (!maplet)
    return;
  maplet.showMap();
};




BMap.createMap = function(sCenter, iScale, iWidth, iHeight, iLeft, iTop)
{
  BMap.width = iWidth;
  BMap.height = iHeight;
  
  g(BMap.mapDiv).style.width = iWidth;
  g(BMap.mapDiv).style.height = iHeight;
  g(BMap.mapDiv).style.left = iLeft;
  
  
  maplet = new Maplet(BMap.mapDiv);
  maplet.addControl(new MStandardControl());
  maplet.centerAndZoom(new MPoint(sCenter), iScale);

};




BMap.setCenter = function(sCenter)
{
  
  if(!maplet)
    return;
  maplet.setCenter( new MPoint(sCenter) );

};




BMap.setZoomLevel = function(iZoomLevel)
{
  if(!maplet)
    return;
  maplet.setZoomLevel(parseInt(iZoomLevel));
};




BMap.setCenterAndZoom = function(sCenter, iZoomLevel)
{

  
  if(!maplet)
    return;
  maplet.centerAndZoom(new MPoint(sCenter), parseInt(iZoomLevel));

};


BMap.initCities = function()
{
  if(!maplet)
    return;
  
  maplet.addHotspot("mapPanel","HETCUFWVVHUEE","±±¾©ÊÐ",0,5);

  maplet.addHotspot("mapPanel","HHCIWHXVVJDBG","Ìì½òÊÐ",1,5);

  maplet.addHotspot("mapPanel","IJSRVJXVIWCHC","ÉÏº£ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IJITUVWUABJGJ","¹ãÖÝÊÐ",1,5);
  maplet.addHotspot("mapPanel","HFISFCXTWJRFB","ÖØÇìÊÐ",1,5);
  maplet.addHotspot("mapPanel","HTJTRBXWTBGET","ÉòÑôÊÐ",1,5);
  maplet.addHotspot("mapPanel","HWTARHXUUAIWI","ÎäººÊÐ",1,5);
  maplet.addHotspot("mapPanel","HBWSJFXURIERE","Î÷°²ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IJDAJAWVFJGCB","º¼ÖÝÊÐ",1,5);
  maplet.addHotspot("mapPanel","IEGDCTWVGDBVS","ÄÏ¾©ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IBCGUJXWDIRTI","Íþº£ÊÐ",1,5);
  maplet.addHotspot("mapPanel","HRRRBTWVRIHDU","¼ÃÄÏÊÐ",1,5);
  maplet.addHotspot("mapPanel","IBGRTCVUHGRSF","³¤É³ÊÐ",1,5);
  maplet.addHotspot("mapPanel","HVDFTDXWEVHRR","´óÁ¬ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IJTRTWXTGUUSR","º£¿ÚÊÐ",1,5);
  maplet.addHotspot("mapPanel","HESUBVWVITTHS","Ê¯¼Ò×¯ÊÐ",1,5);
  maplet.addHotspot("mapPanel","HIGSCCWVCHAHF","Ö£ÖÝÊÐ",1,5);
  maplet.addHotspot("mapPanel","HTESJCVBACCRUU","³¤´ºÊÐ",1,5);
  maplet.addHotspot("mapPanel","ISWIFCXVHBBAS","Äþ²¨ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IIEIVUWVHTJBE","ËÕÖÝÊÐ",1,5);
  maplet.addHotspot("mapPanel","IVVSDUWUJJTJR","ÏÃÃÅÊÐ",1,5);
  maplet.addHotspot("mapPanel","HABIJDVTUJEGA","³É¶¼ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IVGDHIXUUTREW","¸£ÖÝÊÐ",1,5);
  maplet.addHotspot("mapPanel","IJHUEEXTWSGVB","·ðÉ½ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IRRTRJXTWFUSG","ÖÐÉ½ÊÐ",1,5);
  maplet.addHotspot("mapPanel","ISTBEAVUAIIDF","ÉîÛÚÊÐ",1,5);
  maplet.addHotspot("mapPanel","HWCAADXVRBECV","ÁÙÒÊÊÐ",1,5);
  maplet.addHotspot("mapPanel","HRECWCXUTBDGU","Ïå·®ÊÐ",1,5);
  maplet.addHotspot("mapPanel","HSHWUDXBAHARIG","¹þ¶û±õÊÐ",1,5);
  maplet.addHotspot("mapPanel","HGIVRBXTCWBDG","À¥Ã÷ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IARACCWVVUDCU","ÇàµºÊÐ",1,5);
  maplet.addHotspot("mapPanel","ECTRRTUTIIAJH","ÎÚÂ³Ä¾ÆëÊÐ",1,5);
  maplet.addHotspot("mapPanel","ICGAACWVDIGSD","ºÏ·ÊÊÐ",1,5);
  maplet.addHotspot("mapPanel","IHGVVGWVHSTJB","ÎÞÎýÊÐ",1,5);
  maplet.addHotspot("mapPanel","ICIFVTWTIBCAU","ÄÏÄþÊÐ",1,5);
  maplet.addHotspot("mapPanel","HWWUHDXWCHRJC","ÑÌÌ¨ÊÐ",1,5);
  maplet.addHotspot("mapPanel","HHSSFDVBAFUUUG","´óÇìÊÐ",1,5);
  maplet.addHotspot("mapPanel","HCAFICWVFITUB","Ì«Ô­ÊÐ",1,5);
  maplet.addHotspot("mapPanel","FUUVCJWSIEVAR","À­ÈøÊÐ",1,5);
  maplet.addHotspot("mapPanel","IFCEUTVUTJJDU","ÄÏ²ýÊÐ",1,5);
  maplet.addHotspot("mapPanel","GHIEETXUTURWF","Òø´¨ÊÐ",1,5);
  maplet.addHotspot("mapPanel","HRFBHUVTSGBFI","¹óÑôÊÐ",1,5);
  maplet.addHotspot("mapPanel","GDIATWXUDCTBA","Î÷ÄþÊÐ",1,5);
  maplet.addHotspot("mapPanel","GTCIEDWVIRJSI","ºôºÍºÆÌØÊÐ",1,5);
  maplet.addHotspot("mapPanel","GHFHGUWUFFUUV","À¼ÖÝÊÐ",1,5);
  maplet.addHotspot("mapPanel","IHJVAAWVJEAFH","ÄÏÍ¨ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IGJGIVWVHIHHB","³£ÖÝÊÐ",1,5);
  maplet.addHotspot("mapPanel","HTAVDJWVTEHVC","×Í²©ÊÐ",1,5);
  maplet.addHotspot("mapPanel","HUTJUUWVUSVIC","Î«·»ÊÐ",1,5);
  maplet.addHotspot("mapPanel","HSIVBAXVJWASD","Ì©°²ÊÐ",1,5);
  maplet.addHotspot("mapPanel","HGRDWVXVAFWVU","ÂåÑôÊÐ",1,5);
  maplet.addHotspot("mapPanel","HUBFDBXUWBFVV","ÐÅÑôÊÐ",1,5);
  maplet.addHotspot("mapPanel","IRHDSEVUASTDU","¶«Ý¸ÊÐ",1,5);¡¡
  maplet.addHotspot("mapPanel","ISFWBTXTWDEUF","Öéº£ÊÐ",1,5);
  maplet.addHotspot("mapPanel","IVWVHJXURWGTT","ÈªÖÝÊÐ",1,5);
  maplet.addHotspot("mapPanel","IVCTCHWUIVUGC","ÕÄÖÝÊÐ",1,5);
  maplet.addHotspot("mapPanel","HVCVBJWBAEBVVR","¼ªÁÖÊÐ",1,5);¡¡
  maplet.addHotspot("mapPanel","IAIWVHXUDRCGT","ÉÛÑôÊÐ",1,5);¡¡¡¡

  MEvent.addListener(maplet, 'hotspot', hotCallback);
  maplet.refresh();
};




BMap.poi_arr = new Array(30);
BMap.poi_cur = 0;


BMap.addPOI = function(iNum, sLatLon, sLabel, sHtml)
{
  if (!maplet)
    return;
  
  BMap.addIcon(BaiduMap.imagePath + 'p'+ iNum + '.gif', sLatLon, sLabel, sHtml);

};

BMap.addIcon = function(sIcon, sLatLon, sLabel, sHtml)
{
  

    var point = new MPoint(sLatLon);
    var icon = new MIcon(sIcon);
    
    var infoWindow = null;
    if(sLabel != null && sHtml != null)
    {
    
    	infoWindow = new MInfoWindow(sLabel, sHtml);
    }
    var marker = new MMarker(point, icon, infoWindow);
    
    maplet.addOverlay(marker);
    BMap.poi_arr[BMap.poi_cur] = marker;
    BMap.poi_cur++;
};



BMap.addConcernPoint = function(sLatlon, sLabel, sHtml)
{
  if (!maplet)
    return;  
  
  BMap.addIcon(BaiduMap.imagePath + 'marker.gif', sLatlon, sLabel, sHtml);

};


BMap.resize = function(w, h)
{
    if(!maplet)
  return;
  maplet.resize(w, h);
  BMap.width = w;
  BMap.height = h;  
};


BMap.addOrgPoint = function(sLatlon, sLabel, sHtml)
{
  if(!maplet)
    return;
       
  
  BMap.addIcon(BaiduMap.imagePath + 'qidian.gif',sLatlon, sLabel,sHtml);
  
};


BMap.addDesPoint = function(sLatlon, sLabel, sHtml)
{
  if(!maplet)
    return;
        
  
  BMap.addIcon(BaiduMap.imagePath + 'zhongdian.gif', sLatlon, sLabel,sHtml);

};


BMap.addTurnPoint = function(sLatlon)
{
  if(!maplet)
    return;
  
  BMap.addIcon(BaiduMap.imagePath + 'turn.gif', sLatlon, null, null);  

};







BMap.getMPointArray = function(sLatlons)
{
  
  var mpArray = new Array();
  var pArray = sLatlons.split(",");
  for(var i=0;i<pArray.length;i++) 
  {
     if(pArray[i].length>0) {
        mpArray.push(new MPoint(pArray[i]));
     }
                  
  }

  
  
  return mpArray;
  

  
}


BMap.showRoute = function(color,line)
{
  if (!maplet)
    return;
  
  //var infoWindow = new MInfoWindow("", "");
  var infoWindow = null;
  var polyline = new MPolyline(BMap.getMPointArray(line), new MBrush(color, 5), infoWindow);
  
  
  
  maplet.addOverlay(polyline);

};


BMap.refresh = function()
{
  if (!maplet)
    return;
  maplet.refresh();
};



BMap.removeAll = function()
{
  if(!maplet)
    return;
  
  maplet.hideBubble();
  maplet.clearOverlays();
  BMap.poi_cur = 0;

};


BMap.removeRoute = function()
{
  if(!maplet)
    return;
  
  maplet.hideBubble();
  maplet.clearOverlays();
  BMap.poi_cur = 0;

};



BMap.showBubble = function(num)
{
  if(!maplet) 
    return;
  
  if(num<0 || num > BMap.poi_cur)
    return;

  var marker = BMap.poi_arr[num];
  marker.openInfoWindow();
  
};


BMap.hideBubble = function()
{
  
  if(!maplet)
    return;  
  maplet.hideBubble();
};


BMap.hideMapLayer = function()
{
  g(BMap.mapDiv).style.display = "none";
};


BMap.showMapLayer = function()
{
  g(BMap.mapDiv).style.display = "block";  
};

  


 
var xsltCache = {};     


BXslt = Class.create();



BXslt.prototype = {
    
    
    initialize: function (xmlDOM, htmlContainer, xsltName, options){
        this.xsltName = xsltName;
        this.options = options;
        this.xmlDOM = xmlDOM;
        this.htmlContainer = htmlContainer;
        var cachedXslt = BXslt.getCache(xsltName);
        if(cachedXslt){  
            var result = BXslt.transformToHtml(xmlDOM, htmlContainer, cachedXslt);
            if(result == true){
                (this.options["onSuccess"] || Prototype.emptyFunction)();
            }
            else{
                (this.options["onFailure"] || Prototype.emptyFunction)("xlmÎÄµµ½âÎöÊ§°Ü£¡");
            }
        }
        else {      
            var xsltUrl = BXslt.getHref(xsltName);
            this.sendRequest(xsltUrl);
        }
    },
    
    
    sendRequest : function(xsltUrl) {
        new Ajax.Request(xsltUrl, 
                { method:        'get',
                  onComplete:    this.onRequestComplete.bind(this) 
                }
        );
        
        
        (this.options["onLoading"] || Prototype.emptyFunction)();
    },
    
    
    onRequestComplete : function(request) {
        if (request.status == 200){
          
              var response = request.responseXML;
            
            if (response != null){      
                BXslt.setCache(this.xsltName, response);
                var result = BXslt.transformToHtml(this.xmlDOM, this.htmlContainer, response);
                if(result == true){
                    (this.options["onSuccess"] || Prototype.emptyFunction)();
                }
                else{
                    (this.options["onFailure"] || Prototype.emptyFunction)("xlmÎÄµµ½âÎöÊ§°Ü£¡");
                }
            }
        }
        else {         
            (this.options["onFailure"] || Prototype.emptyFunction)("»ñÈ¡xsltÎÄµµÊ§°Ü£¡");
        }
    }
};





BXslt.getCache = function(xsltName) {
    return xsltCache[xsltName];
};


BXslt.setCache = function(xsltName, xsltDOM) {
    xsltCache[xsltName] = xsltDOM;
};


BXslt.getHref = function(xsltName) {
    if(xsltName.indexOf("http://") == 0){       
        return xsltName;
    }
    else {
        return xsltBaseUrl + xsltName;
    }
};


 
BXslt.transformToHtml = function(xmlDOM, htmlContainer, xsltDOM) {
   
    try {   
        
        if(typeof xmlDOM.transformNode!="undefined"){
          BXslt.renderHtml(htmlContainer, xmlDOM.transformNode(xsltDOM));  
      }
      
      else if(typeof XSLTProcessor!="undefined"&&typeof XSLTProcessor.prototype.importStylesheet!="undefined"){
          var processor = new XSLTProcessor();
        processor.importStylesheet(xsltDOM);
        var htmlNode = processor.transformToFragment(xmlDOM, window.document);
        BXslt.clearContainer(htmlContainer);
        htmlContainer.appendChild(htmlNode);
      
      }
      
      else {
            
            return false;  
      }
      return true;
    }
    catch (e){
        return false;
    }
};


BXslt.renderHtml = function(htmlContainer, html) {
    if(htmlContainer.innerHTML!= html){
        BXslt.clearContainer(htmlContainer);
        htmlContainer.innerHTML = html;
    }
};


BXslt.clearContainer = function(htmlContainer) {
    var node;
    while( node = htmlContainer.firstChild){
        htmlContainer.removeChild(node);
    }
};



var Controller = {
  
  viewMap: [],
  
  
  currentViewName: null,
  
  
  _viewFactory: null,
  
  
  renderView: function(view, model)
  {
    Controller.registerView(view);
    Controller.switchView(view.viewName, model);
      
  },
  
  
  switchView: function(viewName, model)
  {
    var view = Controller.viewMap[viewName];
    
    if(view == undefined)
    {
        if(Controller._viewFactory == null)
        {
          throw new ControllerEx(Controller.errorEnum.targetViewNotExistException, "targetViewNotExistException: Ä¿±êview²»´æÔÚ");
        }
        else
        {
          view = Controller._viewFactory.getView(viewName);
          if(view == null)
          {
            throw new ControllerEx(Controller.errorEnum.undefinedViewException, "undefinedViewException: Ä¿±êview£¬ÎÞ¶¨Òå");  
          }
          Controller.registerView(view);  
        }
        
    }
    
    
    Controller.currentViewName = viewName;
    new BXslt(model, g(view.elementId), view.xsltName, {onSuccess: Controller.onXsltLoadSuccess, onFailure: Controller.onXsltLoadFailure, onLoading: Controller.onXsltLoading});
      
  },
  
  
  registerView: function(view)
  {
    if(Controller.validateView(view) == false)
    {
      throw new ControllerEx(Controller.errorEnum.invalidViewException, "invalidViewException: ÎÞÐ§µÄview¶ÔÏó");  
    }
    
    Controller.viewMap[view.viewName] = view;
    
  },
  
  
  setViewFactory: function(objViewFactory)
  {
    if(objViewFactory == null)
      return ;
    Controller._viewFactory = objViewFactory;
  },
  
  
  
  unregisterView: function(viewName)
  {
    if(Controller.viewMap[viewName] != undefined)
    {
      delete Controller.viewMap.viewName;  
    }  
  },
    

  
  errorEnum: {
    XsltLoadException: 1,
    CommonException: 2,
    invalidViewException: 3,
    targetViewNotExistException: 4,
    nullInnerHTMLException: 5,
    undefinedViewException:6
    },
    
  
  validateView: function(view)
  {
    var viewDef = new View(null, null, null, null, {onSuccess:{}, onFailure:{}, onException:{}});
    for(var p in viewDef)
    {
      if(view[p] == null)
      {
        return false;  
      }
        
    }
        
    return true;
  },
  
  
  onXsltLoadSuccess: function()
  {
    
    var view = Controller.viewMap[Controller.currentViewName];
    try
    {    
      var _pageElement = g(view.elementId);
      if(_pageElement.innerHTML == "")  
      {
        throw new ControllerEx(Controller.errorEnum.nullInnerHTMLException, "nullInnerHTMLException: ¿ÕInnerHTMLÌî³ä");
      }
    
      Behaviour.apply(view.rule);
      view.onSuccess();
    }
    catch(ex)
    {
      view.onException(ex);
    }  
  },
  
  
  onXsltLoadFailure: function()
  {
    var view = Controller.viewMap[Controller.currentViewName];
    view.onFailure();
  },
  
  
  onXsltLoading: function(){}
  
  
};



function ControllerEx(errorCode, Msg)
{
  this.errorCode = errorCode;
  this.errorMsg = Msg;  
};


ControllerEx.prototype.toString = function()
{
  return this.errorMsg;  
};


  


function View(viewName, xsltName, elementId, rule, eventHandlers)
{
  
  this.viewName = viewName;
  this.xsltName = xsltName;
  this.elementId = elementId;
  this.rule = rule;
  this.onSuccess = eventHandlers["onSuccess"];
  this.onFailure = eventHandlers["onFailure"];
  this.onException = eventHandlers["onException"];  
};


var behaviourCopyRightOne = null;
   


var Behaviour = {
    
  
  apply : function(sheet)
  {
    if(sheet == null)
      return;
    
    var list = null;
    for (var selector in sheet)
    {
        
      list = document.getElementsBySelector(selector);
      if (!list)  
      {
          continue;
      }

      for(i=0;element=list[i];i++)
      {
          sheet[selector](element);
      }
    }
    
  }
    
};


var behaviourCopyRightTwo = null;



function getAllChildren(e) {
  
  return e.all ? e.all : e.getElementsByTagName('*');
};

document.getElementsBySelector = function(selector) {
  
  if (!document.getElementsByTagName) {
    return new Array();
  }
  
  var tokens = selector.split(' ');
  var currentContext = new Array(document);
  for (var i = 0; i < tokens.length; i++) {
    token = tokens[i].replace(/^\s+/,'').replace(/\s+$/,'');;
    if (token.indexOf('#') > -1) {
      
      var bits = token.split('#');
      var tagName = bits[0];
      var id = bits[1];
      var element = document.getElementById(id);
      if (tagName && element.nodeName.toLowerCase() != tagName) {
        
        return new Array();
      }
      
      currentContext = new Array(element);
      continue; 
    }
    if (token.indexOf('.') > -1) {
      
      var bits = token.split('.');
      var tagName = bits[0];
      var className = bits[1];
      if (!tagName) {
        tagName = '*';
      }
      
      var found = new Array;
      var foundCount = 0;
      for (var h = 0; h < currentContext.length; h++) {
        var elements;
        if (tagName == '*') {
            elements = getAllChildren(currentContext[h]);
        } else {
            elements = currentContext[h].getElementsByTagName(tagName);
        }
        for (var j = 0; j < elements.length; j++) {
          found[foundCount++] = elements[j];
        }
      }
      currentContext = new Array;
      var currentContextIndex = 0;
      for (var k = 0; k < found.length; k++) {
        if (found[k].className && found[k].className.match(new RegExp('\\b'+className+'\\b'))) {
          currentContext[currentContextIndex++] = found[k];
        }
      }
      continue; 
    }
    
    if (token.match(/^(\w*)\[(\w+)([=~\|\^\$\*]?)=?"?([^\]"]*)"?\]$/)) {
      var tagName = RegExp.$1;
      var attrName = RegExp.$2;
      var attrOperator = RegExp.$3;
      var attrValue = RegExp.$4;
      if (!tagName) {
        tagName = '*';
      }
      
      var found = new Array;
      var foundCount = 0;
      for (var h = 0; h < currentContext.length; h++) {
        var elements;
        if (tagName == '*') {
            elements = getAllChildren(currentContext[h]);
        } else {
            elements = currentContext[h].getElementsByTagName(tagName);
        }
        for (var j = 0; j < elements.length; j++) {
          found[foundCount++] = elements[j];
        }
      }
      currentContext = new Array;
      var currentContextIndex = 0;
      var checkFunction; 
      switch (attrOperator) {
        case '=': 
          checkFunction = function(e) { return (e.getAttribute(attrName) == attrValue); };
          break;
        case '~': 
          checkFunction = function(e) { return (e.getAttribute(attrName).match(new RegExp('\\b'+attrValue+'\\b'))); };
          break;
        case '|': 
          checkFunction = function(e) { return (e.getAttribute(attrName).match(new RegExp('^'+attrValue+'-?'))); };
          break;
        case '^': 
          checkFunction = function(e) { return (e.getAttribute(attrName).indexOf(attrValue) == 0); };
          break;
        case '$': 
          checkFunction = function(e) { return (e.getAttribute(attrName).lastIndexOf(attrValue) == e.getAttribute(attrName).length - attrValue.length); };
          break;
        case '*': 
          checkFunction = function(e) { return (e.getAttribute(attrName).indexOf(attrValue) > -1); };
          break;
        default :
          
          checkFunction = function(e) { return e.getAttribute(attrName); };
      }
      currentContext = new Array;
      var currentContextIndex = 0;
      for (var k = 0; k < found.length; k++) {
        if (checkFunction(found[k])) {
          currentContext[currentContextIndex++] = found[k];
        }
      }
      
      continue; 
    }
    
    if (!currentContext[0]){
      return;
    }
    
    
    tagName = token;
    var found = new Array;
    var foundCount = 0;
    for (var h = 0; h < currentContext.length; h++) {
      var elements = currentContext[h].getElementsByTagName(tagName);
      for (var j = 0; j < elements.length; j++) {
        found[foundCount++] = elements[j];
      }
    }
    currentContext = found;
  }
  return currentContext;
};



  


 

var userAgent = navigator.userAgent.toLowerCase();      

var mapPos = new BCord(0,0);;     
var mapSize = new BSize(0,0);;  
var mapMargin = 10;  
var mapZoom = 11;




function _typeOf(name) {
    return ( userAgent.indexOf(name) != -1 );
};
 
 

function isBrowserCompatible(){
    return (
        
        (_typeOf('msie') &&!_typeOf('msie 5.5') && !_typeOf('msie 5.0') && 
            !_typeOf('msie 5.1') &&!_typeOf('msie 3') && !_typeOf('msie 4') && 
            !_typeOf('powerpc') && !_typeOf('opera')) ||
        
        (document.getElementById && window.XSLTProcessor && window.XMLHttpRequest && 
            !_typeOf('netscape6') &&!_typeOf('netscape/7.0'))
    );
};


function noActiveX(){
  if(!_typeOf('msie')){
    return false;
  }
  try { 
      new ActiveXObject("Microsoft.XMLDOM"); 
  }
  catch (e) 
  { 
      return true; 
  }
  return false;
};


function BSize(w,h){
    this.width = w;
    this.Height = h;
};


function BCord(x,y){
    this.x = x;
    this.y = y;
};


function getWindowSize(){
  var size = new BSize(0,0);
  
  
  
  
  
  size.width=document.body.clientWidth;
  size.height=document.body.clientHeight;
  return size;
};


function getElementPos(element){
  var cord = new BCord(0,0);
  while(element){
    cord.x += element.offsetLeft;
    cord.y += element.offsetTop;
    element = element.offsetParent;
  }
  return cord;
};

function getMapSize(){
    var size = new BSize(0,0);
    var winSize = getWindowSize();
    
    
    size.height = winSize.height - mapPos.y - 50;
    
    size.width = winSize.width - g("txtPanel").offsetWidth - 2 * mapMargin;
    return size;
};


function resize(){
    mapSize = getMapSize();
    
    
    BMap.hideBubble();    

    
   
    g("mapPanel").style.height = mapSize.height;
          
    
    g("txtPanel").style.height = mapSize.height;
        
    
    g("wrapper").style.height = mapSize.height;
    
      
    rePosLoading();
    
    BMap.resize(mapSize.width, mapSize.height);
    
};

function rePosLoading(){
    g(elementTable.loadingPanel).style.left = mapPos.x + (mapSize.width - g(elementTable.loadingPanel).clientWidth) / 2;
    g(elementTable.loadingPanel).style.top = mapPos.y + (mapSize.height - g(elementTable.loadingPanel).clientHeight) / 2;

    
};

function loadBody(){
  
    
    

          
     
};


function appInit()
{
  MM_preloadImages();
  
  if(window.location.search)
  {
        if(window.location.pathname == "/m" && window.location.search != "")
        {
          
         var newUrl = window.location.href.replace(/m\?/, "#");
         window.location.replace(newUrl);
            
        }
             
  }
  
  initPosition();
  
  pageElement.load();
  
  Controller.setViewFactory(viewFactory);  
  
  new BookmarkMng(loadHash, updateHash);
  
};


function MM_preloadImages() 
{ 
    var d=document; 
    if(d.images)
    { 
      if(!d.MM_p)
      {
        d.MM_p=new Array();
      } 

      var i,j=d.MM_p.length,a=preloadImageTab; 
      for(i=0; i<a.length; i++)
      {
        if (a[i].indexOf("#")!=0)
        { 
          d.MM_p[j]=new Image;
          d.MM_p[j++].src=a[i];
        }
      }  
    }
    
};

function addMMpreloadImage(picurl)
{
  
  if(picurl == null || picurl == undefined || picurl=="")
  {
    return;
  }
  var doc = document;
  if(doc.images)
  {
    if(!doc.MM_p)
    {
      return;
    }
    
    var index = doc.MM_p.length;
    doc.MM_p[index] = new Image;
    doc.MM_p[index].src = picurl;
  }
};

function initPosition()
{
  
  var txtPos = getElementPos(g("txtPanel"));
  
  
  mapPos.y = txtPos.y;
  mapPos.x = mapMargin;
  mapSize = getMapSize();
        
  
  
  g("mapPanel").style.height = mapSize.height;
          
  
  g("txtPanel").style.height = mapSize.height;
  var winSize = getWindowSize();
        
  
  g("wrapper").style.height = mapSize.height;
        
  
  rePosLoading();
        
  
  if(isBrowserCompatible()){     
       if(noActiveX()){  
           g("mapPanel").innerHTML = "<br><br><p><b>ÓÉÓÚÄúµÄä¯ÀÀÆ÷²»ÔÊÐíÊ¹ÓÃActiveX£¬ÎÒÃÇÎÞ·¨ÎªÄúÌá¹©·þÎñ¡£Çë¸ü¸Ää¯ÀÀÆ÷ÉèÖÃºóÖØÊÔ¡£</b></p>";
       }
      else
      {

        
      }
  }
  else 
  {
      g("mapPanel").innerHTML = "<br><br><p><b>¶Ô²»Æð£¬ÎÒÃÇÔÝÊ±ÎÞ·¨Ö§³ÖÄúµÄä¯ÀÀÆ÷ÀàÐÍ£¡</b></p>";    
  }
  
  
  
};




function otherSearch(type){ 
    var searchUrl = "http://";
    var word = g("word").value;
    switch(type){
    case "news":
        searchUrl += "news.baidu.com/";
        if(word && word != ""){
            searchUrl += "ns?cl=2&rn=20&tn=news&word=";
            searchUrl += UrlEncode(word);
        }
        break;
    case "www":
        searchUrl += "www.baidu.com/";
        if(word && word != ""){
            searchUrl += "s?cl=3&wd=";
            searchUrl += UrlEncode(word);
        }
        break;
    case "post":
        searchUrl += "post.baidu.com/";
        if(word && word != ""){
            searchUrl += "f?kw=";
            searchUrl += UrlEncode(word);
        }
        break;
    case "zhidao":
        searchUrl += "zhidao.baidu.com/";
        if(word && word != ""){
            searchUrl += "q?ct=17&pn=0&tn=ikaslist&rn=10&fr=mapt&word=";
            searchUrl += UrlEncode(word);
        }
        break;
    case "mp3":
        searchUrl += "mp3.baidu.com/";
        if(word && word != ""){
            searchUrl += "m?tn=baidump3&ct=134217728&lm=-1&word=";
            searchUrl += UrlEncode(word);
        }
        break;
    case "image":
        searchUrl += "image.baidu.com/";
        if(word && word != ""){
            searchUrl += "i?tn=baiduimage&ct=201326592&lm=-1&cl=2&word=";
            searchUrl += UrlEncode(word);
        }
        break;
    default:
        return;
    }
    window.location.href= searchUrl;
    
};




function h(obj,url){
    obj.style.behavior='url(#default#homepage)';
    obj.setHomePage(url);
};


function mSubmit(event) 
{
    var evt = event || window.event;
    if(evt.keyCode == 13)  
    {
        monitor.search();
    }
};
    
var strGB="¡¡¡¢¡£¡¤¡¥¡¦¡§¡¨¡©¡ª¡«¡¬¡­¡®¡¯¡°¡±¡²¡³¡´¡µ¡¶¡·¡¸¡¹¡º¡»¡¼¡½¡¾¡¿¡À¡Á¡Â¡Ã¡Ä¡Å¡Æ¡Ç¡È¡É¡Ê¡Ë¡Ì¡Í¡Î¡Ï¡Ð¡Ñ¡Ò¡Ó¡Ô¡Õ¡Ö¡×¡Ø¡Ù¡Ú¡Û¡Ü¡Ý¡Þ¡ß¡à¡á¡â¡ã¡ä¡å¡æ¡ç¡è¡é¡ê¡ë¡ì¡í¡î¡ï¡ð¡ñ¡ò¡ó¡ô¡õ¡ö¡÷¡ø¡ù¡ú¡û¡ü¡ý¡þ¢¡¢¢¢£¢¤¢¥¢¦¢§¢¨¢©¢ª¢«¢¬¢­¢®¢¯¢°¢±¢²¢³¢´¢µ¢¶¢·¢¸¢¹¢º¢»¢¼¢½¢¾¢¿¢À¢Á¢Â¢Ã¢Ä¢Å¢Æ¢Ç¢È¢É¢Ê¢Ë¢Ì¢Í¢Î¢Ï¢Ð¢Ñ¢Ò¢Ó¢Ô¢Õ¢Ö¢×¢Ø¢Ù¢Ú¢Û¢Ü¢Ý¢Þ¢ß¢à¢á¢â¢ã¢ä¢å¢æ¢ç¢è¢é¢ê¢ë¢ì¢í¢î¢ï¢ð¢ñ¢ò¢ó¢ô¢õ¢ö¢÷¢ø¢ù¢ú¢û¢ü¢ý¢þ£¡£¢£££¤£¥£¦£§£¨£©£ª£«£¬£­£®£¯£°£±£²£³£´£µ£¶£·£¸£¹£º£»£¼£½£¾£¿£À£Á£Â£Ã£Ä£Å£Æ£Ç£È£É£Ê£Ë£Ì£Í£Î£Ï£Ð£Ñ£Ò£Ó£Ô£Õ£Ö£×£Ø£Ù£Ú£Û£Ü£Ý£Þ£ß£à£á£â£ã£ä£å£æ£ç£è£é£ê£ë£ì£í£î£ï£ð£ñ£ò£ó£ô£õ£ö£÷£ø£ù£ú£û£ü£ý£þ¤¡¤¢¤£¤¤¤¥¤¦¤§¤¨¤©¤ª¤«¤¬¤­¤®¤¯¤°¤±¤²¤³¤´¤µ¤¶¤·¤¸¤¹¤º¤»¤¼¤½¤¾¤¿¤À¤Á¤Â¤Ã¤Ä¤Å¤Æ¤Ç¤È¤É¤Ê¤Ë¤Ì¤Í¤Î¤Ï¤Ð¤Ñ¤Ò¤Ó¤Ô¤Õ¤Ö¤×¤Ø¤Ù¤Ú¤Û¤Ü¤Ý¤Þ¤ß¤à¤á¤â¤ã¤ä¤å¤æ¤ç¤è¤é¤ê¤ë¤ì¤í¤î¤ï¤ð¤ñ¤ò¤ó¤ô¤õ¤ö¤÷¤ø¤ù¤ú¤û¤ü¤ý¤þ¥¡¥¢¥£¥¤¥¥¥¦¥§¥¨¥©¥ª¥«¥¬¥­¥®¥¯¥°¥±¥²¥³¥´¥µ¥¶¥·¥¸¥¹¥º¥»¥¼¥½¥¾¥¿¥À¥Á¥Â¥Ã¥Ä¥Å¥Æ¥Ç¥È¥É¥Ê¥Ë¥Ì¥Í¥Î¥Ï¥Ð¥Ñ¥Ò¥Ó¥Ô¥Õ¥Ö¥×¥Ø¥Ù¥Ú¥Û¥Ü¥Ý¥Þ¥ß¥à¥á¥â¥ã¥ä¥å¥æ¥ç¥è¥é¥ê¥ë¥ì¥í¥î¥ï¥ð¥ñ¥ò¥ó¥ô¥õ¥ö¥÷¥ø¥ù¥ú¥û¥ü¥ý¥þ¦¡¦¢¦£¦¤¦¥¦¦¦§¦¨¦©¦ª¦«¦¬¦­¦®¦¯¦°¦±¦²¦³¦´¦µ¦¶¦·¦¸¦¹¦º¦»¦¼¦½¦¾¦¿¦À¦Á¦Â¦Ã¦Ä¦Å¦Æ¦Ç¦È¦É¦Ê¦Ë¦Ì¦Í¦Î¦Ï¦Ð¦Ñ¦Ò¦Ó¦Ô¦Õ¦Ö¦×¦Ø¦Ù¦Ú¦Û¦Ü¦Ý¦Þ¦ß¦à¦á¦â¦ã¦ä¦å¦æ¦ç¦è¦é¦ê¦ë¦ì¦í¦î¦ï¦ð¦ñ¦ò¦ó¦ô¦õ¦ö¦÷¦ø¦ù¦ú¦û¦ü¦ý¦þ§¡§¢§£§¤§¥§¦§§§¨§©§ª§«§¬§­§®§¯§°§±§²§³§´§µ§¶§·§¸§¹§º§»§¼§½§¾§¿§À§Á§Â§Ã§Ä§Å§Æ§Ç§È§É§Ê§Ë§Ì§Í§Î§Ï§Ð§Ñ§Ò§Ó§Ô§Õ§Ö§×§Ø§Ù§Ú§Û§Ü§Ý§Þ§ß§à§á§â§ã§ä§å§æ§ç§è§é§ê§ë§ì§í§î§ï§ð§ñ§ò§ó§ô§õ§ö§÷§ø§ù§ú§û§ü§ý§þ¨¡¨¢¨£¨¤¨¥¨¦¨§¨¨¨©¨ª¨«¨¬¨­¨®¨¯¨°¨±¨²¨³¨´¨µ¨¶¨·¨¸¨¹¨º¨»¨¼¨½¨¾¨¿¨À¨Á¨Â¨Ã¨Ä¨Å¨Æ¨Ç¨È¨É¨Ê¨Ë¨Ì¨Í¨Î¨Ï¨Ð¨Ñ¨Ò¨Ó¨Ô¨Õ¨Ö¨×¨Ø¨Ù¨Ú¨Û¨Ü¨Ý¨Þ¨ß¨à¨á¨â¨ã¨ä¨å¨æ¨ç¨è¨é¨ê¨ë¨ì¨í¨î¨ï¨ð¨ñ¨ò¨ó¨ô¨õ¨ö¨÷¨ø¨ù¨ú¨û¨ü¨ý¨þ©¡©¢©£©¤©¥©¦©§©¨©©©ª©«©¬©­©®©¯©°©±©²©³©´©µ©¶©·©¸©¹©º©»©¼©½©¾©¿©À©Á©Â©Ã©Ä©Å©Æ©Ç©È©É©Ê©Ë©Ì©Í©Î©Ï©Ð©Ñ©Ò©Ó©Ô©Õ©Ö©×©Ø©Ù©Ú©Û©Ü©Ý©Þ©ß©à©á©â©ã©ä©å©æ©ç©è©é©ê©ë©ì©í©î©ï©ð©ñ©ò©ó©ô©õ©ö©÷©ø©ù©ú©û©ü©ý©þª¡ª¢ª£ª¤ª¥ª¦ª§ª¨ª©ªªª«ª¬ª­ª®ª¯ª°ª±ª²ª³ª´ªµª¶ª·ª¸ª¹ªºª»ª¼ª½ª¾ª¿ªÀªÁªÂªÃªÄªÅªÆªÇªÈªÉªÊªËªÌªÍªÎªÏªÐªÑªÒªÓªÔªÕªÖª×ªØªÙªÚªÛªÜªÝªÞªßªàªáªâªãªäªåªæªçªèªéªêªëªìªíªîªïªðªñªòªóªôªõªöª÷ªøªùªúªûªüªýªþ«¡«¢«£«¤«¥«¦«§«¨«©«ª«««¬«­«®«¯«°«±«²«³«´«µ«¶«·«¸«¹«º«»«¼«½«¾«¿«À«Á«Â«Ã«Ä«Å«Æ«Ç«È«É«Ê«Ë«Ì«Í«Î«Ï«Ð«Ñ«Ò«Ó«Ô«Õ«Ö«×«Ø«Ù«Ú«Û«Ü«Ý«Þ«ß«à«á«â«ã«ä«å«æ«ç«è«é«ê«ë«ì«í«î«ï«ð«ñ«ò«ó«ô«õ«ö«÷«ø«ù«ú«û«ü«ý«þ¬¡¬¢¬£¬¤¬¥¬¦¬§¬¨¬©¬ª¬«¬¬¬­¬®¬¯¬°¬±¬²¬³¬´¬µ¬¶¬·¬¸¬¹¬º¬»¬¼¬½¬¾¬¿¬À¬Á¬Â¬Ã¬Ä¬Å¬Æ¬Ç¬È¬É¬Ê¬Ë¬Ì¬Í¬Î¬Ï¬Ð¬Ñ¬Ò¬Ó¬Ô¬Õ¬Ö¬×¬Ø¬Ù¬Ú¬Û¬Ü¬Ý¬Þ¬ß¬à¬á¬â¬ã¬ä¬å¬æ¬ç¬è¬é¬ê¬ë¬ì¬í¬î¬ï¬ð¬ñ¬ò¬ó¬ô¬õ¬ö¬÷¬ø¬ù¬ú¬û¬ü¬ý¬þ­¡­¢­£­¤­¥­¦­§­¨­©­ª­«­¬­­­®­¯­°­±­²­³­´­µ­¶­·­¸­¹­º­»­¼­½­¾­¿­À­Á­Â­Ã­Ä­Å­Æ­Ç­È­É­Ê­Ë­Ì­Í­Î­Ï­Ð­Ñ­Ò­Ó­Ô­Õ­Ö­×­Ø­Ù­Ú­Û­Ü­Ý­Þ­ß­à­á­â­ã­ä­å­æ­ç­è­é­ê­ë­ì­í­î­ï­ð­ñ­ò­ó­ô­õ­ö­÷­ø­ù­ú­û­ü­ý­þ®¡®¢®£®¤®¥®¦®§®¨®©®ª®«®¬®­®®®¯®°®±®²®³®´®µ®¶®·®¸®¹®º®»®¼®½®¾®¿®À®Á®Â®Ã®Ä®Å®Æ®Ç®È®É®Ê®Ë®Ì®Í®Î®Ï®Ð®Ñ®Ò®Ó®Ô®Õ®Ö®×®Ø®Ù®Ú®Û®Ü®Ý®Þ®ß®à®á®â®ã®ä®å®æ®ç®è®é®ê®ë®ì®í®î®ï®ð®ñ®ò®ó®ô®õ®ö®÷®ø®ù®ú®û®ü®ý®þ¯¡¯¢¯£¯¤¯¥¯¦¯§¯¨¯©¯ª¯«¯¬¯­¯®¯¯¯°¯±¯²¯³¯´¯µ¯¶¯·¯¸¯¹¯º¯»¯¼¯½¯¾¯¿¯À¯Á¯Â¯Ã¯Ä¯Å¯Æ¯Ç¯È¯É¯Ê¯Ë¯Ì¯Í¯Î¯Ï¯Ð¯Ñ¯Ò¯Ó¯Ô¯Õ¯Ö¯×¯Ø¯Ù¯Ú¯Û¯Ü¯Ý¯Þ¯ß¯à¯á¯â¯ã¯ä¯å¯æ¯ç¯è¯é¯ê¯ë¯ì¯í¯î¯ï¯ð¯ñ¯ò¯ó¯ô¯õ¯ö¯÷¯ø¯ù¯ú¯û¯ü¯ý¯þ°¡°¢°£°¤°¥°¦°§°¨°©°ª°«°¬°­°®°¯°°°±°²°³°´°µ°¶°·°¸°¹°º°»°¼°½°¾°¿°À°Á°Â°Ã°Ä°Å°Æ°Ç°È°É°Ê°Ë°Ì°Í°Î°Ï°Ð°Ñ°Ò°Ó°Ô°Õ°Ö°×°Ø°Ù°Ú°Û°Ü°Ý°Þ°ß°à°á°â°ã°ä°å°æ°ç°è°é°ê°ë°ì°í°î°ï°ð°ñ°ò°ó°ô°õ°ö°÷°ø°ù°ú°û°ü°ý°þ±¡±¢±£±¤±¥±¦±§±¨±©±ª±«±¬±­±®±¯±°±±±²±³±´±µ±¶±·±¸±¹±º±»±¼±½±¾±¿±À±Á±Â±Ã±Ä±Å±Æ±Ç±È±É±Ê±Ë±Ì±Í±Î±Ï±Ð±Ñ±Ò±Ó±Ô±Õ±Ö±×±Ø±Ù±Ú±Û±Ü±Ý±Þ±ß±à±á±â±ã±ä±å±æ±ç±è±é±ê±ë±ì±í±î±ï±ð±ñ±ò±ó±ô±õ±ö±÷±ø±ù±ú±û±ü±ý±þ²¡²¢²£²¤²¥²¦²§²¨²©²ª²«²¬²­²®²¯²°²±²²²³²´²µ²¶²·²¸²¹²º²»²¼²½²¾²¿²À²Á²Â²Ã²Ä²Å²Æ²Ç²È²É²Ê²Ë²Ì²Í²Î²Ï²Ð²Ñ²Ò²Ó²Ô²Õ²Ö²×²Ø²Ù²Ú²Û²Ü²Ý²Þ²ß²à²á²â²ã²ä²å²æ²ç²è²é²ê²ë²ì²í²î²ï²ð²ñ²ò²ó²ô²õ²ö²÷²ø²ù²ú²û²ü²ý²þ³¡³¢³£³¤³¥³¦³§³¨³©³ª³«³¬³­³®³¯³°³±³²³³³´³µ³¶³·³¸³¹³º³»³¼³½³¾³¿³À³Á³Â³Ã³Ä³Å³Æ³Ç³È³É³Ê³Ë³Ì³Í³Î³Ï³Ð³Ñ³Ò³Ó³Ô³Õ³Ö³×³Ø³Ù³Ú³Û³Ü³Ý³Þ³ß³à³á³â³ã³ä³å³æ³ç³è³é³ê³ë³ì³í³î³ï³ð³ñ³ò³ó³ô³õ³ö³÷³ø³ù³ú³û³ü³ý³þ´¡´¢´£´¤´¥´¦´§´¨´©´ª´«´¬´­´®´¯´°´±´²´³´´´µ´¶´·´¸´¹´º´»´¼´½´¾´¿´À´Á´Â´Ã´Ä´Å´Æ´Ç´È´É´Ê´Ë´Ì´Í´Î´Ï´Ð´Ñ´Ò´Ó´Ô´Õ´Ö´×´Ø´Ù´Ú´Û´Ü´Ý´Þ´ß´à´á´â´ã´ä´å´æ´ç´è´é´ê´ë´ì´í´î´ï´ð´ñ´ò´ó´ô´õ´ö´÷´ø´ù´ú´û´ü´ý´þµ¡µ¢µ£µ¤µ¥µ¦µ§µ¨µ©µªµ«µ¬µ­µ®µ¯µ°µ±µ²µ³µ´µµµ¶µ·µ¸µ¹µºµ»µ¼µ½µ¾µ¿µÀµÁµÂµÃµÄµÅµÆµÇµÈµÉµÊµËµÌµÍµÎµÏµÐµÑµÒµÓµÔµÕµÖµ×µØµÙµÚµÛµÜµÝµÞµßµàµáµâµãµäµåµæµçµèµéµêµëµìµíµîµïµðµñµòµóµôµõµöµ÷µøµùµúµûµüµýµþ¶¡¶¢¶£¶¤¶¥¶¦¶§¶¨¶©¶ª¶«¶¬¶­¶®¶¯¶°¶±¶²¶³¶´¶µ¶¶¶·¶¸¶¹¶º¶»¶¼¶½¶¾¶¿¶À¶Á¶Â¶Ã¶Ä¶Å¶Æ¶Ç¶È¶É¶Ê¶Ë¶Ì¶Í¶Î¶Ï¶Ð¶Ñ¶Ò¶Ó¶Ô¶Õ¶Ö¶×¶Ø¶Ù¶Ú¶Û¶Ü¶Ý¶Þ¶ß¶à¶á¶â¶ã¶ä¶å¶æ¶ç¶è¶é¶ê¶ë¶ì¶í¶î¶ï¶ð¶ñ¶ò¶ó¶ô¶õ¶ö¶÷¶ø¶ù¶ú¶û¶ü¶ý¶þ·¡·¢·£·¤·¥·¦·§·¨·©·ª·«·¬·­·®·¯·°·±·²·³·´·µ·¶···¸·¹·º·»·¼·½·¾·¿·À·Á·Â·Ã·Ä·Å·Æ·Ç·È·É·Ê·Ë·Ì·Í·Î·Ï·Ð·Ñ·Ò·Ó·Ô·Õ·Ö·×·Ø·Ù·Ú·Û·Ü·Ý·Þ·ß·à·á·â·ã·ä·å·æ·ç·è·é·ê·ë·ì·í·î·ï·ð·ñ·ò·ó·ô·õ·ö·÷·ø·ù·ú·û·ü·ý·þ¸¡¸¢¸£¸¤¸¥¸¦¸§¸¨¸©¸ª¸«¸¬¸­¸®¸¯¸°¸±¸²¸³¸´¸µ¸¶¸·¸¸¸¹¸º¸»¸¼¸½¸¾¸¿¸À¸Á¸Â¸Ã¸Ä¸Å¸Æ¸Ç¸È¸É¸Ê¸Ë¸Ì¸Í¸Î¸Ï¸Ð¸Ñ¸Ò¸Ó¸Ô¸Õ¸Ö¸×¸Ø¸Ù¸Ú¸Û¸Ü¸Ý¸Þ¸ß¸à¸á¸â¸ã¸ä¸å¸æ¸ç¸è¸é¸ê¸ë¸ì¸í¸î¸ï¸ð¸ñ¸ò¸ó¸ô¸õ¸ö¸÷¸ø¸ù¸ú¸û¸ü¸ý¸þ¹¡¹¢¹£¹¤¹¥¹¦¹§¹¨¹©¹ª¹«¹¬¹­¹®¹¯¹°¹±¹²¹³¹´¹µ¹¶¹·¹¸¹¹¹º¹»¹¼¹½¹¾¹¿¹À¹Á¹Â¹Ã¹Ä¹Å¹Æ¹Ç¹È¹É¹Ê¹Ë¹Ì¹Í¹Î¹Ï¹Ð¹Ñ¹Ò¹Ó¹Ô¹Õ¹Ö¹×¹Ø¹Ù¹Ú¹Û¹Ü¹Ý¹Þ¹ß¹à¹á¹â¹ã¹ä¹å¹æ¹ç¹è¹é¹ê¹ë¹ì¹í¹î¹ï¹ð¹ñ¹ò¹ó¹ô¹õ¹ö¹÷¹ø¹ù¹ú¹û¹ü¹ý¹þº¡º¢º£º¤º¥º¦º§º¨º©ºªº«º¬º­º®º¯º°º±º²º³º´ºµº¶º·º¸º¹ººº»º¼º½º¾º¿ºÀºÁºÂºÃºÄºÅºÆºÇºÈºÉºÊºËºÌºÍºÎºÏºÐºÑºÒºÓºÔºÕºÖº×ºØºÙºÚºÛºÜºÝºÞºßºàºáºâºãºäºåºæºçºèºéºêºëºìºíºîºïºðºñºòºóºôºõºöº÷ºøºùºúºûºüºýºþ»¡»¢»£»¤»¥»¦»§»¨»©»ª»«»¬»­»®»¯»°»±»²»³»´»µ»¶»·»¸»¹»º»»»¼»½»¾»¿»À»Á»Â»Ã»Ä»Å»Æ»Ç»È»É»Ê»Ë»Ì»Í»Î»Ï»Ð»Ñ»Ò»Ó»Ô»Õ»Ö»×»Ø»Ù»Ú»Û»Ü»Ý»Þ»ß»à»á»â»ã»ä»å»æ»ç»è»é»ê»ë»ì»í»î»ï»ð»ñ»ò»ó»ô»õ»ö»÷»ø»ù»ú»û»ü»ý»þ¼¡¼¢¼£¼¤¼¥¼¦¼§¼¨¼©¼ª¼«¼¬¼­¼®¼¯¼°¼±¼²¼³¼´¼µ¼¶¼·¼¸¼¹¼º¼»¼¼¼½¼¾¼¿¼À¼Á¼Â¼Ã¼Ä¼Å¼Æ¼Ç¼È¼É¼Ê¼Ë¼Ì¼Í¼Î¼Ï¼Ð¼Ñ¼Ò¼Ó¼Ô¼Õ¼Ö¼×¼Ø¼Ù¼Ú¼Û¼Ü¼Ý¼Þ¼ß¼à¼á¼â¼ã¼ä¼å¼æ¼ç¼è¼é¼ê¼ë¼ì¼í¼î¼ï¼ð¼ñ¼ò¼ó¼ô¼õ¼ö¼÷¼ø¼ù¼ú¼û¼ü¼ý¼þ½¡½¢½£½¤½¥½¦½§½¨½©½ª½«½¬½­½®½¯½°½±½²½³½´½µ½¶½·½¸½¹½º½»½¼½½½¾½¿½À½Á½Â½Ã½Ä½Å½Æ½Ç½È½É½Ê½Ë½Ì½Í½Î½Ï½Ð½Ñ½Ò½Ó½Ô½Õ½Ö½×½Ø½Ù½Ú½Û½Ü½Ý½Þ½ß½à½á½â½ã½ä½å½æ½ç½è½é½ê½ë½ì½í½î½ï½ð½ñ½ò½ó½ô½õ½ö½÷½ø½ù½ú½û½ü½ý½þ¾¡¾¢¾£¾¤¾¥¾¦¾§¾¨¾©¾ª¾«¾¬¾­¾®¾¯¾°¾±¾²¾³¾´¾µ¾¶¾·¾¸¾¹¾º¾»¾¼¾½¾¾¾¿¾À¾Á¾Â¾Ã¾Ä¾Å¾Æ¾Ç¾È¾É¾Ê¾Ë¾Ì¾Í¾Î¾Ï¾Ð¾Ñ¾Ò¾Ó¾Ô¾Õ¾Ö¾×¾Ø¾Ù¾Ú¾Û¾Ü¾Ý¾Þ¾ß¾à¾á¾â¾ã¾ä¾å¾æ¾ç¾è¾é¾ê¾ë¾ì¾í¾î¾ï¾ð¾ñ¾ò¾ó¾ô¾õ¾ö¾÷¾ø¾ù¾ú¾û¾ü¾ý¾þ¿¡¿¢¿£¿¤¿¥¿¦¿§¿¨¿©¿ª¿«¿¬¿­¿®¿¯¿°¿±¿²¿³¿´¿µ¿¶¿·¿¸¿¹¿º¿»¿¼¿½¿¾¿¿¿À¿Á¿Â¿Ã¿Ä¿Å¿Æ¿Ç¿È¿É¿Ê¿Ë¿Ì¿Í¿Î¿Ï¿Ð¿Ñ¿Ò¿Ó¿Ô¿Õ¿Ö¿×¿Ø¿Ù¿Ú¿Û¿Ü¿Ý¿Þ¿ß¿à¿á¿â¿ã¿ä¿å¿æ¿ç¿è¿é¿ê¿ë¿ì¿í¿î¿ï¿ð¿ñ¿ò¿ó¿ô¿õ¿ö¿÷¿ø¿ù¿ú¿û¿ü¿ý¿þÀ¡À¢À£À¤À¥À¦À§À¨À©ÀªÀ«À¬À­À®À¯À°À±À²À³À´ÀµÀ¶À·À¸À¹ÀºÀ»À¼À½À¾À¿ÀÀÀÁÀÂÀÃÀÄÀÅÀÆÀÇÀÈÀÉÀÊÀËÀÌÀÍÀÎÀÏÀÐÀÑÀÒÀÓÀÔÀÕÀÖÀ×ÀØÀÙÀÚÀÛÀÜÀÝÀÞÀßÀàÀáÀâÀãÀäÀåÀæÀçÀèÀéÀêÀëÀìÀíÀîÀïÀðÀñÀòÀóÀôÀõÀöÀ÷ÀøÀùÀúÀûÀüÀýÀþÁ¡Á¢Á£Á¤Á¥Á¦Á§Á¨Á©ÁªÁ«Á¬Á­Á®Á¯Á°Á±Á²Á³Á´ÁµÁ¶Á·Á¸Á¹ÁºÁ»Á¼Á½Á¾Á¿ÁÀÁÁÁÂÁÃÁÄÁÅÁÆÁÇÁÈÁÉÁÊÁËÁÌÁÍÁÎÁÏÁÐÁÑÁÒÁÓÁÔÁÕÁÖÁ×ÁØÁÙÁÚÁÛÁÜÁÝÁÞÁßÁàÁáÁâÁãÁäÁåÁæÁçÁèÁéÁêÁëÁìÁíÁîÁïÁðÁñÁòÁóÁôÁõÁöÁ÷ÁøÁùÁúÁûÁüÁýÁþÂ¡Â¢Â£Â¤Â¥Â¦Â§Â¨Â©ÂªÂ«Â¬Â­Â®Â¯Â°Â±Â²Â³Â´ÂµÂ¶Â·Â¸Â¹ÂºÂ»Â¼Â½Â¾Â¿ÂÀÂÁÂÂÂÃÂÄÂÅÂÆÂÇÂÈÂÉÂÊÂËÂÌÂÍÂÎÂÏÂÐÂÑÂÒÂÓÂÔÂÕÂÖÂ×ÂØÂÙÂÚÂÛÂÜÂÝÂÞÂßÂàÂáÂâÂãÂäÂåÂæÂçÂèÂéÂêÂëÂìÂíÂîÂïÂðÂñÂòÂóÂôÂõÂöÂ÷ÂøÂùÂúÂûÂüÂýÂþÃ¡Ã¢Ã£Ã¤Ã¥Ã¦Ã§Ã¨Ã©ÃªÃ«Ã¬Ã­Ã®Ã¯Ã°Ã±Ã²Ã³Ã´ÃµÃ¶Ã·Ã¸Ã¹ÃºÃ»Ã¼Ã½Ã¾Ã¿ÃÀÃÁÃÂÃÃÃÄÃÅÃÆÃÇÃÈÃÉÃÊÃËÃÌÃÍÃÎÃÏÃÐÃÑÃÒÃÓÃÔÃÕÃÖÃ×ÃØÃÙÃÚÃÛÃÜÃÝÃÞÃßÃàÃáÃâÃãÃäÃåÃæÃçÃèÃéÃêÃëÃìÃíÃîÃïÃðÃñÃòÃóÃôÃõÃöÃ÷ÃøÃùÃúÃûÃüÃýÃþÄ¡Ä¢Ä£Ä¤Ä¥Ä¦Ä§Ä¨Ä©ÄªÄ«Ä¬Ä­Ä®Ä¯Ä°Ä±Ä²Ä³Ä´ÄµÄ¶Ä·Ä¸Ä¹ÄºÄ»Ä¼Ä½Ä¾Ä¿ÄÀÄÁÄÂÄÃÄÄÄÅÄÆÄÇÄÈÄÉÄÊÄËÄÌÄÍÄÎÄÏÄÐÄÑÄÒÄÓÄÔÄÕÄÖÄ×ÄØÄÙÄÚÄÛÄÜÄÝÄÞÄßÄàÄáÄâÄãÄäÄåÄæÄçÄèÄéÄêÄëÄìÄíÄîÄïÄðÄñÄòÄóÄôÄõÄöÄ÷ÄøÄùÄúÄûÄüÄýÄþÅ¡Å¢Å£Å¤Å¥Å¦Å§Å¨Å©ÅªÅ«Å¬Å­Å®Å¯Å°Å±Å²Å³Å´ÅµÅ¶Å·Å¸Å¹ÅºÅ»Å¼Å½Å¾Å¿ÅÀÅÁÅÂÅÃÅÄÅÅÅÆÅÇÅÈÅÉÅÊÅËÅÌÅÍÅÎÅÏÅÐÅÑÅÒÅÓÅÔÅÕÅÖÅ×ÅØÅÙÅÚÅÛÅÜÅÝÅÞÅßÅàÅáÅâÅãÅäÅåÅæÅçÅèÅéÅêÅëÅìÅíÅîÅïÅðÅñÅòÅóÅôÅõÅöÅ÷ÅøÅùÅúÅûÅüÅýÅþÆ¡Æ¢Æ£Æ¤Æ¥Æ¦Æ§Æ¨Æ©ÆªÆ«Æ¬Æ­Æ®Æ¯Æ°Æ±Æ²Æ³Æ´ÆµÆ¶Æ·Æ¸Æ¹ÆºÆ»Æ¼Æ½Æ¾Æ¿ÆÀÆÁÆÂÆÃÆÄÆÅÆÆÆÇÆÈÆÉÆÊÆËÆÌÆÍÆÎÆÏÆÐÆÑÆÒÆÓÆÔÆÕÆÖÆ×ÆØÆÙÆÚÆÛÆÜÆÝÆÞÆßÆàÆáÆâÆãÆäÆåÆæÆçÆèÆéÆêÆëÆìÆíÆîÆïÆðÆñÆòÆóÆôÆõÆöÆ÷ÆøÆùÆúÆûÆüÆýÆþÇ¡Ç¢Ç£Ç¤Ç¥Ç¦Ç§Ç¨Ç©ÇªÇ«Ç¬Ç­Ç®Ç¯Ç°Ç±Ç²Ç³Ç´ÇµÇ¶Ç·Ç¸Ç¹ÇºÇ»Ç¼Ç½Ç¾Ç¿ÇÀÇÁÇÂÇÃÇÄÇÅÇÆÇÇÇÈÇÉÇÊÇËÇÌÇÍÇÎÇÏÇÐÇÑÇÒÇÓÇÔÇÕÇÖÇ×ÇØÇÙÇÚÇÛÇÜÇÝÇÞÇßÇàÇáÇâÇãÇäÇåÇæÇçÇèÇéÇêÇëÇìÇíÇîÇïÇðÇñÇòÇóÇôÇõÇöÇ÷ÇøÇùÇúÇûÇüÇýÇþÈ¡È¢È£È¤È¥È¦È§È¨È©ÈªÈ«È¬È­È®È¯È°È±È²È³È´ÈµÈ¶È·È¸È¹ÈºÈ»È¼È½È¾È¿ÈÀÈÁÈÂÈÃÈÄÈÅÈÆÈÇÈÈÈÉÈÊÈËÈÌÈÍÈÎÈÏÈÐÈÑÈÒÈÓÈÔÈÕÈÖÈ×ÈØÈÙÈÚÈÛÈÜÈÝÈÞÈßÈàÈáÈâÈãÈäÈåÈæÈçÈèÈéÈêÈëÈìÈíÈîÈïÈðÈñÈòÈóÈôÈõÈöÈ÷ÈøÈùÈúÈûÈüÈýÈþÉ¡É¢É£É¤É¥É¦É§É¨É©ÉªÉ«É¬É­É®É¯É°É±É²É³É´ÉµÉ¶É·É¸É¹ÉºÉ»É¼É½É¾É¿ÉÀÉÁÉÂÉÃÉÄÉÅÉÆÉÇÉÈÉÉÉÊÉËÉÌÉÍÉÎÉÏÉÐÉÑÉÒÉÓÉÔÉÕÉÖÉ×ÉØÉÙÉÚÉÛÉÜÉÝÉÞÉßÉàÉáÉâÉãÉäÉåÉæÉçÉèÉéÉêÉëÉìÉíÉîÉïÉðÉñÉòÉóÉôÉõÉöÉ÷ÉøÉùÉúÉûÉüÉýÉþÊ¡Ê¢Ê£Ê¤Ê¥Ê¦Ê§Ê¨Ê©ÊªÊ«Ê¬Ê­Ê®Ê¯Ê°Ê±Ê²Ê³Ê´ÊµÊ¶Ê·Ê¸Ê¹ÊºÊ»Ê¼Ê½Ê¾Ê¿ÊÀÊÁÊÂÊÃÊÄÊÅÊÆÊÇÊÈÊÉÊÊÊËÊÌÊÍÊÎÊÏÊÐÊÑÊÒÊÓÊÔÊÕÊÖÊ×ÊØÊÙÊÚÊÛÊÜÊÝÊÞÊßÊàÊáÊâÊãÊäÊåÊæÊçÊèÊéÊêÊëÊìÊíÊîÊïÊðÊñÊòÊóÊôÊõÊöÊ÷ÊøÊùÊúÊûÊüÊýÊþË¡Ë¢Ë£Ë¤Ë¥Ë¦Ë§Ë¨Ë©ËªË«Ë¬Ë­Ë®Ë¯Ë°Ë±Ë²Ë³Ë´ËµË¶Ë·Ë¸Ë¹ËºË»Ë¼Ë½Ë¾Ë¿ËÀËÁËÂËÃËÄËÅËÆËÇËÈËÉËÊËËËÌËÍËÎËÏËÐËÑËÒËÓËÔËÕËÖË×ËØËÙËÚËÛËÜËÝËÞËßËàËáËâËãËäËåËæËçËèËéËêËëËìËíËîËïËðËñËòËóËôËõËöË÷ËøËùËúËûËüËýËþÌ¡Ì¢Ì£Ì¤Ì¥Ì¦Ì§Ì¨Ì©ÌªÌ«Ì¬Ì­Ì®Ì¯Ì°Ì±Ì²Ì³Ì´ÌµÌ¶Ì·Ì¸Ì¹ÌºÌ»Ì¼Ì½Ì¾Ì¿ÌÀÌÁÌÂÌÃÌÄÌÅÌÆÌÇÌÈÌÉÌÊÌËÌÌÌÍÌÎÌÏÌÐÌÑÌÒÌÓÌÔÌÕÌÖÌ×ÌØÌÙÌÚÌÛÌÜÌÝÌÞÌßÌàÌáÌâÌãÌäÌåÌæÌçÌèÌéÌêÌëÌìÌíÌîÌïÌðÌñÌòÌóÌôÌõÌöÌ÷ÌøÌùÌúÌûÌüÌýÌþÍ¡Í¢Í£Í¤Í¥Í¦Í§Í¨Í©ÍªÍ«Í¬Í­Í®Í¯Í°Í±Í²Í³Í´ÍµÍ¶Í·Í¸Í¹ÍºÍ»Í¼Í½Í¾Í¿ÍÀÍÁÍÂÍÃÍÄÍÅÍÆÍÇÍÈÍÉÍÊÍËÍÌÍÍÍÎÍÏÍÐÍÑÍÒÍÓÍÔÍÕÍÖÍ×ÍØÍÙÍÚÍÛÍÜÍÝÍÞÍßÍàÍáÍâÍãÍäÍåÍæÍçÍèÍéÍêÍëÍìÍíÍîÍïÍðÍñÍòÍóÍôÍõÍöÍ÷ÍøÍùÍúÍûÍüÍýÍþÎ¡Î¢Î£Î¤Î¥Î¦Î§Î¨Î©ÎªÎ«Î¬Î­Î®Î¯Î°Î±Î²Î³Î´ÎµÎ¶Î·Î¸Î¹ÎºÎ»Î¼Î½Î¾Î¿ÎÀÎÁÎÂÎÃÎÄÎÅÎÆÎÇÎÈÎÉÎÊÎËÎÌÎÍÎÎÎÏÎÐÎÑÎÒÎÓÎÔÎÕÎÖÎ×ÎØÎÙÎÚÎÛÎÜÎÝÎÞÎßÎàÎáÎâÎãÎäÎåÎæÎçÎèÎéÎêÎëÎìÎíÎîÎïÎðÎñÎòÎóÎôÎõÎöÎ÷ÎøÎùÎúÎûÎüÎýÎþÏ¡Ï¢Ï£Ï¤Ï¥Ï¦Ï§Ï¨Ï©ÏªÏ«Ï¬Ï­Ï®Ï¯Ï°Ï±Ï²Ï³Ï´ÏµÏ¶Ï·Ï¸Ï¹ÏºÏ»Ï¼Ï½Ï¾Ï¿ÏÀÏÁÏÂÏÃÏÄÏÅÏÆÏÇÏÈÏÉÏÊÏËÏÌÏÍÏÎÏÏÏÐÏÑÏÒÏÓÏÔÏÕÏÖÏ×ÏØÏÙÏÚÏÛÏÜÏÝÏÞÏßÏàÏáÏâÏãÏäÏåÏæÏçÏèÏéÏêÏëÏìÏíÏîÏïÏðÏñÏòÏóÏôÏõÏöÏ÷ÏøÏùÏúÏûÏüÏýÏþÐ¡Ð¢Ð£Ð¤Ð¥Ð¦Ð§Ð¨Ð©ÐªÐ«Ð¬Ð­Ð®Ð¯Ð°Ð±Ð²Ð³Ð´ÐµÐ¶Ð·Ð¸Ð¹ÐºÐ»Ð¼Ð½Ð¾Ð¿ÐÀÐÁÐÂÐÃÐÄÐÅÐÆÐÇÐÈÐÉÐÊÐËÐÌÐÍÐÎÐÏÐÐÐÑÐÒÐÓÐÔÐÕÐÖÐ×ÐØÐÙÐÚÐÛÐÜÐÝÐÞÐßÐàÐáÐâÐãÐäÐåÐæÐçÐèÐéÐêÐëÐìÐíÐîÐïÐðÐñÐòÐóÐôÐõÐöÐ÷ÐøÐùÐúÐûÐüÐýÐþÑ¡Ñ¢Ñ£Ñ¤Ñ¥Ñ¦Ñ§Ñ¨Ñ©ÑªÑ«Ñ¬Ñ­Ñ®Ñ¯Ñ°Ñ±Ñ²Ñ³Ñ´ÑµÑ¶Ñ·Ñ¸Ñ¹ÑºÑ»Ñ¼Ñ½Ñ¾Ñ¿ÑÀÑÁÑÂÑÃÑÄÑÅÑÆÑÇÑÈÑÉÑÊÑËÑÌÑÍÑÎÑÏÑÐÑÑÑÒÑÓÑÔÑÕÑÖÑ×ÑØÑÙÑÚÑÛÑÜÑÝÑÞÑßÑàÑáÑâÑãÑäÑåÑæÑçÑèÑéÑêÑëÑìÑíÑîÑïÑðÑñÑòÑóÑôÑõÑöÑ÷ÑøÑùÑúÑûÑüÑýÑþÒ¡Ò¢Ò£Ò¤Ò¥Ò¦Ò§Ò¨Ò©ÒªÒ«Ò¬Ò­Ò®Ò¯Ò°Ò±Ò²Ò³Ò´ÒµÒ¶Ò·Ò¸Ò¹ÒºÒ»Ò¼Ò½Ò¾Ò¿ÒÀÒÁÒÂÒÃÒÄÒÅÒÆÒÇÒÈÒÉÒÊÒËÒÌÒÍÒÎÒÏÒÐÒÑÒÒÒÓÒÔÒÕÒÖÒ×ÒØÒÙÒÚÒÛÒÜÒÝÒÞÒßÒàÒáÒâÒãÒäÒåÒæÒçÒèÒéÒêÒëÒìÒíÒîÒïÒðÒñÒòÒóÒôÒõÒöÒ÷ÒøÒùÒúÒûÒüÒýÒþÓ¡Ó¢Ó£Ó¤Ó¥Ó¦Ó§Ó¨Ó©ÓªÓ«Ó¬Ó­Ó®Ó¯Ó°Ó±Ó²Ó³Ó´ÓµÓ¶Ó·Ó¸Ó¹ÓºÓ»Ó¼Ó½Ó¾Ó¿ÓÀÓÁÓÂÓÃÓÄÓÅÓÆÓÇÓÈÓÉÓÊÓËÓÌÓÍÓÎÓÏÓÐÓÑÓÒÓÓÓÔÓÕÓÖÓ×ÓØÓÙÓÚÓÛÓÜÓÝÓÞÓßÓàÓáÓâÓãÓäÓåÓæÓçÓèÓéÓêÓëÓìÓíÓîÓïÓðÓñÓòÓóÓôÓõÓöÓ÷ÓøÓùÓúÓûÓüÓýÓþÔ¡Ô¢Ô£Ô¤Ô¥Ô¦Ô§Ô¨Ô©ÔªÔ«Ô¬Ô­Ô®Ô¯Ô°Ô±Ô²Ô³Ô´ÔµÔ¶Ô·Ô¸Ô¹ÔºÔ»Ô¼Ô½Ô¾Ô¿ÔÀÔÁÔÂÔÃÔÄÔÅÔÆÔÇÔÈÔÉÔÊÔËÔÌÔÍÔÎÔÏÔÐÔÑÔÒÔÓÔÔÔÕÔÖÔ×ÔØÔÙÔÚÔÛÔÜÔÝÔÞÔßÔàÔáÔâÔãÔäÔåÔæÔçÔèÔéÔêÔëÔìÔíÔîÔïÔðÔñÔòÔóÔôÔõÔöÔ÷ÔøÔùÔúÔûÔüÔýÔþÕ¡Õ¢Õ£Õ¤Õ¥Õ¦Õ§Õ¨Õ©ÕªÕ«Õ¬Õ­Õ®Õ¯Õ°Õ±Õ²Õ³Õ´ÕµÕ¶Õ·Õ¸Õ¹ÕºÕ»Õ¼Õ½Õ¾Õ¿ÕÀÕÁÕÂÕÃÕÄÕÅÕÆÕÇÕÈÕÉÕÊÕËÕÌÕÍÕÎÕÏÕÐÕÑÕÒÕÓÕÔÕÕÕÖÕ×ÕØÕÙÕÚÕÛÕÜÕÝÕÞÕßÕàÕáÕâÕãÕäÕåÕæÕçÕèÕéÕêÕëÕìÕíÕîÕïÕðÕñÕòÕóÕôÕõÕöÕ÷ÕøÕùÕúÕûÕüÕýÕþÖ¡Ö¢Ö£Ö¤Ö¥Ö¦Ö§Ö¨Ö©ÖªÖ«Ö¬Ö­Ö®Ö¯Ö°Ö±Ö²Ö³Ö´ÖµÖ¶Ö·Ö¸Ö¹ÖºÖ»Ö¼Ö½Ö¾Ö¿ÖÀÖÁÖÂÖÃÖÄÖÅÖÆÖÇÖÈÖÉÖÊÖËÖÌÖÍÖÎÖÏÖÐÖÑÖÒÖÓÖÔÖÕÖÖÖ×ÖØÖÙÖÚÖÛÖÜÖÝÖÞÖßÖàÖáÖâÖãÖäÖåÖæÖçÖèÖéÖêÖëÖìÖíÖîÖïÖðÖñÖòÖóÖôÖõÖöÖ÷ÖøÖùÖúÖûÖüÖýÖþ×¡×¢×£×¤×¥×¦×§×¨×©×ª×«×¬×­×®×¯×°×±×²×³×´×µ×¶×·×¸×¹×º×»×¼×½×¾×¿×À×Á×Â×Ã×Ä×Å×Æ×Ç×È×É×Ê×Ë×Ì×Í×Î×Ï×Ð×Ñ×Ò×Ó×Ô×Õ×Ö×××Ø×Ù×Ú×Û×Ü×Ý×Þ×ß×à×á×â×ã×ä×å×æ×ç×è×é×ê×ë×ì×í×î×ï×ð×ñ×ò×ó×ô×õ×ö×÷×ø×ù×ú×û×ü×ý×þØ¡Ø¢Ø£Ø¤Ø¥Ø¦Ø§Ø¨Ø©ØªØ«Ø¬Ø­Ø®Ø¯Ø°Ø±Ø²Ø³Ø´ØµØ¶Ø·Ø¸Ø¹ØºØ»Ø¼Ø½Ø¾Ø¿ØÀØÁØÂØÃØÄØÅØÆØÇØÈØÉØÊØËØÌØÍØÎØÏØÐØÑØÒØÓØÔØÕØÖØ×ØØØÙØÚØÛØÜØÝØÞØßØàØáØâØãØäØåØæØçØèØéØêØëØìØíØîØïØðØñØòØóØôØõØöØ÷ØøØùØúØûØüØýØþÙ¡Ù¢Ù£Ù¤Ù¥Ù¦Ù§Ù¨Ù©ÙªÙ«Ù¬Ù­Ù®Ù¯Ù°Ù±Ù²Ù³Ù´ÙµÙ¶Ù·Ù¸Ù¹ÙºÙ»Ù¼Ù½Ù¾Ù¿ÙÀÙÁÙÂÙÃÙÄÙÅÙÆÙÇÙÈÙÉÙÊÙËÙÌÙÍÙÎÙÏÙÐÙÑÙÒÙÓÙÔÙÕÙÖÙ×ÙØÙÙÙÚÙÛÙÜÙÝÙÞÙßÙàÙáÙâÙãÙäÙåÙæÙçÙèÙéÙêÙëÙìÙíÙîÙïÙðÙñÙòÙóÙôÙõÙöÙ÷ÙøÙùÙúÙûÙüÙýÙþÚ¡Ú¢Ú£Ú¤Ú¥Ú¦Ú§Ú¨Ú©ÚªÚ«Ú¬Ú­Ú®Ú¯Ú°Ú±Ú²Ú³Ú´ÚµÚ¶Ú·Ú¸Ú¹ÚºÚ»Ú¼Ú½Ú¾Ú¿ÚÀÚÁÚÂÚÃÚÄÚÅÚÆÚÇÚÈÚÉÚÊÚËÚÌÚÍÚÎÚÏÚÐÚÑÚÒÚÓÚÔÚÕÚÖÚ×ÚØÚÙÚÚÚÛÚÜÚÝÚÞÚßÚàÚáÚâÚãÚäÚåÚæÚçÚèÚéÚêÚëÚìÚíÚîÚïÚðÚñÚòÚóÚôÚõÚöÚ÷ÚøÚùÚúÚûÚüÚýÚþÛ¡Û¢Û£Û¤Û¥Û¦Û§Û¨Û©ÛªÛ«Û¬Û­Û®Û¯Û°Û±Û²Û³Û´ÛµÛ¶Û·Û¸Û¹ÛºÛ»Û¼Û½Û¾Û¿ÛÀÛÁÛÂÛÃÛÄÛÅÛÆÛÇÛÈÛÉÛÊÛËÛÌÛÍÛÎÛÏÛÐÛÑÛÒÛÓÛÔÛÕÛÖÛ×ÛØÛÙÛÚÛÛÛÜÛÝÛÞÛßÛàÛáÛâÛãÛäÛåÛæÛçÛèÛéÛêÛëÛìÛíÛîÛïÛðÛñÛòÛóÛôÛõÛöÛ÷ÛøÛùÛúÛûÛüÛýÛþÜ¡Ü¢Ü£Ü¤Ü¥Ü¦Ü§Ü¨Ü©ÜªÜ«Ü¬Ü­Ü®Ü¯Ü°Ü±Ü²Ü³Ü´ÜµÜ¶Ü·Ü¸Ü¹ÜºÜ»Ü¼Ü½Ü¾Ü¿ÜÀÜÁÜÂÜÃÜÄÜÅÜÆÜÇÜÈÜÉÜÊÜËÜÌÜÍÜÎÜÏÜÐÜÑÜÒÜÓÜÔÜÕÜÖÜ×ÜØÜÙÜÚÜÛÜÜÜÝÜÞÜßÜàÜáÜâÜãÜäÜåÜæÜçÜèÜéÜêÜëÜìÜíÜîÜïÜðÜñÜòÜóÜôÜõÜöÜ÷ÜøÜùÜúÜûÜüÜýÜþÝ¡Ý¢Ý£Ý¤Ý¥Ý¦Ý§Ý¨Ý©ÝªÝ«Ý¬Ý­Ý®Ý¯Ý°Ý±Ý²Ý³Ý´ÝµÝ¶Ý·Ý¸Ý¹ÝºÝ»Ý¼Ý½Ý¾Ý¿ÝÀÝÁÝÂÝÃÝÄÝÅÝÆÝÇÝÈÝÉÝÊÝËÝÌÝÍÝÎÝÏÝÐÝÑÝÒÝÓÝÔÝÕÝÖÝ×ÝØÝÙÝÚÝÛÝÜÝÝÝÞÝßÝàÝáÝâÝãÝäÝåÝæÝçÝèÝéÝêÝëÝìÝíÝîÝïÝðÝñÝòÝóÝôÝõÝöÝ÷ÝøÝùÝúÝûÝüÝýÝþÞ¡Þ¢Þ£Þ¤Þ¥Þ¦Þ§Þ¨Þ©ÞªÞ«Þ¬Þ­Þ®Þ¯Þ°Þ±Þ²Þ³Þ´ÞµÞ¶Þ·Þ¸Þ¹ÞºÞ»Þ¼Þ½Þ¾Þ¿ÞÀÞÁÞÂÞÃÞÄÞÅÞÆÞÇÞÈÞÉÞÊÞËÞÌÞÍÞÎÞÏÞÐÞÑÞÒÞÓÞÔÞÕÞÖÞ×ÞØÞÙÞÚÞÛÞÜÞÝÞÞÞßÞàÞáÞâÞãÞäÞåÞæÞçÞèÞéÞêÞëÞìÞíÞîÞïÞðÞñÞòÞóÞôÞõÞöÞ÷ÞøÞùÞúÞûÞüÞýÞþß¡ß¢ß£ß¤ß¥ß¦ß§ß¨ß©ßªß«ß¬ß­ß®ß¯ß°ß±ß²ß³ß´ßµß¶ß·ß¸ß¹ßºß»ß¼ß½ß¾ß¿ßÀßÁßÂßÃßÄßÅßÆßÇßÈßÉßÊßËßÌßÍßÎßÏßÐßÑßÒßÓßÔßÕßÖß×ßØßÙßÚßÛßÜßÝßÞßßßàßáßâßãßäßåßæßçßèßéßêßëßìßíßîßïßðßñßòßóßôßõßöß÷ßøßùßúßûßüßýßþà¡à¢à£à¤à¥à¦à§à¨à©àªà«à¬à­à®à¯à°à±à²à³à´àµà¶à·à¸à¹àºà»à¼à½à¾à¿àÀàÁàÂàÃàÄàÅàÆàÇàÈàÉàÊàËàÌàÍàÎàÏàÐàÑàÒàÓàÔàÕàÖà×àØàÙàÚàÛàÜàÝàÞàßàààáàâàãàäàåàæàçàèàéàêàëàìàíàîàïàðàñàòàóàôàõàöà÷àøàùàúàûàüàýàþá¡á¢á£á¤á¥á¦á§á¨á©áªá«á¬á­á®á¯á°á±á²á³á´áµá¶á·á¸á¹áºá»á¼á½á¾á¿áÀáÁáÂáÃáÄáÅáÆáÇáÈáÉáÊáËáÌáÍáÎáÏáÐáÑáÒáÓáÔáÕáÖá×áØáÙáÚáÛáÜáÝáÞáßáàáááâáãáäáåáæáçáèáéáêáëáìáíáîáïáðáñáòáóáôáõáöá÷áøáùáúáûáüáýáþâ¡â¢â£â¤â¥â¦â§â¨â©âªâ«â¬â­â®â¯â°â±â²â³â´âµâ¶â·â¸â¹âºâ»â¼â½â¾â¿âÀâÁâÂâÃâÄâÅâÆâÇâÈâÉâÊâËâÌâÍâÎâÏâÐâÑâÒâÓâÔâÕâÖâ×âØâÙâÚâÛâÜâÝâÞâßâàâáâââãâäâåâæâçâèâéâêâëâìâíâîâïâðâñâòâóâôâõâöâ÷âøâùâúâûâüâýâþã¡ã¢ã£ã¤ã¥ã¦ã§ã¨ã©ãªã«ã¬ã­ã®ã¯ã°ã±ã²ã³ã´ãµã¶ã·ã¸ã¹ãºã»ã¼ã½ã¾ã¿ãÀãÁãÂãÃãÄãÅãÆãÇãÈãÉãÊãËãÌãÍãÎãÏãÐãÑãÒãÓãÔãÕãÖã×ãØãÙãÚãÛãÜãÝãÞãßãàãáãâãããäãåãæãçãèãéãêãëãìãíãîãïãðãñãòãóãôãõãöã÷ãøãùãúãûãüãýãþä¡ä¢ä£ä¤ä¥ä¦ä§ä¨ä©äªä«ä¬ä­ä®ä¯ä°ä±ä²ä³ä´äµä¶ä·ä¸ä¹äºä»ä¼ä½ä¾ä¿äÀäÁäÂäÃäÄäÅäÆäÇäÈäÉäÊäËäÌäÍäÎäÏäÐäÑäÒäÓäÔäÕäÖä×äØäÙäÚäÛäÜäÝäÞäßäàäáäâäãäääåäæäçäèäéäêäëäìäíäîäïäðäñäòäóäôäõäöä÷äøäùäúäûäüäýäþå¡å¢å£å¤å¥å¦å§å¨å©åªå«å¬å­å®å¯å°å±å²å³å´åµå¶å·å¸å¹åºå»å¼å½å¾å¿åÀåÁåÂåÃåÄåÅåÆåÇåÈåÉåÊåËåÌåÍåÎåÏåÐåÑåÒåÓåÔåÕåÖå×åØåÙåÚåÛåÜåÝåÞåßåàåáåâåãåäåååæåçåèåéåêåëåìåíåîåïåðåñåòåóåôåõåöå÷åøåùåúåûåüåýåþæ¡æ¢æ£æ¤æ¥æ¦æ§æ¨æ©æªæ«æ¬æ­æ®æ¯æ°æ±æ²æ³æ´æµæ¶æ·æ¸æ¹æºæ»æ¼æ½æ¾æ¿æÀæÁæÂæÃæÄæÅæÆæÇæÈæÉæÊæËæÌæÍæÎæÏæÐæÑæÒæÓæÔæÕæÖæ×æØæÙæÚæÛæÜæÝæÞæßæàæáæâæãæäæåæææçæèæéæêæëæìæíæîæïæðæñæòæóæôæõæöæ÷æøæùæúæûæüæýæþç¡ç¢ç£ç¤ç¥ç¦ç§ç¨ç©çªç«ç¬ç­ç®ç¯ç°ç±ç²ç³ç´çµç¶ç·ç¸ç¹çºç»ç¼ç½ç¾ç¿çÀçÁçÂçÃçÄçÅçÆçÇçÈçÉçÊçËçÌçÍçÎçÏçÐçÑçÒçÓçÔçÕçÖç×çØçÙçÚçÛçÜçÝçÞçßçàçáçâçãçäçåçæçççèçéçêçëçìçíçîçïçðçñçòçóçôçõçöç÷çøçùçúçûçüçýçþè¡è¢è£è¤è¥è¦è§è¨è©èªè«è¬è­è®è¯è°è±è²è³è´èµè¶è·è¸è¹èºè»è¼è½è¾è¿èÀèÁèÂèÃèÄèÅèÆèÇèÈèÉèÊèËèÌèÍèÎèÏèÐèÑèÒèÓèÔèÕèÖè×èØèÙèÚèÛèÜèÝèÞèßèàèáèâèãèäèåèæèçèèèéèêèëèìèíèîèïèðèñèòèóèôèõèöè÷èøèùèúèûèüèýèþé¡é¢é£é¤é¥é¦é§é¨é©éªé«é¬é­é®é¯é°é±é²é³é´éµé¶é·é¸é¹éºé»é¼é½é¾é¿éÀéÁéÂéÃéÄéÅéÆéÇéÈéÉéÊéËéÌéÍéÎéÏéÐéÑéÒéÓéÔéÕéÖé×éØéÙéÚéÛéÜéÝéÞéßéàéáéâéãéäéåéæéçéèéééêéëéìéíéîéïéðéñéòéóéôéõéöé÷éøéùéúéûéüéýéþê¡ê¢ê£ê¤ê¥ê¦ê§ê¨ê©êªê«ê¬ê­ê®ê¯ê°ê±ê²ê³ê´êµê¶ê·ê¸ê¹êºê»ê¼ê½ê¾ê¿êÀêÁêÂêÃêÄêÅêÆêÇêÈêÉêÊêËêÌêÍêÎêÏêÐêÑêÒêÓêÔêÕêÖê×êØêÙêÚêÛêÜêÝêÞêßêàêáêâêãêäêåêæêçêèêéêêêëêìêíêîêïêðêñêòêóêôêõêöê÷êøêùêúêûêüêýêþë¡ë¢ë£ë¤ë¥ë¦ë§ë¨ë©ëªë«ë¬ë­ë®ë¯ë°ë±ë²ë³ë´ëµë¶ë·ë¸ë¹ëºë»ë¼ë½ë¾ë¿ëÀëÁëÂëÃëÄëÅëÆëÇëÈëÉëÊëËëÌëÍëÎëÏëÐëÑëÒëÓëÔëÕëÖë×ëØëÙëÚëÛëÜëÝëÞëßëàëáëâëãëäëåëæëçëèëéëêëëëìëíëîëïëðëñëòëóëôëõëöë÷ëøëùëúëûëüëýëþì¡ì¢ì£ì¤ì¥ì¦ì§ì¨ì©ìªì«ì¬ì­ì®ì¯ì°ì±ì²ì³ì´ìµì¶ì·ì¸ì¹ìºì»ì¼ì½ì¾ì¿ìÀìÁìÂìÃìÄìÅìÆìÇìÈìÉìÊìËìÌìÍìÎìÏìÐìÑìÒìÓìÔìÕìÖì×ìØìÙìÚìÛìÜìÝìÞìßìàìáìâìãìäìåìæìçìèìéìêìëìììíìîìïìðìñìòìóìôìõìöì÷ìøìùìúìûìüìýìþí¡í¢í£í¤í¥í¦í§í¨í©íªí«í¬í­í®í¯í°í±í²í³í´íµí¶í·í¸í¹íºí»í¼í½í¾í¿íÀíÁíÂíÃíÄíÅíÆíÇíÈíÉíÊíËíÌíÍíÎíÏíÐíÑíÒíÓíÔíÕíÖí×íØíÙíÚíÛíÜíÝíÞíßíàíáíâíãíäíåíæíçíèíéíêíëíìíííîíïíðíñíòíóíôíõíöí÷íøíùíúíûíüíýíþî¡î¢î£î¤î¥î¦î§î¨î©îªî«î¬î­î®î¯î°î±î²î³î´îµî¶î·î¸î¹îºî»î¼î½î¾î¿îÀîÁîÂîÃîÄîÅîÆîÇîÈîÉîÊîËîÌîÍîÎîÏîÐîÑîÒîÓîÔîÕîÖî×îØîÙîÚîÛîÜîÝîÞîßîàîáîâîãîäîåîæîçîèîéîêîëîìîíîîîïîðîñîòîóîôîõîöî÷îøîùîúîûîüîýîþï¡ï¢ï£ï¤ï¥ï¦ï§ï¨ï©ïªï«ï¬ï­ï®ï¯ï°ï±ï²ï³ï´ïµï¶ï·ï¸ï¹ïºï»ï¼ï½ï¾ï¿ïÀïÁïÂïÃïÄïÅïÆïÇïÈïÉïÊïËïÌïÍïÎïÏïÐïÑïÒïÓïÔïÕïÖï×ïØïÙïÚïÛïÜïÝïÞïßïàïáïâïãïäïåïæïçïèïéïêïëïìïíïîïïïðïñïòïóïôïõïöï÷ïøïùïúïûïüïýïþð¡ð¢ð£ð¤ð¥ð¦ð§ð¨ð©ðªð«ð¬ð­ð®ð¯ð°ð±ð²ð³ð´ðµð¶ð·ð¸ð¹ðºð»ð¼ð½ð¾ð¿ðÀðÁðÂðÃðÄðÅðÆðÇðÈðÉðÊðËðÌðÍðÎðÏðÐðÑðÒðÓðÔðÕðÖð×ðØðÙðÚðÛðÜðÝðÞðßðàðáðâðãðäðåðæðçðèðéðêðëðìðíðîðïðððñðòðóðôðõðöð÷ðøðùðúðûðüðýðþñ¡ñ¢ñ£ñ¤ñ¥ñ¦ñ§ñ¨ñ©ñªñ«ñ¬ñ­ñ®ñ¯ñ°ñ±ñ²ñ³ñ´ñµñ¶ñ·ñ¸ñ¹ñºñ»ñ¼ñ½ñ¾ñ¿ñÀñÁñÂñÃñÄñÅñÆñÇñÈñÉñÊñËñÌñÍñÎñÏñÐñÑñÒñÓñÔñÕñÖñ×ñØñÙñÚñÛñÜñÝñÞñßñàñáñâñãñäñåñæñçñèñéñêñëñìñíñîñïñðñññòñóñôñõñöñ÷ñøñùñúñûñüñýñþò¡ò¢ò£ò¤ò¥ò¦ò§ò¨ò©òªò«ò¬ò­ò®ò¯ò°ò±ò²ò³ò´òµò¶ò·ò¸ò¹òºò»ò¼ò½ò¾ò¿òÀòÁòÂòÃòÄòÅòÆòÇòÈòÉòÊòËòÌòÍòÎòÏòÐòÑòÒòÓòÔòÕòÖò×òØòÙòÚòÛòÜòÝòÞòßòàòáòâòãòäòåòæòçòèòéòêòëòìòíòîòïòðòñòòòóòôòõòöò÷òøòùòúòûòüòýòþó¡ó¢ó£ó¤ó¥ó¦ó§ó¨ó©óªó«ó¬ó­ó®ó¯ó°ó±ó²ó³ó´óµó¶ó·ó¸ó¹óºó»ó¼ó½ó¾ó¿óÀóÁóÂóÃóÄóÅóÆóÇóÈóÉóÊóËóÌóÍóÎóÏóÐóÑóÒóÓóÔóÕóÖó×óØóÙóÚóÛóÜóÝóÞóßóàóáóâóãóäóåóæóçóèóéóêóëóìóíóîóïóðóñóòóóóôóõóöó÷óøóùóúóûóüóýóþô¡ô¢ô£ô¤ô¥ô¦ô§ô¨ô©ôªô«ô¬ô­ô®ô¯ô°ô±ô²ô³ô´ôµô¶ô·ô¸ô¹ôºô»ô¼ô½ô¾ô¿ôÀôÁôÂôÃôÄôÅôÆôÇôÈôÉôÊôËôÌôÍôÎôÏôÐôÑôÒôÓôÔôÕôÖô×ôØôÙôÚôÛôÜôÝôÞôßôàôáôâôãôäôåôæôçôèôéôêôëôìôíôîôïôðôñôòôóôôôõôöô÷ôøôùôúôûôüôýôþõ¡õ¢õ£õ¤õ¥õ¦õ§õ¨õ©õªõ«õ¬õ­õ®õ¯õ°õ±õ²õ³õ´õµõ¶õ·õ¸õ¹õºõ»õ¼õ½õ¾õ¿õÀõÁõÂõÃõÄõÅõÆõÇõÈõÉõÊõËõÌõÍõÎõÏõÐõÑõÒõÓõÔõÕõÖõ×õØõÙõÚõÛõÜõÝõÞõßõàõáõâõãõäõåõæõçõèõéõêõëõìõíõîõïõðõñõòõóõôõõõöõ÷õøõùõúõûõüõýõþö¡ö¢ö£ö¤ö¥ö¦ö§ö¨ö©öªö«ö¬ö­ö®ö¯ö°ö±ö²ö³ö´öµö¶ö·ö¸ö¹öºö»ö¼ö½ö¾ö¿öÀöÁöÂöÃöÄöÅöÆöÇöÈöÉöÊöËöÌöÍöÎöÏöÐöÑöÒöÓöÔöÕöÖö×öØöÙöÚöÛöÜöÝöÞößöàöáöâöãöäöåöæöçöèöéöêöëöìöíöîöïöðöñöòöóöôöõööö÷öøöùöúöûöüöýöþ÷¡÷¢÷£÷¤÷¥÷¦÷§÷¨÷©÷ª÷«÷¬÷­÷®÷¯÷°÷±÷²÷³÷´÷µ÷¶÷·÷¸÷¹÷º÷»÷¼÷½÷¾÷¿÷À÷Á÷Â÷Ã÷Ä÷Å÷Æ÷Ç÷È÷É÷Ê÷Ë÷Ì÷Í÷Î÷Ï÷Ð÷Ñ÷Ò÷Ó÷Ô÷Õ÷Ö÷×÷Ø÷Ù÷Ú÷Û÷Ü÷Ý÷Þ÷ß÷à÷á÷â÷ã÷ä÷å÷æ÷ç÷è÷é÷ê÷ë÷ì÷í÷î÷ï÷ð÷ñ÷ò÷ó÷ô÷õ÷ö÷÷÷ø÷ù÷ú÷û÷ü÷ý÷þ";;





function UrlEncode(str){
  var i,c,p,q,ret="",strSpecial="!\"#$%&'()*+,/:;<=>?@[\]^`{|}~%";
  
  for(i=0;i<str.length;i++){
    if(str.charCodeAt(i)>=0x4e00){
      var p=strGB.indexOf(str.charAt(i));
      if(p>=0){
        q=p%94;
        p=(p-q)/94;
        ret+=("%"+(0xA1+p).toString(16)+"%"+(0xA1+q).toString(16)).toUpperCase();
      }
    }
    else{
      c=str.charAt(i);
      if(c==" ")
        ret+="+";
      else if(strSpecial.indexOf(c)!=-1)
        ret+="%"+str.charCodeAt(i).toString(16);
      else
        ret+=c;
    }
  }
  return ret;
};

function printPage()
{
        
  mapSize = getMapSize();
  mapZoom = maplet.getZoomLevel();
        var printSize = getPrintSize();
 
        g("mapPanel").style.height = printSize.height;
        g("mapPanel").style.width = printSize.width;
        
        g("txtPanel").style.height = printSize.height;
        
        g("wrapper").style.height = printSize.height;          
        
        rePosLoading();
  BMap.resize(printSize.width, printSize.height);
        var zoom = getPrintZoom();
        
        BMap.setZoomLevel(zoom);
  
        window.print();
  
  
        
  if(document.getElementById && window.XSLTProcessor && window.XMLHttpRequest &&
            !_typeOf('netscape6') &&!_typeOf('netscape/7.0') )
        {
           setTimeout('g("mapPanel").style.height = mapSize.height;g("txtPanel").style.height = mapSize.height;g("wrapper").style.height = mapSize.height;rePosLoading();BMap.resize(mapSize.width, mapSize.height);BMap.setZoomLevel(mapZoom);BMap.refresh();', BaiduMap.delayTime);

        }
  else
        {
           
           g("mapPanel").style.height = mapSize.height;
           g("mapPanel").style.width = mapSize.width;
     g("txtPanel").style.height = mapSize.height;
     g("wrapper").style.height = mapSize.height;
           rePosLoading();
           BMap.resize(mapSize.width, mapSize.height);
           BMap.setZoomLevel(mapZoom);
           BMap.refresh();
 
  }  





     
  
};

function getPrintSize()
{
  var size = new BSize(0,0);
  var oldSize = getMapSize();
  var heightFactor = BaiduMap.standHeight/screen.height;
        var widthFactor = BaiduMap.standWidth/screen.width;

        if(heightFactor >= 1)
  {
           heightFactor = 1;
  }
  else
  {
           heightFactor -= 0.1;
  }

  if(widthFactor  >= 1)
  {
           widthFactor = 1;
        }
  else
  {
           widthFactor -= 0.1;
  }
  
        size.height = oldSize.height * heightFactor;
        size.width = oldSize.width * widthFactor;

  return size; 
};

function getPrintZoom()
{
  var zoom = maplet.getZoomLevel();

        if(screen.height*screen.width <= BaiduMap.standHeight * BaiduMap.standWidth)
        {
           return zoom;
        }
    
        if(zoom > BaiduMap.zoomThreshold)
     {
           zoom = zoom - BaiduMap.zoomStep;
        }
  
        return zoom;
};



var elementTable = {
  'txtPanel': "txtPanel",
  'mapPanel': "mapPanel",
  'queryBar': "word",
  'loadingPanel': "loadingPanel",
  'webPanel': "webPanel",
  'adPanel': "AdPanel"  
};

  
var pageElement = {
  '_tab': [],
  'load': function()
  {
      for(var pItem in elementTable)
      {
        pageElement.add(elementTable[pItem]);  
      }  
  },
  
  'add': function(eName)
  {
    var o = g(eName);
    if(o != null)
      {
        pageElement._tab[eName] = o;  
      }
    return o;
          
  },
  
  'get': function(eName)
  {
    if(pageElement._tab[eName] != null)
    {
      return pageElement._tab[eName];   
    }
    else
    {
       return pageElement.add(eName);   
    }
  }

  
};




var xsltTable = 
{
  'presult': "map_presult",
  'pcity': "map_pcity",
  'rlist': "map_rlist",
  'plist': "map_plist",
  'range': "map_range",
  'busroute': "map_busroute",
  'driveroute': "map_driveroute",
  'fromhere': "map_fromhere",
  'tohere': "map_tohere",
  'pdetail': "map_pdetail",
  'rorg': "map_rorg",
  'none': "map_none",
  'pft': "map_pft",
  'down': "map_down",
  'pchotel': "map_chotel_detail",
  'pcplace': "map_csite_detail"
};


var viewTable = 
{
  'presult': "map_presultView",
  'pcity': "map_pcityView",
  'rlist': "map_rlistView",
  'plist': "map_plistView",
  'range': "map_rangeView",
  'busroute': "map_busrouteView",
  'driveroute': "map_driverouteView",
  'fromhere': "map_fromhereView",
  'tohere': "map_tohereView",
  'pdetail': "map_pdetailView",
  'ptohere': "map_ptohereView",
  'ptohere_chotel': "map_ptohere_chotelView",
  'ptohere_cplace': "map_ptohere_cplaceView",
  'pfromhere': "map_pfromhereView",
  'pfromhere_chotel': "map_pfromhere_chotelView",
  'pfromhere_cplace': "map_pfromhere_cplaceView",
  'prange': "map_prangeView",
  'prange_chotel': "map_prange_chotelView",
  'prange_cplace': "map_prange_cplaceView",
  'rorg': "map_rorgView",
  'none': "map_noneView",
  'pft': "map_pftView",
  'down': "map_downView",
  'pchotel': "map_chotelView",
  'pcplace': "map_cplaceView"  
};

var viewFactory = 
{
  
  getView: function(viewName)
  {
    
    switch(viewName)
    {
      case viewTable.presult:
      {
        return new View(viewTable.presult, xsltTable.presult, elementTable.txtPanel, ruleTable.map_presultRule, {onSuccess: cb_x_presultSuccess, onFailure: cb_x_presultFailure, onException: cb_x_exception});  
      }
      case viewTable.pcity:
      {
        return new View(viewTable.pcity, xsltTable.pcity, elementTable.txtPanel, ruleTable.map_pcityRule, {onSuccess: cb_x_presultSuccess, onFailure: cb_x_presultFailure, onException: cb_x_exception});
        break;  
      }
      case viewTable.plist:
      {
        return new View(viewTable.plist, xsltTable.plist, elementTable.txtPanel, ruleTable.map_plistRule, {onSuccess: cb_x_plistSuccess, onFailure: cb_x_plistFailure, onException: cb_x_exception});  
      }
      
      case viewTable.rlist:
      {
        return new View(viewTable.rlist, xsltTable.rlist, elementTable.txtPanel, ruleTable.map_rlistRule, {onSuccess: cb_x_rlistSuccess, onFailure: cb_x_rlistFailure, onException: cb_x_exception});  
      }
      
      case viewTable.range:
      {
        return new View(viewTable.range, xsltTable.range, elementTable.txtPanel, ruleTable.map_rangeRule, {onSuccess: cb_x_rangeSuccess, onFailure: cb_x_rangeFailure, onException: cb_x_exception});    
      }
      
      case viewTable.busroute:
      {
        return new View(viewTable.busroute, xsltTable.busroute, elementTable.txtPanel, ruleTable.map_busrouteRule, {onSuccess: cb_x_busrouteSuccess, onFailure: cb_x_busrouteFailure, onException: cb_x_exception});  
      }
      
      case viewTable.driveroute:
      {
        return new View(viewTable.driveroute, xsltTable.driveroute, elementTable.txtPanel, ruleTable.map_driverouteRule, {onSuccess: cb_x_driverouteSuccess, onFailure: cb_x_driverouteFailure, onException: cb_x_exception});
      }
      
      case viewTable.fromhere:
      {
        return new View(viewTable.fromhere, xsltTable.fromhere, elementTable.txtPanel, ruleTable.map_fromhereRule, {onSuccess: cb_x_fromhereSuccess, onFailure: cb_x_fromhereFailure, onException: cb_x_exception});
      }
      
      case viewTable.tohere:
      {
        return new View(viewTable.tohere, xsltTable.tohere, elementTable.txtPanel, ruleTable.map_tohereRule, {onSuccess: cb_x_tohereSuccess, onFailure: cb_x_tohereFailure, onException: cb_x_exception});
      }
      
      case viewTable.pdetail:
      {
        return new View(viewTable.pdetail, xsltTable.pdetail, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_pdetailSuccess, onFailure: cb_x_pdetailFailure, onException: cb_x_exception});
      }
      
      case viewTable.ptohere:
      {
        return new View(viewTable.ptohere, xsltTable.pdetail, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_ptohereSuccess, onFailure: cb_x_ptohereFailure, onException: cb_x_exception});
      }

      case viewTable.ptohere_chotel:
      {

        return new View(viewTable.ptohere_chotel, xsltTable.pchotel, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_ptohereSuccess, onFailure: cb_x_ptohereFailure, onException: cb_x_exception});
      }

      case viewTable.ptohere_cplace:
      {
    
        return new View(viewTable.ptohere_cplace, xsltTable.pcplace, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_ptohereSuccess, onFailure: cb_x_ptohereFailure, onException: cb_x_exception});
      }
      
      case viewTable.pfromhere:
      {
        return new View(viewTable.pfromhere, xsltTable.pdetail, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_pfromhereSuccess, onFailure: cb_x_pfromhereFailure, onException: cb_x_exception});
      }

      case viewTable.pfromhere_chotel:
      {
        
        return new View(viewTable.pfromhere_chotel, xsltTable.pchotel, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_pfromhereSuccess, onFailure: cb_x_pfromhereFailure, onException: cb_x_exception});
      }

      case viewTable.pfromhere_cplace:
      {
        
        return new View(viewTable.pfromhere_cplace, xsltTable.pcplace, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_pfromhereSuccess, onFailure: cb_x_pfromhereFailure, onException: cb_x_exception});
      }
      
      case viewTable.prange:
      {
        return new View(viewTable.prange, xsltTable.pdetail, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_prangeSuccess, onFailure: cb_x_prangeFailure, onException: cb_x_exception});
      }
      
      case viewTable.prange_cplace:
      {
        return new View(viewTable.prange_cplace, xsltTable.pcplace, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_prangeSuccess, onFailure: cb_x_prangeFailure, onException: cb_x_exception});
      }

      case viewTable.prange_chotel:
      {
        return new View(viewTable.prange_chotel, xsltTable.pchotel, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_prangeSuccess, onFailure: cb_x_prangeFailure, onException: cb_x_exception});
      }


      case viewTable.rorg:
      {
        return new View(viewTable.rorg, xsltTable.rorg, elementTable.txtPanel, ruleTable.map_rorgRule, {onSuccess: cb_x_rorgSuccess, onFailure: cb_x_rorgFailure, onException: cb_x_exception});
      }
      
      case viewTable.none:
      {
        return new View(viewTable.none, xsltTable.none, elementTable.txtPanel, ruleTable.map_noneRule, {onSuccess: cb_x_noneSuccess, onFailure: cb_x_noneFailure, onException: cb_x_exception});
      }
      
      case viewTable.pft:
      {
        return new View(viewTable.pft, xsltTable.pft, elementTable.txtPanel, ruleTable.map_pftRule, {onSuccess: cb_x_pftSuccess, onFailure: cb_x_pftFailure, onException: cb_x_exception});  
      }
      
      case viewTable.down:
      {
        return new View(viewTable.down, xsltTable.down, elementTable.txtPanel, ruleTable.map_downRule, {onSuccess: cb_x_downSuccess, onFailure: cb_x_downFailure, onException: cb_x_exception});    
      }

      case viewTable.pchotel:
      {

        return new View(viewTable.pchotel, xsltTable.pchotel, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_pdetailSuccess, onFailure: cb_x_pdetailFailure, onException: cb_x_exception});
      }

      case viewTable.pcplace:
      {

        return new View(viewTable.pcplace, xsltTable.pcplace, elementTable.txtPanel, ruleTable.map_pdetailRule, {onSuccess: cb_x_pdetailSuccess, onFailure: cb_x_pdetailFailure, onException: cb_x_exception});
      }

      
      default:
      {
        return null;  
      }
      
    }
  }
      

};



var numPtn = /[a-zA-Z]+(\d+)/;

var ruleTable = 
{
  'map_pcityRule':{
    '#txtPanel a.ctNavLink': function(element)
    {
      element.onclick = function()
      {
        var sword= BaiduMap.s_result.getElementsByTagName('cnenc')[0].childNodes[0].nodeValue + '+' + this.id;
        monitor.ctnav_search(sword);
      };
    },
      
    '#cnSearchLink': function(element)
    {
      element.onclick = monitor.cnSearch;
    }
  }, 
  
  'map_plistRule':{
    '#pbsList': function(element)
    {
      element.onkeypress = function(event)
      {
        var evt = event || window.event;
            if(evt.keyCode == 13)  
            {
                g('btnOK').click();
            }
        
      };  
    },
    
    '#btnOK': function(element)
    {
      element.onclick = monitor.pbsSearch;
    }  
  }, 
  
  'map_presultRule':{
      '#txtPanel a.rsLink': function(element)
      {
        element.onclick = function()
        {
          
          monitor.citySearch(this.childNodes[0].childNodes[0].nodeValue);  
        };  
      },
              
      '#txtPanel a.bubbleIcon': function(element)
      {
      
        element.onclick = function()
        {
          var num = this.id.match(numPtn);
          if(num != null)
          {
            monitor.showDetail(parseInt(num[1]));
          }
          else
          {
          }
                      
        };
                    
      },
                  
      '#txtPanel a.poiLink': function(element)
      {
    
        element.onclick = function()
        {
          var num = this.id.match(numPtn);
          if(num != null)
          {
            
            var items = BaiduMap.s_result.getElementsByTagName('item');
            monitor.searchDetail(num[1], items[parseInt(num[1])-1].getAttribute('id'), items[parseInt(num[1])-1].getAttribute('name'));
          }  
        };  
      },
               
      '#preLink': function(element)
      {
        element.onclick = function()
        {
          var cpage = BaiduMap.s_result.getElementsByTagName('cpage')[0].childNodes[0].nodeValue;
          monitor.pPage(parseInt(cpage)-1);
        };  
      },
              
      '#nextLink': function(element)
      {
          element.onclick = function()
          {
            var cpage = BaiduMap.s_result.getElementsByTagName('cpage')[0].childNodes[0].nodeValue;
            monitor.pPage(parseInt(cpage)+1);  
          };  
      },
    
      '#txtPanel a.pageLink': function(element)
      {
        element.onclick = function()
        {
          var num = this.id.match(numPtn);
          if(num != null)
          {
            monitor.pPage(parseInt(num[1]));  
          }  
        };    
      }
  },
  
  'map_rangeRule':{
    '#txtPanel a.bubbleIcon': function(element)
      {
      
        element.onclick = function()
        {
          var num = this.id.match(numPtn);
          if(num != null)
          {
            monitor.showDetail(parseInt(num[1]));
          }
          else
          {
          }
                      
        };
                    
      },
                  
      '#txtPanel a.poiLink': function(element)
      {
    
        element.onclick = function()
        {
          var num = this.id.match(numPtn);
          if(num != null)
          {
            
            var pids = BaiduMap.g_result.getElementsByTagName('pid');
            var names = BaiduMap.g_result.getElementsByTagName('name');
            monitor.searchDetail(num[1], pids[parseInt(num[1])-1].childNodes[0].nodeValue, names[parseInt(num[1])-1].childNodes[0].nodeValue);
          }
           else
          {
          }  
        };  
      },
               
      '#preLink': function(element)
      {
        element.onclick = function()
        {
          var pn = BaiduMap.g_result.getElementsByTagName('pois')[0].getAttribute('pn');
          monitor.nPage(parseInt(pn) - BaiduMap.numPerPage);
        };  
      },
              
      '#nextLink': function(element)
      {
          element.onclick = function()
          {
            var pn = BaiduMap.g_result.getElementsByTagName('pois')[0].getAttribute('pn');
            monitor.nPage(parseInt(pn) + BaiduMap.numPerPage);
          };  
      },
    
      '#txtPanel a.pageLink': function(element)
      {
        element.onclick = function()
        {
          var num = this.id.match(numPtn);
          if(num != null)
          {
            monitor.nPage(parseInt(num[1]));  
          }
          else
          {
          }  
        };    
      },
      
      '#goBack': function(element)
      {
        
        element.onclick = function()
        {
          window.history.back();
        };
        
      }
  },
  
  'map_rlistRule':{
    '#txtPanel a.rsLink': function(element)
      {
        element.onclick = function()
        {
          monitor.citySearch(this.childNodes[0].childNodes[0].nodeValue);  
        };  
      },
    
    '#orgLink': function(element)
    {
      element.onclick = function()
      {
        var orgName = BaiduMap.s_result.getElementsByTagName('start')[0].childNodes[0].nodeValue;
        monitor.rpSearch(orgName);  
      };
    },
    
    '#destLink':function(element)
    {
      element.onclick = function()
      {
        var destName = BaiduMap.s_result.getElementsByTagName('terminal')[0].childNodes[0].nodeValue;
        monitor.rpSearch(destName);
      };
    },
    
    '#rbsList': function(element)
    {
      element.onkeypress = function(event)
      {
        var evt = event || window.event;
        if(evt.keyCode == 13)  
        {
          g('btnOK').click();
        }
        
      };  
    },
    
    '#btnOK': function(element)
    {
      element.onclick = monitor.rbsSearch;
    }
    
  }, 
  
  'map_busrouteRule':{
    '#orgLink': function(element)
    {
      element.onclick = monitor.rporgSearch;  
    },
    
    '#destLink': function(element)
    {
      element.onclick = monitor.rpdestSearch;  
    },
    
    '#goDriveLink': function(element)
    {
      element.onclick = monitor.detailSearchDrive;  
    },
    
    '#txtPanel tr.routeGrid': function(element)
    {
      element.onclick = function()
      {
          var num = this.id.match(numPtn);
          if(num != null)
          {
            monitor.changeRoute(parseInt(num[1])-1);  
          }  
      };
    },
    
    '#txtPanel a.pageLink': function(element)
    {
      element.onclick = function()
      {
        var num = this.id.match(numPtn);
        if(num != null)
        {
          monitor.rPage(parseInt(num[1]));  
        }  
      };  
    }
    
  }, 
  
  'map_driverouteRule':{
    '#orgLink': function(element)
    {
      element.onclick = monitor.rporgSearch;  
    },
    
    '#destLink': function(element)
    {
      element.onclick = monitor.rpdestSearch;  
    },
    
    '#goBusLink': function(element)
    {
      element.onclick = monitor.detailSearchBus;  
    }
    
  },
  
  'map_fromhereRule':{
    '#wordLink': function(element)
    {
      element.onclick = monitor.detail;  
    },
    
    '#tohereLink': function(element)
    {
      element.onclick = function()
      {
        var word = BaiduMap.s_result.getElementsByTagName('word')[0].childNodes[0].nodeValue;
        var pid = BaiduMap.s_result.getElementsByTagName('id')[0].childNodes[0].nodeValue;
        var bs = BaiduMap.s_result.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        monitor.toHere(word,pid,bs);  
      };
    },
    
    '#rangeLink': function(element)
    {
      element.onclick = function()
      {
        var word = BaiduMap.s_result.getElementsByTagName('word')[0].childNodes[0].nodeValue;
        var pid = BaiduMap.s_result.getElementsByTagName('id')[0].childNodes[0].nodeValue;
        var bs = BaiduMap.s_result.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        monitor.range(word,pid, bs);
      };
    },
    
    '#destList': function(element)
    {
      element.onkeypress = function(event)
      {
        var evt = event || window.event;
        if(evt.keyCode == 13)  
        {
          g('btnOK').click();
          
        }      
      };  
    },
    
    '#btnOK': function(element)
    {
      element.onclick = monitor.fromSearchRoute;
    },
    
    '#btnBack': function(element)
    {
      element.onclick = monitor.fromSearchBack;  
    } 
  },
  
  'map_tohereRule':{
    '#wordLink': function(element)
    {
      element.onclick = monitor.detail;  
    },
    
    '#fromhereLink': function(element)
    {
      element.onclick = function()
      {
        var word = BaiduMap.s_result.getElementsByTagName('word')[0].childNodes[0].nodeValue;
        var pid = BaiduMap.s_result.getElementsByTagName('id')[0].childNodes[0].nodeValue;
        var bs = BaiduMap.s_result.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        monitor.fromHere(word,pid,bs);  
      };
    },
    
    '#rangeLink': function(element)
    {
      element.onclick = function()
      {
        var word = BaiduMap.s_result.getElementsByTagName('word')[0].childNodes[0].nodeValue;
        var pid = BaiduMap.s_result.getElementsByTagName('id')[0].childNodes[0].nodeValue;
        var bs = BaiduMap.s_result.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        monitor.range(word,pid, bs);
      };
    },
    
    '#orgList': function(element)
    {
      element.onkeypress = function(event)
      {
        var evt = event || window.event;
        if(evt.keyCode == 13)  
        {
          g('btnOK').click();
          
        }      
      };  
    },
    
    '#btnOK': function(element)
    {
      element.onclick = monitor.toSearchRoute;
    },
    
    '#btnBack': function(element)
    {
      element.onclick = monitor.toSearchBack;  
    } 
  
  }, 
  
  'map_pdetailRule':{
    '#txtPanel a.toHereSwitch': function(element)
    {
      element.onclick = monitor.switchToHere;  
    },
    
    '#txtPanel a.fromHereSwitch': function(element)
    {
      element.onclick = monitor.switchFromHere;
    },
    
    '#txtPanel a.rangeSwitch': function(element)
    {
      element.onclick = monitor.switchRange;
    },
    
    '#txtPanel a.detailSwitch': function(element)
    {
      element.onclick = monitor.switchToDetail;
    },
    
    '#orgInput': function(element)
    {
      element.onkeypress = function(event)
      {
        var evt = event || window.event;
        if(evt.keyCode == 13)  
        {
          var btn = g('toBusOK');
          if(btn == null)
          {
            btn = g('toDriveOK');
          }

          if(btn != null)
          {
            btn.click();

          }   
        }  
      };
    },
    
    '#toBusOK': function(element)
    {
      element.onclick = monitor.toSearchBus;  
    },
    
    '#toDriveOK': function(element)
    {
      element.onclick = monitor.toSearchDrive;  
    },
    
    '#dstInput': function(element)
    {
      element.onkeypress = function(event)
      {
        var evt = event || window.event;
        if(evt.keyCode == 13)  
        {
          var btn = g('fromBusOK');
          if(btn == null)
          {
            btn = g('fromDriveOK');
          }

          if(btn != null)
          {
            btn.click();

          }   
        }  
      };
    },
    
    '#fromBusOK': function(element)
    {
      element.onclick = monitor.fromSearchBus;
    },
    
    '#fromDriveOK': function(element)
    {
      element.onclick = monitor.fromSearchDrive;  
    },
    
    '#range a.rangeSearchLink': function(element)
    {
      element.onclick = function()
      {
        var num = this.id.match(numPtn);
          if(num != null)
          {
            monitor.searchRange(num[1]);  
          }    
      }
    }
    
  }, 
  
  'map_rorgRule':{
    '#orgLink': function(element)
    {
      element.onclick = function()
      {
        var start = BaiduMap.s_result.getElementsByTagName('start')[0].childNodes[0].nodeValue;
        monitor.rpbsSearch(start);  
      };  
    },
    
    '#destLink': function(element)
    {
      element.onclick = function()
      {
        var dest = BaiduMap.s_result.getElementsByTagName('terminal')[0].childNodes[0].nodeValue;  
        monitor.rpbsSearch(dest);
      };  
    },
    
    '#orgList' : function(element)
    {
      element.onkeypress = function(event)
      {
        var evt = event || window.event;
        if(evt.keyCode == 13)  
        {
          var btn = g('btnBus');
          if(btn == null)
          {
            btn = g('btnDrive');
          }
            
          if(btn != null)
          {
            btn.click();
       
          }   
        }  
      };    
    },
    
    '#destList': function(element)
    {
      element.onkeypress = function(event)
      {
        var evt = event || window.event;
        if(evt.keyCode == 13)  
        {
          var btn = g('btnBus');
          if(btn == null)
          {
            btn = g('btnDrive');
          }
            
          if(btn != null)
          {
            btn.click();
       
          }   
        }  
      };
    },
    
    '#btnBus': function(element)
    {
      element.onclick = monitor.bsSearchBus;
    },
    
    '#btnDrive': function(element)
    {
      element.onclick = monitor.bsSearchDrive;  
    }
    
  }, 
  
  'map_noneRule':{
    '#txtPanel a.rsLink': function(element)
      {
        element.onclick = function()
        {
          monitor.citySearch(this.childNodes[0].childNodes[0].nodeValue);  
        };  
      },
    
    '#txtPanel a.cityLink': function(element)
    {
      element.onclick = function()
      {
        monitor.citySearch(this.childNodes[0].nodeValue);
      };
    }
  }, 
  
  'map_pftRule': {},
  'map_downRule': {}
}; 



var monitor = new Monitor();



BaiduMap.s_result = null;         
BaiduMap.g_result = null;         
BaiduMap.routeType = null;        
BaiduMap.currPOIIndex = -1;
BaiduMap.currRouteIndex = 0;      


function sessionOn()
{
  
  BaiduMap.sessionOn = true;

};

 
function sessionOff()
{
  
  BaiduMap.sessionOn = false;
  
};





function showLoadingPanel()
{
  if(pageElement.get(elementTable.loadingPanel) == null)
  {
    return;  
  }
  pageElement.get(elementTable.loadingPanel).style.display = "block";  
};


function hideLoadingPanel()
{
  if(pageElement.get(elementTable.loadingPanel) == null)
  {
    return;
  }
    
  pageElement.get(elementTable.loadingPanel).style.display = "none";
};


function writeBack(word)
{
  pageElement.get(elementTable.queryBar).value = word;
  if(word != "")
  {
    
    document.title = BaiduMap.docTitle + '_' + word;
  }
  else
  {
    
    document.title = BaiduMap.docTitle;
  }
      
};



function formParsStr(parOptions)
{

  var ret = "";
  if(parOptions["command"] != null)
  {
    ret = parOptions["command"];
  }
  
  for(var i=1; i<parOptionTab.length; i++)
  {
    if(parOptions[parOptionTab[i]] != null)
    {
      ret += parOptionTab[i] + "=" + parOptions[parOptionTab[i]] + "&";
    }
  }
  
  return ret;
};




function checkXML(xmlDoc)
{
  if(xmlDoc == null)
    return false;
  var result = xmlDoc.getElementsByTagName('result');
  if(result.length > 0)
  {
    return true;
  }
  else
  {
    return false;  
  }  
};


function checkForDown(xmlDoc)
{
  
  
  var type = xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
  if(type != 500)
  {
    return true;    
  }
  else
  {
    
    Controller.switchView(viewTable.down);  
    return false;
  }
    
};


function strCheck(str, des)
{
  
  var sss=str.value;
  sss=sss.replace(/(^[\s]*)|([\s]*$)/g, "");
  if((sss=="") || (sss==null))
  {
       alert(des);
       str.focus();
       return false;
  } 
  return true;
  
};

function checkSrcTypeSearch()
{
     var ret = false;
     if (window.location.href.indexOf("&src=1") != -1)
     {

  ret = true;
     };

     return ret;
};

function showAdCtrip(linkStr)
{
  if(linkStr != null && linkStr != "")
  {
    pageElement.get('ctrip_adlink').href = linkStr;
  };
  pageElement.get(elementTable.adPanel).style.display = "block";
};

function hideAdCtrip()
{
  pageElement.get(elementTable.adPanel).style.display = "none";
};


function loadHash(searchPars)
{
  
  searchPars = searchPars.replace(/(^[\s]*)|([\s]*$)/g, "");
  
  try
  {
    if(searchPars == "" || searchPars == "#")
    {
    
      pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.initView;
      BMap.createMap(BMap.center,BMap.scale,mapSize.width, mapSize.height, mapPos.x, mapPos.y);
      BMap.initCities();
      
      BMap.showMapLayer();
    
      
      
      return ;
    }
    else
    {
    
      BMap.createMap(BMap.center,BMap.scale,mapSize.width, mapSize.height, mapPos.x, mapPos.y);
      BMap.initCities();
      
      BMap.hideMapLayer();
      
      
      showLoadingPanel();  
      requestHash(searchPars);  
    }
  }
  catch(ex)
  {
      pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.initView;
      if(maplet == null)
      {
        BMap.createMap(BMap.center,BMap.scale,mapSize.width, mapSize.height, mapPos.x, mapPos.y);  
      }
      BMap.initCities();
      
      BMap.showMapLayer();
  }
  
  
};


function updateHash(searchPars)
{
    if(searchPars == "")
    {
      
      window.location.reload();  
      writeBack("");
      return ;
    }
    else
    {
      requestHash(searchPars);  
    }
};



function requestHash(searchPars)
{
  
  
  
  var request = parseHash(searchPars);
  
  if(request == null)
  {
      
      
      window.location = BaiduMap.onErrorPage;
      throw BaiduMap.urlErrorMsg;
      return;
  }
  
  if(BaiduMap.sessionOn == true)  
         return;
  
  sessionOn();
  
  
  if(request["command"] == 'g') 
  {
    showLoadingPanel();
    }
  
  new AjaxProxy(
       request["command"],
       request["pars"],
       request["OnSuccess"],
       request["OnFailure"],
       BaiduMap.TIMES
     );
};    


function parseHash(str)
{
  
  var keyValue = /([^\s&]+)=([^\s&]+)/;
  var ptnCT = /ct=([^\s&]+)/;
  var ptnLM = /lm=([^\s&]+)/;
  var ptnST = /st=([^\s&]+)/;
  var ret = {command:"",pars:""};
  
  var ct = str.match(ptnCT);
  
  if(ct == null)
  {
    ct = [10,10];
  }
  
  
  if(!validateURL(str))
  {
      return null;
  }
  
  if(ct[1]!=4 && ct[1]!=5 && ct[1]!=9 && ct[1] != 40)   
  {
    
    ret["command"] = "s";
    ret["ct"] = ct[1];
    ret["pars"] = str;
    ret["OnSuccess"] = cbSearchSuccess;
    ret["OnFailure"] = cbSearchFail;
    return ret;
  
  }
  else if(ct[1] == 40)  
  {
    ret["command"] = "s";
    ret["ct"] = ct[1];
    var st = str.match(ptnST);
    
    if(st == null)
    {
      ret["pars"]  = str;
      ret["OnSuccess"] = cbSearchSuccess;
      ret["OnFailure"] = cbSearchFail;
      return ret;
    }
    switch(st[1])
    {
      case '1':
      {
        ret["pars"]=str;
        ret["OnSuccess"] = cb_s_switchtoHereSuccess;
        ret["OnFailure"] = cb_s_switchtoHereFail;
        break;
      }
      case '2':
      {
        ret["pars"]=str;
        ret["OnSuccess"] = cb_s_switchfromHereSuccess;
        ret["OnFailure"] = cb_s_switchfromHereFail;
        break;
      }
      case '3':
      {
        ret["pars"]=str;
        ret["OnSuccess"] = cb_s_switchRangeSuccess;
        ret["OnFailure"] = cb_s_switchRangeFail;
        break;
      }
      default:
      {
        ret["pars"]  = str;
        ret["OnSuccess"] = cbSearchSuccess;
        ret["OnFailure"] = cbSearchFail;  
      }  
    }
    
    return ret;
  }
  else if(ct[1] == 4 || ct[1] == 5)
  {
    var lm = str.match(ptnLM);
    if(lm == null)
    {
      return null;
    }
    
    if(lm[1] != '-1')
    {
      
      ret["command"] = "s";
      ret["ct"] = ct[1];
      ret["pars"] = str;
      ret["OnSuccess"] = cbSearchSuccess;
      ret["OnFailure"] = cbSearchFail;
      return ret;
    }
            
  }
  
  
  var parStr = str.split('&');
  
  var result = null;
  var parSet = {};
  
  for(var i = 0; i<parStr.length; i++)
  {
    result = parStr[i].match(keyValue);
    if(result != null)
    {
      parSet[result[1]] = result[2];
    }
  }
  
  
  
  switch(parSet["ct"])
  {
    case '4':
    {
      ret["pars"] = "ty=bus.jsp";
      ret["pars"] += "&opid=" + parSet["sid"];
      ret["pars"] += "&dpid=" + parSet["tid"];
      ret["pars"] += "&cityCode=" + parSet["bs"];
      ret["pars"] += "&width=" + BMap.width;
      ret["pars"] += "&height=" + BMap.height;
      ret["OnSuccess"] = cb_g_busSuccess;
      ret["OnFailure"] = cb_g_busFail;
      break;
    }
    case '5':
    {
      ret["pars"] = "ty=route.jsp";
      ret["pars"] += "&opid=" + parSet["sid"];
      ret["pars"] += "&dpid=" + parSet["tid"];
      ret["pars"] += "&cityCode=" + parSet["bs"];
      ret["pars"] += "&width=" + BMap.width;
      ret["pars"] += "&height=" + BMap.height;
      ret["OnSuccess"] = cb_g_routeSuccess;
      ret["OnFailure"] = cb_g_routeFail;
      break;

    }
    case '9':
    {
      ret["pars"] = "ty=near.jsp";
      ret["pars"] += "&pid=" + parSet["sid"];
      ret["pars"] += "&cityCode=" + parSet["bs"];
      ret["pars"] += "&range=" + parSet["sz"];
      ret["pars"] += "&poitype=" + parSet["dp"];
      ret["pars"] += "&pn=" + parSet["pn"]; 
      ret["pars"] += "&rn=" + parSet["rn"]; 
      ret["pars"] += "&width=" + BMap.width;
      ret["pars"] += "&height=" + BMap.height;
      ret["OnSuccess"] = cb_g_nearSuccess;
      ret["OnFailure"] = cb_g_nearFail;
      break;
    }
    default:
    {
      return null;
  
      
    }
  }
  
  ret["command"] = "g";
  ret["ct"] = parSet["ct"];
  return ret;
      
};   



function validateURL(str)
{
  if(str == null)
    return false;
    
  var ptnWORD = /word=([^\s&]+)/;
  var ptnSID = /sid=([^\s&]+)/;
  
  var _match = str.match(ptnWORD);
  if(_match != null)
  {
    return true;  
  }
  
  _match = str.match(ptnSID);
  if(_match != null)
  {
    return true;  
  }
  
  return false;
  
};


function writePageLink(linkStr)
{
  
  
  
  window.bookmarkMng.addBookmark(linkStr.substr(1));
  
  
};


function formRefPage(word)
{
  var ret = "<iframe frameborder='0' src='http://www.baidu.com/baidu?cl=3";
  ret += "&word="+ word +"&tn=baiduinmap";
  ret += "&rn="+BaiduMap.refNum+"' width='" + BMap.width + "' scrolling='no' height='100%'></iframe>";
  
  if(pageElement.get(elementTable.webPanel) != null)
  {
      pageElement.get(elementTable.webPanel).innerHTML = ret;
      pageElement.get(elementTable.webPanel).style.display = "block";
  }
  
};


function clearWebPanel()
{
    if(pageElement.get(elementTable.webPanel) != null)
    {
      pageElement.get(elementTable.webPanel).innerHTML = "";
      pageElement.get(elementTable.webPanel).style.display = "none";  
    }
};











function Monitor()
{
                         
    
    
    this.search = function()
    {
    if(BaiduMap.sessionOn == true)  
         return;
       
       try
       {
         sessionOn();
           
         if(!strCheck(pageElement.get(elementTable.queryBar), BaiduMap.queryInputMsg))
         {
           sessionOff();
           return;
         }
         
         var sword = UrlEncode(pageElement.get(elementTable.queryBar).value);
         if(sword.length == 0)
         {
           sessionOff();
           return;
         }
        var pars = 'word=' + sword + '&ct=10';
        writePageLink("#" + pars);
        
         new AjaxProxy(
             's',
             pars,
             cbSearchSuccess,
             cbSearchFail,
             BaiduMap.TIMES
           );
             
    
       }
       catch(Ex)
    {
      sessionOff();
    }
       
       
    };
    
    
    this.ctnav_search = function(sword)
    {
    if(BaiduMap.sessionOn == true)  
         return;
       
       try
       {
         sessionOn();
           
      var pars = 'word=' + sword + '&ct=10';
      writePageLink("#" + pars);
        
         new AjaxProxy(
             's',
             pars,
             cbSearchSuccess,
             cbSearchFail,
             BaiduMap.TIMES
           );
    
       }
       catch(Ex)
    {
      sessionOff();
    }
       
       
    };
    
    
    this.citySearch = function(sword)
    {
      
      if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         sessionOn();
         
         var pars = "word=" + UrlEncode(sword) + "&ct=10";  
         
         writePageLink("#" + pars);
        new AjaxProxy(
             's',
             pars,
             cbSearchSuccess,
             cbSearchFail,
             BaiduMap.TIMES
           );
         
       
       }
       catch(Ex)
    {
      sessionOff();
    }
           
    };
    
    
  this.pbsSearch = function ()
  {
       
       if(BaiduMap.sessionOn == true)  
         return;
                              
       try
       {
         sessionOn(); 
         
         var s_xmlDoc = BaiduMap.s_result;
         
         var sword = s_xmlDoc.getElementsByTagName("word")[0].childNodes[0].nodeValue;
         var bsSelect = g("pbsList");
         var cityCode = g("pbsList").options[bsSelect.selectedIndex].value;
         var cityName = g("pbsList").options[bsSelect.selectedIndex].text;
     
         var tagStr = cityName + " "+ sword;
         writeBack(tagStr);
         
         sword = UrlEncode(sword);
         
         var pars = formParsStr({word:sword, ct:'21', bs:cityCode});
         
         writePageLink(formParsStr({command: '#' ,word:UrlEncode(tagStr), ct:'10'}));
         
         
      new AjaxProxy(
         's',
         pars,
         cb_s_presultSuccess,
         cb_s_presultFail,
         BaiduMap.TIMES
         );
  
       }
       catch(Ex)
    {
      sessionOff();
    }
       
       

  }; 
  
  
   this.searchDetail = function(num, sid, sname)
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
             
    try
    {
      sessionOn();
      
      BaiduMap.currPOIIndex = num;  
           
         s_xmlDoc = BaiduMap.s_result;
         
         var city = null;
         
         
         if(s_xmlDoc != null && s_xmlDoc.getElementsByTagName("bs").length > 0)
         {    
           city = s_xmlDoc.getElementsByTagName("bs")[0].childNodes[0].nodeValue;        
         }
         else
         {
           city = BaiduMap.g_result.getElementsByTagName('result')[0].getAttribute('citycode');  
         }
         
         
         
                  
         monitor._searchDetail(sid, sname, city);
           

    }
    catch(Ex)
    {
      sessionOff();
    }
      

  };
  
  
  
  this._searchDetail = function(pid, sname, city)
  {
    
       var pars = formParsStr({sid: pid, bs:city, ct:'40', word: UrlEncode(sname)});
    
      
      
      writePageLink("#" + pars);
      
      new AjaxProxy(
       's',
       pars,
       cb_s_pdetailSuccess,
       cb_s_pdetailFail,
       BaiduMap.TIMES
       );

  };
  
  
  this.showDetail = function (num)
  {
    BMap.showBubble(parseInt(num)-1);
      
  };
  
  
  this.pPage = function(pn)
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
         
       
       
       try
       {
         sessionOn();
         
      var s_xmlDoc = BaiduMap.s_result;

      var sword = UrlEncode(s_xmlDoc.getElementsByTagName("word")[0].childNodes[0].nodeValue); 

      var city = s_xmlDoc.getElementsByTagName("bs")[0].childNodes[0].nodeValue;
      var ctValue = s_xmlDoc.getElementsByTagName('ct')[0].childNodes[0].nodeValue;

      var pars = formParsStr({word: sword, ct: ctValue, bs: city, rn: BaiduMap.numPerPage, pn: BaiduMap.numPerPage*(pn-1)});       

      if(checkSrcTypeSearch() == true)
      {
        pars += "src=1";

      };
      
      writePageLink("#" + pars);

      new AjaxProxy(
          's',
          pars,
          cb_s_presultSuccess,
          cb_s_presultFail,
          BaiduMap.TIMES
             );
       }
       catch(Ex)
    {
      sessionOff();
    }
               
       

      

    
  }; 
  
  
  this.cnSearch = function()
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
         
       
       
       try
       {
         sessionOn();
         
         var s_xmlDoc = BaiduMap.s_result;
    
      var sword = UrlEncode(s_xmlDoc.getElementsByTagName("cname")[0].childNodes[0].nodeValue);
       var pars = formParsStr({word: sword, ct:'20'});
       writePageLink("#" + pars);
               
         new AjaxProxy(
         's',
         pars,
         cbSearchSuccess,
         cbSearchFail,
         BaiduMap.TIMES
         );
       }
       catch(Ex)
    {
      sessionOff();
    }
        
    
       
       

    
  };
  
  
  this.rpSearch = function(sname)
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         sessionOn();
         
         
       sname = UrlEncode(sname);
      var pars = formParsStr({word: sname, ct:'10'});
      writePageLink("#" + pars);
      
      new AjaxProxy(
         's',
         pars,
         cbSearchSuccess,
         cbSearchFail,
         BaiduMap.TIMES
         );
      
      
       }
       catch(Ex)
    {
      sessionOff();
    }

    
  };
  
  
  
  this.rbsSearch = function()
  {
       if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         sessionOn();
         
         var citySelect = g("rbsList");
      var city = citySelect.options[citySelect.selectedIndex].getAttribute('value');
      var cityName = citySelect.options[citySelect.selectedIndex].text;
      
      var s_xmlDoc = BaiduMap.s_result;
      
      
      
      var sword = s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue;
      var oid = s_xmlDoc.getElementsByTagName('startenc')[0].childNodes[0].nodeValue;
      var did = s_xmlDoc.getElementsByTagName('termenc')[0].childNodes[0].nodeValue;
      
      var oName = s_xmlDoc.getElementsByTagName('start')[0].childNodes[0].nodeValue;
      var dName = s_xmlDoc.getElementsByTagName('terminal')[0].childNodes[0].nodeValue;
      
      
      var tagStr = cityName + " " + "´Ó" + oName + "µ½" + dName;
      writeBack(tagStr);
      
      sword = UrlEncode(sword);
      
      
      var pars = formParsStr({bs:city, word:sword, ct:'31', sid:oid, tid:did});
      
      writePageLink(formParsStr({command: '#', word:UrlEncode(tagStr), ct:'10'}));
      
      new AjaxProxy(
         's',
         pars,
         cb_s_rorgSuccess,
         cb_s_rorgFail,
         BaiduMap.TIMES
         );
         
       
         pars = "ty=poi.jsp";
         pars += "&cityCode=" + city;
         pars += "&width=" + BMap.width;
         pars += "&height=" + BMap.height;

         
      showLoadingPanel();
      new AjaxProxy(
         'g',
         pars,
         cb_g_presultSuccess,
         cb_g_presultFail,
         BaiduMap.TIMES
         );       
         
       }
       catch(Ex)
    {
      sessionOff();
    }  
    
    
  
  };
  
  
  
  this.rpbsSearch = function(sname)
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         sessionOn();
         
         var s_xmlDoc = BaiduMap.s_result;
      
      
      
      var city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
      
          
      
      
      writeBack(sname);
      
      var sword = UrlEncode(sname);
      var pars = formParsStr({word:sword, bs: city, ct:'21'});
      writePageLink("#" + pars);
      
      new AjaxProxy(
         's',
         pars,
         cbSearchSuccess,
         cbSearchFail,
         BaiduMap.TIMES
         );
      
      
       }
       catch(Ex)
    {
      sessionOff();
    }  

    

  };
  

  
  this.bsSearchBus = function()
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
         
         
       try
       {
         sessionOn();
         monitor._bsSearchRoute('bus.jsp',cb_g_busSuccess, cb_g_busFail );  
       }
       catch(Ex)
    {
      sessionOff();
    }  
        
  };
  
  
  
  
  this._bsSearchRoute = function(cmdJSP, cbOnSuccess, cbOnFailure)
  {
    var pars="";
    var opSelect = g("orgList");
    var dpSelect = g("destList");
    var op = null;
    var dp = null;

    if(opSelect != null)
    {
      op = opSelect.options[opSelect.selectedIndex].value;
      
    }
    else
    {
      opSelect = g('opid');
      op = opSelect.value;
      
    }
    
    if(dpSelect != null)
    {
      dp = dpSelect.options[dpSelect.selectedIndex].value;
      
    }
    else
    {
      dpSelect = g('dpid');
      dp = dpSelect.value;
    
    }
    
    

    
  
    
    var s_xmlDoc = BaiduMap.s_result;
    var city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    
    if(cmdJSP == 'bus.jsp')
    {
      pars="ty=bus.jsp";
      writePageLink(formParsStr({command: '#', sid: op, tid: dp, ct: '4', lm: '-1', bs: city}));
    }
    else
    {
      pars="ty=route.jsp";
      writePageLink(formParsStr({command: '#', sid: op, tid: dp, ct: '5', lm: '-1', bs: city}));
    }
    pars += "&width=" + BMap.width + "&height=" + BMap.height;
    pars += "&cityCode=" + city +"&opid=" + op +"&dpid=" + dp;

    
    
    showLoadingPanel();
    new AjaxProxy(
       'g',
       pars,
       cbOnSuccess,
       cbOnFailure,
       BaiduMap.TIMES
       );

    
  };
  
  
  this.bsSearchDrive = function()
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         sessionOn();
         monitor._bsSearchRoute('route.jsp',cb_g_routeSuccess, cb_g_routeFail );  
       }
       catch(Ex)
    {
      sessionOff();
    }  

    
  };
  
  
  
  this.detail = function()
  {
    
    
       if(BaiduMap.sessionOn == true)  
         return;
    
    try
    {
      sessionOn();

      var sid = g('pid').value;
      var s_xmlDoc = BaiduMap.s_result;
      var sname = s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue;
      var city = g('bs').value;       

      monitor._searchDetail(sid, sname, city);
    }
    catch(Ex)
    {
      sessionOff();  
    }
  
  };
  
  
  
  this.toHere = function(sname, pid, city)
  {
       if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         
         sessionOn();
         var s_xmlDoc = BaiduMap.s_result;
      if(s_xmlDoc != null
      && g('detail') != null 
      && s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue == pid)
      {
        sessionOff();
        monitor.switchToHere();
        return;
      }
      
      monitor._toDetail(sname, pid, city, 1, cb_s_switchtoHereSuccess,cb_s_switchtoHereFail);
            
        
       }
       catch(Ex)
    {
      sessionOff();
    }
    
    
  };
  
  
  this._toDetail = function(sname, pid, city, stValue, cbOnSuccess, cbOnFailure)
  {
    
    
    
    
    
    var pars = formParsStr({sid: pid, bs:city, ct:'40', word: sname, st: stValue});
    writePageLink("#" + pars);
    
    new AjaxProxy(
       's',
       pars,
       cbOnSuccess,
       cbOnFailure,
       BaiduMap.TIMES
       );  
  
  };
  
  
  
  this.fromHere = function(sname, pid, city)
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
       
       try
       {
         sessionOn();
       
         var s_xmlDoc = BaiduMap.s_result;
       
      if(s_xmlDoc != null
      && g('detail') != null 
      && s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue == pid)
      {
        sessionOff();
        monitor.switchFromHere();
        return;
      }
      
      monitor._toDetail(sname, pid, city, 2, cb_s_switchfromHereSuccess,cb_s_switchfromHereFail);
            
      
       }
       catch(Ex)
    {
      sessionOff();
    }
         
       

  };
  
  
  this.range = function(sname, pid, city)
  {

       if(BaiduMap.sessionOn == true)  
         return;
       
       try
       {
         
         sessionOn();  
         var s_xmlDoc = BaiduMap.s_result;
      if(s_xmlDoc != null
      && g('detail') != null 
      && s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue == pid)
      {
        sessionOff();
        monitor.switchRange();
        return;
      }
      
      
         monitor._toDetail(sname, pid, city, 3, cb_s_switchRangeSuccess,cb_s_switchRangeFail);
                 
       }
       catch(Ex)
    {
      sessionOff();
    }
      
  };
  
  
  
  this.toSearchBus = function()
  {
    
    
       if(BaiduMap.sessionOn == true)  
         return;
       
       try
       {
         sessionOn();
         monitor._toSearch('4',cb_s_tohereSuccess,cb_s_tohereFail);
       }
       catch(Ex)
    {
      sessionOff();
    }
        
  };
  
  
  
  this._toSearch = function(type, cbOnSuccess, cbOnFailure)
  {
    
    var s_xmlDoc = BaiduMap.s_result;
    
      
    var sword = UrlEncode(s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue);
    var pars = "";
      
    if(!strCheck(g('orgInput'), BaiduMap.orgInputMsg))
     {
         sessionOff();
         return;
     }
     
     var org_tid = UrlEncode(g('orgInput').value);
     if(org_tid.length == 0)
     {
        sessionOff();
        return;  
     }
    
    
    var city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    pars = formParsStr({sid: org_tid, ct: type, tid: g('pid').value, lm:'11', bs:city, word: sword});  
    var tagStr = UrlEncode("´Ó") + org_tid + UrlEncode("µ½")+ sword;
    writePageLink(formParsStr({command: '#', word: tagStr, sid: org_tid, tid: sword, ct: '31', bs: city}));
          
    new AjaxProxy(
       's',
       pars,
       cbOnSuccess,
       cbOnFailure,
       BaiduMap.TIMES
       );

  };
  
  
  this.toSearchDrive = function()
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
       
       try
       {
         sessionOn();
         monitor._toSearch('5',cb_s_tohereSuccess,cb_s_tohereFail);
       }
       catch(Ex)
    {
      sessionOff();
    }
             
   
  };
  
  
  
  this.toSearchRoute = function()
  {
    
       if(BaiduMap.sessionOn == true)  
       {
         return;
       }
       
       try
       {
         sessionOn();
         monitor._searchRoute();
       }
       catch(Ex)
    {
      sessionOff();
    }
         
    
    
    
  };
  
  
  this._searchRoute = function()
  {
    var s_xmlDoc = BaiduMap.s_result;
    
    var flag = 1;  
    
    var type = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
    if(type == 42)  
    {
      flag = 1;
    }
    else if(type == 44)  
    {
      flag = -1;
    }
    else
    {
      throw new Error("Monitor.js: toSearchBack s_result should be tohere.xml or fromhere.xml!");
      return;
    }
      
    var Routetype = s_xmlDoc.getElementsByTagName('ot')[0].childNodes[0].nodeValue;  
    var word = s_xmlDoc.getElementsByTagName('wenc')[0].childNodes[0].nodeValue;
    var pars = "";    
    var start = "";
    var end = "";
    
    
    if(flag == 1)  
    {
      var selectOrg = g("orgList");
      start = selectOrg.options[selectOrg.selectedIndex].value;
      end = s_xmlDoc.getElementsByTagName('id')[0].childNodes[0].nodeValue;
    }
    else  
    {
      var selectDes = g("destList");
      end = selectDes.options[selectDes.selectedIndex].value;
      start = s_xmlDoc.getElementsByTagName('id')[0].childNodes[0].nodeValue;

    }
            
    
    var citycode = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    if(Routetype == '1')
    {
      
      pars = formParsStr({ty:'bus.jsp', opid: start, dpid: end, cityCode: citycode, width: BMap.width, height: BMap.height});
      
      writePageLink(formParsStr({command: '#', sid: start, tid: end, word: word, ct: '4', lm: '-1', bs: citycode}));
      
      showLoadingPanel();
      new AjaxProxy(
         'g',
         pars,
         cb_g_busSuccess,
         cb_g_busFail,
         BaiduMap.TIMES
         );
       
    }
    else
    {
      
      pars = formParsStr({ty:'route.jsp', opid: start, dpid: end, cityCode: citycode, width: BMap.width, height: BMap.height});
      
      
      writePageLink(formParsStr({command: '#', sid: start, tid: end, word: word, ct: '5', lm: '-1', bs: citycode}));

      showLoadingPanel();
      new AjaxProxy(
         'g',
         pars,
         cb_g_routeSuccess,
         cb_g_routeFail,
         BaiduMap.TIMES
         );
      
    }
  };
  
  
  this._directSearchRoute = function()
  {
    var s_xmlDoc = BaiduMap.s_result;
    
    var flag = 1;  
    
    var type = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
    if(type == 42)  
    {
      flag = 1;
    }
    else if(type == 44)  
    {
      flag = -1;
    }
    else
    {
      throw new Error("Monitor.js: toSearchBack s_result should be tohere.xml or fromhere.xml!");
    }
      
    var Routetype = s_xmlDoc.getElementsByTagName('ot')[0].childNodes[0].nodeValue;  
    var word = s_xmlDoc.getElementsByTagName('wenc')[0].childNodes[0].nodeValue;
    var pars = "";    
    var start = "";
    var end = "";
    
    
    if(flag == 1)  
    {
    
      start = s_xmlDoc.getElementsByTagName('item')[0].getAttribute('id');
      end = s_xmlDoc.getElementsByTagName('id')[0].childNodes[0].nodeValue;
    }
    else  
    {
        
      end = s_xmlDoc.getElementsByTagName('item')[0].getAttribute('id');
      start = s_xmlDoc.getElementsByTagName('id')[0].childNodes[0].nodeValue;

    }
            
    
    var citycode = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    if(Routetype == '1')
    {
      
      pars = formParsStr({ty:'bus.jsp', opid: start, dpid: end, cityCode: citycode, width: BMap.width, height: BMap.height});
      
      writePageLink(formParsStr({command: '#', sid: start, tid: end, word: word, ct: '4', lm: '-1', bs: citycode}));
      
      showLoadingPanel();
      new AjaxProxy(
         'g',
         pars,
         cb_g_busSuccess,
         cb_g_busFail,
         BaiduMap.TIMES
         );
       
    }
    else
    {
      
      pars = formParsStr({ty:'route.jsp', opid: start, dpid: end, cityCode: citycode, width: BMap.width, height: BMap.height});
      
      writePageLink(formParsStr({command: '#', sid: start, tid: end, word: word, ct: '5', lm: '-1', bs: citycode}));
      
      showLoadingPanel();
      new AjaxProxy(
         'g',
         pars,
         cb_g_routeSuccess,
         cb_g_routeFail,
         BaiduMap.TIMES
         );
      
    }  
  }; 
  

  
  this.toSearchBack = function()
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         sessionOn();
         monitor._searchBack('1',cb_s_toSearchBackSuccess,cb_s_toSearchBackFail);
       }
       catch(Ex)
    {
      sessionOff();
    }
    
    
    
    
  };
  
  
  
  this._searchBack = function(type, cbOnSuccess, cbOnFailure)
  {
    var s_xmlDoc = BaiduMap.s_result;
    
    var pid = s_xmlDoc.getElementsByTagName('id')[0].childNodes[0].nodeValue;
    var sword = s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue;
    
    
    
            
    
     sword = UrlEncode(sword);
       var pars = formParsStr({sid:pid, bs:g('bs').value, ct:'40' , word: sword, st:type});
       writePageLink("#" + pars);
    
      
      new AjaxProxy(
       's',
       pars,
       cbOnSuccess,
       cbOnFailure,
       BaiduMap.TIMES
       );

  };
  
  
  this.fromSearchBus = function()
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
       
       try
       {
         sessionOn();        
         monitor._fromSearch('4',cb_s_fromhereSuccess,cb_s_fromhereFail);
       }
       catch(Ex)
    {
      sessionOff();
    }    
      

  };
  
  
  this._fromSearch = function(type, cbOnSuccess, cbOnFailure)
  {
    
    
    var s_xmlDoc = BaiduMap.s_result;
    
    var sword = UrlEncode(s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue);
    
    
    if(!strCheck(g('dstInput'), BaiduMap.dstInputMsg))
     {
         sessionOff();
         return;
     }
     
     var dst_tid = UrlEncode(g('dstInput').value);
     if(dst_tid.length == 0)
     {
        sessionOff();
        return;  
     }
    
    var city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    var pars = formParsStr({sid: g('pid').value, ct: type, tid: dst_tid, lm:'21', bs:city, word: sword});  
    
    var tagStr = UrlEncode("´Ó") + sword + UrlEncode("µ½") + dst_tid;
    
    writePageLink(formParsStr({command: '#', sid: sword, tid: dst_tid, ct: '31', bs: city, word: tagStr}));
    
    
    new AjaxProxy(
       's',
       pars,
       cbOnSuccess,
       cbOnFailure,
       BaiduMap.TIMES
       );

  };
  
  
  this.fromSearchDrive = function()
  {
    
       if(BaiduMap.sessionOn == true)  
         return;  
         
       try
       {
         sessionOn();
         monitor._fromSearch('5',cb_s_fromhereSuccess,cb_s_fromhereFail);
       }
       catch(Ex)
    {
      sessionOff();
    }  


  };
  
  
  this.fromSearchRoute = function()
  {
    
       if(BaiduMap.sessionOn == true)  
       {
         return;
       }
       
       try
       {
         sessionOn();
         monitor._searchRoute();
       }
       catch(Ex)
    {
      sessionOff();
    }
         
  

  };
  
  
  this.fromSearchBack = function()
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         sessionOn();
         monitor._searchBack('2',cb_s_fromSearchBackSuccess,cb_s_fromSearchBackFail);
       }
       catch(Ex)
    {
      sessionOff();
    }
    
    
      
      

  };
  
  
  this.searchRange = function (type)
  {
    
    
    
       if(BaiduMap.sessionOn == true)  
       {
         return;
       }
    
    
    
    try
       {
         sessionOn();
         
         var rangeSelect = g('rangeList');
      var rangeValue = rangeSelect.options[rangeSelect.selectedIndex].value;
      var pars = formParsStr({ty:'near.jsp',pid: g('pid').value, cityCode: g('bs').value, poitype: type, pn: '0', rn: BaiduMap.numPerPage, width: BMap.width, height:BMap.height, range: rangeValue});
      
    writePageLink(formParsStr({command: '#', sid: g('pid').value, tid: g('pid').value, sz: rangeValue, dp: type, ct: '9', bs: g('bs').value, pn:'0', rn: BaiduMap.numPerPage}));

      showLoadingPanel();
      new AjaxProxy(
         'g',
         pars,
         cb_g_nearSuccess,
         cb_g_nearFail,
         BaiduMap.TIMES
         );
       }
       catch(Ex)
    {
      sessionOff();
    }
    
    
       
       

  }; 
  

  
  this.rporgSearch = function()
  {
    
       if(BaiduMap.sessionOn == true)  
       {
         return;
       }
      
    try
       {
         sessionOn();
         
         var g_xmlDoc = BaiduMap.g_result;
      
      var city = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('citycode');  
      var Org = g_xmlDoc.getElementsByTagName('op')[0];
    
      monitor._searchDetail(Org.getAttribute('pid'), Org.getAttribute('name'), city);
      
      
      
      
       }
       catch(Ex)
    {
      sessionOff();
    }
    
    

    
  };
  
  
  
  this.rpdestSearch = function()
  {
    
       if(BaiduMap.sessionOn == true)  
       {
         return;
       }
    
    try
       {
         
         sessionOn();
         
         var g_xmlDoc = BaiduMap.g_result;  
      var city = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('citycode');
      var Des = g_xmlDoc.getElementsByTagName('dp')[0];
                    
      monitor._searchDetail(Des.getAttribute('pid'), Des.getAttribute('name'), city);
      
      
      
      
       }
       catch(Ex)
    {
      sessionOff();
    }
    
    

  };
  

  
  this.detailSearchDrive = function()
  {
    
    
       if(BaiduMap.sessionOn == true)  
       {
         return;
       }
    
    try
       {
         sessionOn();
         
         var start = g("opid").getAttribute("value");
      var end = g("dpid").getAttribute("value");
      
      var g_xmlDoc = BaiduMap.g_result;
      var citycode = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('citycode');
      
      
      
      var pars = formParsStr({ty:'route.jsp', opid: start, dpid: end, cityCode: citycode, width: BMap.width, height:BMap.height});
        
      writePageLink(formParsStr({command: '#', sid: start, tid: end, bs: citycode, ct: '5', lm: '-1'}));
      

      showLoadingPanel();
      new AjaxProxy(
         'g',
         pars,
         cb_g_routeSuccess,
         cb_g_routeFail,
         BaiduMap.TIMES
         );
         
         
       }
       catch(Ex)
    {
      sessionOff();
    }
    
    

  };
  
  
  
  this.detailSearchBus = function()
  {
    
    
       if(BaiduMap.sessionOn == true)  
       {
         return;
       }
    
    try
       {
         sessionOn();
         
         var start = g("opid").getAttribute("value");
      var end = g("dpid").getAttribute("value");
      
      
      var g_xmlDoc = BaiduMap.g_result;
      var citycode = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('citycode');
      
      
      var  pars = formParsStr({ty:'bus.jsp', opid: start, dpid: end, cityCode: citycode, width: BMap.width, height:BMap.height});
      
      writePageLink(formParsStr({command: '#', sid: start, tid: end, bs: citycode, ct: '4', lm: '-1'}));
      
        
      showLoadingPanel();
      new AjaxProxy(
         'g',
         pars,
         cb_g_busSuccess,
         cb_g_busFail,
         BaiduMap.TIMES
         );
         
         
       }
       catch(Ex)
    {
      sessionOff();
    }
    
    

  };
  
  
  this._switchToHere = function()
  {
        
    
    
      var detail = g("detail");
      detail.style.display = "none";  
      var tohere = g("tohere");  
      tohere.style.display = "block";
      var fromhere = g("fromhere");
      fromhere.style.display = "none";
      var range = g("range");
      range.style.display = "none";
    
      if(g('orgInput') != null)
       {
        g('orgInput').focus();  
      }
      BMap.refresh();
  
  };
  
  
  this.switchToHere = function()
  {
    
    if(BaiduMap.sessionOn == true)  
         return;
    
    sessionOn();
    
    monitor._switchToHere();
    
    var pid = BaiduMap.s_result.getElementsByTagName('pid')[0].childNodes[0].nodeValue;
    var city = BaiduMap.s_result.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    var sname = BaiduMap.s_result.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
    writePageLink(formParsStr({command:'#', sid: pid, bs:city, ct:'40', word: UrlEncode(sname), st:1}));

    sessionOff();
  };
  
  
  this._switchToDetail = function()
  {
    var detail = g("detail");
    detail.style.display = "block";  
    var tohere = g("tohere");  
    tohere.style.display = "none";
    var fromhere = g("fromhere");
    fromhere.style.display = "none";
    var range = g("range");
    range.style.display = "none";
    
    var pname = BaiduMap.s_result.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
    formRefPage(UrlEncode(pname));
    BMap.refresh();
  };
  
  
  this.switchToDetail = function()
  {
    
    if(BaiduMap.sessionOn == true)  
         return;
    
    sessionOn();
    
    monitor._switchToDetail();
    
    var pid = BaiduMap.s_result.getElementsByTagName('pid')[0].childNodes[0].nodeValue;
    var city = BaiduMap.s_result.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    var sname = BaiduMap.s_result.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
    writePageLink(formParsStr({command:'#', sid: pid, bs:city, ct:'40', word: UrlEncode(sname)}));
    
    sessionOff();  
    
  };
  
  
  this._switchFromHere = function()
  {
    
    
    var detail = g("detail");
    detail.style.display = "none";
    var tohere = g("tohere");
    tohere.style.display = "none";
    var fromhere = g("fromhere");
    fromhere.style.display = "block";
    var range = g("range");
    range.style.display = "none";
    
    if(g('dstInput') != null)
    {
         g('dstInput').focus();  
    }
     BMap.refresh();
     
  };
  
  
  this.switchFromHere = function()
  {
    
    if(BaiduMap.sessionOn == true)  
         return;
    
    sessionOn();
    
    monitor._switchFromHere();
    
    var pid = BaiduMap.s_result.getElementsByTagName('pid')[0].childNodes[0].nodeValue;
    var city = BaiduMap.s_result.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    var sname = BaiduMap.s_result.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
    writePageLink(formParsStr({command:'#', sid: pid, bs:city, ct:'40', word: UrlEncode(sname), st:2}));
    
    sessionOff();

  };
  
  
  this._switchRange = function()
  {
    
    var detail = g("detail");
    detail.style.display = "none";
    var tohere = g("tohere");
    tohere.style.display = "none";
    var fromhere = g("fromhere");
    fromhere.style.display = "none";
    var range = g("range");
    range.style.display = "block";
    
    BMap.refresh();
  
  };
  
  
  this.switchRange = function()
  {
    
    if(BaiduMap.sessionOn == true)  
         return;
    
    sessionOn();
    
    monitor._switchRange();
    
    var pid = BaiduMap.s_result.getElementsByTagName('pid')[0].childNodes[0].nodeValue;
    var city = BaiduMap.s_result.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    var sname = BaiduMap.s_result.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
    writePageLink(formParsStr({command:'#', sid: pid, bs:city, ct:'40', word: UrlEncode(sname), st:3}));
    
    sessionOff();

  };
  
   
  this.changeRoute = function(num)
  {
    
    
      
       if(BaiduMap.sessionOn == true)  
         return;
         
       sessionOn();
       
       num = parseInt(num);
       
       if (num >= BaiduMap.numRoute)
       {
         sessionOff();
         return;
       }
      
  
  
    var td_name = g("td_name_" + (parseInt(BaiduMap.currRouteIndex) + 1));
    
    td_name.style.backgroundColor = BaiduMap.bgRouteNormal;
    
    var td_content = g("td_content_" + (parseInt(BaiduMap.currRouteIndex) + 1));
    
    td_content.style.backgroundColor = BaiduMap.bgRouteNormal;
    
    td_name = g("td_name_" + (num + 1));
    
    td_name.style.backgroundColor = BaiduMap.bgRouteSelected;
    
    td_content = g("td_content_" + (num + 1));
    
    td_content.style.backgroundColor = BaiduMap.bgRouteSelected;        
    BaiduMap.currRouteIndex = num;
    
    var g_xmlDoc = BaiduMap.g_result;
    
    
    
    var op = g_xmlDoc.getElementsByTagName('op')[0];
    var opoint = op.getAttribute('poi');
    var opname = op.getAttribute('name');
    var opid = op.getAttribute('pid');
    var opaddr = op.getAttribute('addr');
    
    var dp = g_xmlDoc.getElementsByTagName('dp')[0];
    var dpoint = dp.getAttribute('poi');
    var dpname = dp.getAttribute('name');
    var dpid = dp.getAttribute('pid');
    var dpaddr = dp.getAttribute('addr');
    
    var city = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('citycode');
    
    BMap.removeAll();
    
    BMap.addOrgPoint(opoint,cutStr(opname,BaiduMap.tooltipsLength),formTiplink(opname, opid, city, opaddr, null, null, null));
    BMap.addDesPoint(dpoint,cutStr(dpname,BaiduMap.tooltipsLength),formTiplink(dpname, dpid, city, dpaddr, null, null, null));
    
    
    
    
    
    
    var route = g_xmlDoc.getElementsByTagName('item')[num];
    for(var it=route.firstChild; it!=null; it=it.nextSibling)
      {
        if(it.nodeName == 'walk')
        {
          if(it.childNodes.length > 0)
          {
            BMap.showRoute(BMap.walkLineColor, it.childNodes[0].nodeValue);  
          }  
        }
        
        if(it.nodeName == 'vehicle')
        {
          if(it.childNodes.length > 0)
          {
            BMap.showRoute(BMap.carLineColor,it.childNodes[0].nodeValue);  
          }  
        }
        
        if(it.nodeName == 'point')
        {
          if(it.childNodes.length > 0)
          {
            BMap.addTurnPoint(it.childNodes[0].nodeValue);  
          }  
        }  
      }
    
    BMap.refresh();
    
       
    sessionOff();  
  };
  
  this.nPage = function(pn)
  {
        
       if(BaiduMap.sessionOn == true)  
         return;
         
       try
       {
         sessionOn();
         
         var g_xmlDoc = BaiduMap.g_result;
       
         var pid = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('pid');
         var city = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('citycode');
         var rangeValue = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('range');
         var pType = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('poitype');

         var rn = g_xmlDoc.getElementsByTagName('pois')[0].getAttribute('count');
         var pars = formParsStr({ty: 'near.jsp', pid: pid, cityCode: city, range: rangeValue, poitype: pType, pn: pn, rn: rn, width: BMap.width, height: BMap.height });       
         writePageLink(formParsStr({command: '#', sid: pid, tid: pid, sz: rangeValue, dp: pType, ct: '9', bs: city, pn:pn, rn:rn}));
         
         showLoadingPanel();
         new AjaxProxy(
         'g',
         pars,
         cb_g_nearSuccess,
         cb_g_nearFail,
         BaiduMap.TIMES
         );
           
       }
       catch(Ex)
    {
      sessionOff();
    }
               
       

      
  };
  
  
  this.rPage = function(pn)
  {
    
       if(BaiduMap.sessionOn == true)  
         return;
    
    
    try
       {
         sessionOn();
         
         
      var currPage = (parseInt(BaiduMap.currRouteIndex)/4);
      if(currPage<1)
      {
        currPage = 1;  
      }
      else if(currPage < 2)
      {
        currPage = 2;  
      }
      else
      {
        currPage = 3;  
      }
      var tbDiv = g("bus" + currPage);
      
      tbDiv.style.display = "none";
      
      
      
      tbDiv = g("bus"+pn);
      
      tbDiv.style.display = "block";
      
      sessionOff();
      
      monitor.changeRoute((pn-1)*4 );
      
      
       
       }
       catch(Ex)
    {
      sessionOff();
    }  
    
    
    
  };
  
  
}; 
  

 
 
  
function cbSearchFail()
{
  
  pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.downMsg;
  hideLoadingPanel();
  BMap.showMapLayer();  
  sessionOff();  
};

 
function cbSearchSuccess(searchResult)
{
      
  var url = "";
  var pars = "";  
  
  try
  {
    var s_xmlDoc = searchResult.responseXML;
  
    BaiduMap.s_result = s_xmlDoc;
           
     var resultType = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
       
        
        clearWebPanel();
        
        switch(resultType)
          {
           case '10':  
           {
             
            writeBack(s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue);
                      
             
             Controller.switchView(viewTable.plist, s_xmlDoc);                   
             break;    
           }
           case '20':  
           {
             
        var adurl = s_xmlDoc.getElementsByTagName('adurl')[0].getAttribute('url');
        if(adurl != null && adurl != "")
        {
          var linkstr = "";
          linkstr += "#word=src:";
          linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
          linkstr += "_1&bs=";
          linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
          linkstr += "&ct=21&src=1";
          showAdCtrip(linkstr);
        }
        else
        {
          hideAdCtrip();
        };    
        
        if(checkSrcTypeSearch() == true)
        {
      
          writeBack("");
          
          
        }
        else
        {
        
          writeBack(s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue);
        };

          

             pars = "ty=poi.jsp";
           
              var count = s_xmlDoc.getElementsByTagName('resnum')[0].childNodes[0].nodeValue;
             if(count > 0)  
             {
               pars += "&pid=";
               var s_items = s_xmlDoc.getElementsByTagName('item');
       
                 
                 for(var i=0; i<s_items.length - 1 ; i++)
                {
                 pars += s_items[i].getAttribute("id") + ";";
                 }
               pars += s_items[s_items.length-1].getAttribute("id");
             }
          
             pars += "&width=" + BMap.width +"&height=" + BMap.height;
             pars += "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
             showLoadingPanel();
             new AjaxProxy(
                   'g',
                   pars,
                   cb_g_presultSuccess,
                   cb_g_presultFail,
                   BaiduMap.TIMES
               );
               
     
             
             Controller.switchView(viewTable.presult,s_xmlDoc);
             break;    
           }  
         
           case '21':  
           {
             

        hideAdCtrip();
            
        
        if(g(elementTable.queryBar).value != "")
        {
          writeBack(g(elementTable.queryBar).value);
        }
        else
        {
          writeBack(s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue);  
        }
            
        

        

             
             
             formRefPage(UrlEncode(s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue));
             pars = "ty=poi.jsp";
             pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
             pars += "&width=" + BMap.width +"&height=" + BMap.height;
             pars += "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
             showLoadingPanel();
             new AjaxProxy(
                   'g',
                   pars,
                   cb_g_pdetailSuccess,
                   cb_g_pdetailFail,
                   BaiduMap.TIMES
                 );
                 
        Controller.switchView(viewTable.pdetail, s_xmlDoc);          
             break;    
     
           }
      case '22': 
      {

        var linkstr = "";
        linkstr += "#word=src:";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "_1&bs=";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "&ct=21&src=1";
        showAdCtrip(linkstr);
        
        
        if(g(elementTable.queryBar).value != "")
        {
          writeBack(g(elementTable.queryBar).value);
        }
        else
        {
          writeBack(s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue);  
        };

        
             formRefPage(UrlEncode(s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue));
             pars = "ty=poi.jsp";
             pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
             pars += "&width=" + BMap.width +"&height=" + BMap.height;
             pars += "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
             showLoadingPanel();
             new AjaxProxy(
                   'g',
                   pars,
                   cb_g_pdetailSuccess,
                   cb_g_pdetailFail,
                   BaiduMap.TIMES
                 );
                 
        Controller.switchView(viewTable.pchotel, s_xmlDoc);          
             break;  
          
      }
      case '23': 
      {

        hideAdCtrip();
        
        if(g(elementTable.queryBar).value != "")
        {
          writeBack(g(elementTable.queryBar).value);
        }
        else
        {
          writeBack(s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue);  
        };

        
             formRefPage(UrlEncode(s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue));
             pars = "ty=poi.jsp";
             pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
             pars += "&width=" + BMap.width +"&height=" + BMap.height;
             pars += "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
             showLoadingPanel();
             new AjaxProxy(
                   'g',
                   pars,
                   cb_g_pdetailSuccess,
                   cb_g_pdetailFail,
                   BaiduMap.TIMES
                 );
                 
        Controller.switchView(viewTable.pcplace, s_xmlDoc);          
             break;  
          
      }

           case '12':   
           {
             
             var city = s_xmlDoc.getElementsByTagName('cname')[0].childNodes[0].nodeValue;
             
             writeBack(city);
                 
             pars = "ty=poi.jsp&"+"width=" + BMap.width +"&height=" + BMap.height + "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
     
             showLoadingPanel();
             new AjaxProxy(
                   "g",
                   pars,
                   cb_g_presultSuccess,
                   cb_g_presultFail,
                   BaiduMap.TIMES
               );
               
             
             Controller.switchView(viewTable.pcity, s_xmlDoc);  
             break;    
           }
           case '11':  
           {
             
            writeBack(s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue);
             
             
             Controller.switchView(viewTable.rlist, s_xmlDoc);      
             break;    
           }
       
           case '30':  
            {
              
              writeBack(s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue);
              
        
              
              pars = "ty=poi.jsp&"+"width=" + BMap.width +"&height=" + BMap.height + "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
              
              showLoadingPanel();
              new AjaxProxy(
                    "g",
                    pars,
                    cb_g_presultSuccess,
                    cb_g_presultFail,
                    BaiduMap.TIMES
                  );
                  
             
             Controller.switchView(viewTable.rorg, s_xmlDoc);
                  
              break;    
            }
           
            case '50':   
            {
              
              writeBack(s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue);
              
              
              Controller.switchView(viewTable.pft, s_xmlDoc);      
              break;    
            }
            case '403':   
            {
              
              showNone();
  
              break;    
            }
            case '500':   
            {
              
              
              Controller.switchView(viewTable.down, s_xmlDoc);
              break;  
            }
            default:
            {
              
              
              
              BMap.removeAll();
              
              
              BMap.setCenterAndZoom(BMap.center, BMap.scale);
        BMap.refresh();
              BMap.showMapLayer();
              hideLoadingPanel();
              sessionOff();    
            }
                
           }
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();    
  }
         

};


function cb_x_exception(ex)
{
    if(ex.errorCode == Controller.errorEnum.nullInnerHTMLException)
    {
      
      sessionOff();
      
      window.location.reload();
    }
    
    
    return;
};


function showNone()
{
  
  var s_xmlDoc = BaiduMap.s_result;
  
  var isRoute = s_xmlDoc.getElementsByTagName('isroute')[0].childNodes[0].nodeValue;
  if(isRoute == '0')
  {
      writeBack(s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue);
  }
  else 
  {
     
     writeBack("´Ó" + s_xmlDoc.getElementsByTagName('start')[0].childNodes[0].nodeValue + "µ½" + s_xmlDoc.getElementsByTagName('terminal')[0].childNodes[0].nodeValue);  
  }
  
  
  Controller.switchView(viewTable.none, s_xmlDoc);
};


function cb_x_downSuccess()
{
  
  if(pageElement.get(elementTable.queryBar) != null)
  {
    pageElement.get(elementTable.queryBar).focus();  
  }
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};


function cb_x_downFailure()
{
  pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.downMsg;
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();    
};


function cb_x_pftSuccess()
{
  
  if(pageElement.get(elementTable.queryBar) != null)
  {
    pageElement.get(elementTable.queryBar).focus();  
  }
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};


function cb_x_pftFailure()
{
  pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.downMsg;
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};


function cb_x_noneSuccess()
{
  
  
  if(pageElement.get(elementTable.queryBar) != null)
  {
    pageElement.get(elementTable.queryBar).focus();  
  }
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};


function cb_x_noneFailure()
{
  pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.downMsg;
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};


function cb_x_rorgSuccess()
{

  
  if(g('orgList') != null)
  {
    g('orgList').focus();  
  }
  else if(g('destList') != null)
  {
    g('destList').focus();  
  }
    
};


function cb_x_rorgFailure()
{
  pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.downMsg;
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};


function cb_x_rlistSuccess()
{
    
  if(g('rbsList') != null)
  {
    g('rbsList').focus();  
  }
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};


function cb_x_rlistFailure()
{
  pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.downMsg;
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};


function cb_x_plistSuccess()
{
    
  if(g('pbsList') != null)
  {
    g('pbsList').focus();  
  }
    
  BMap.showMapLayer();
  hideLoadingPanel();
  sessionOff();
    
};


function cb_x_plistFailure()
{
  pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.downMsg;
  BMap.showMapLayer();
  hideLoadingPanel();
  sessionOff();
  
};
  
 
function cb_g_presultSuccess(searchResult)
{
  
  try
  {
    hideLoadingPanel();
      
    var g_xmlDoc =searchResult.responseXML;
    
    BaiduMap.g_result = g_xmlDoc;   
    
    
    
    var s_xmlDoc = BaiduMap.s_result;
        
    var count = g_xmlDoc.getElementsByTagName('pois')[0].getAttribute('count');
    
    var city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
    
    BMap.removeAll();
    
    if(count > 0)  
    {
      var g_items = g_xmlDoc.getElementsByTagName('pid');
      var s_items = s_xmlDoc.getElementsByTagName('item');
    
      
      
      
        
        for(var i=0; i<g_items.length; i++)
         {
        BMap.addPOI(i+1,g_items[i].childNodes[0].nodeValue, cutStr(s_items[i].getAttribute('name'),BaiduMap.tooltipsLength), formTiplink(s_items[i].getAttribute('name'), s_items[i].getAttribute('id'), city, s_items[i].getAttribute('addr'), s_items[i].getAttribute('fromurl'), s_items[i].getAttribute('viewurl'), s_items[i].getAttribute('pic')) );
            addMMpreloadImage( s_items[i].getAttribute('pic') );
      }
    }
       
    var center = g_xmlDoc.getElementsByTagName('center')[0];
    if(center.childNodes.length > 0)
    {
      center = center.childNodes[0].nodeValue;  
    }
    else  
    {
      center = BMap.center;    
    }
    
    var scale = g_xmlDoc.getElementsByTagName('scale')[0];
    if(scale.childNodes.length > 0)
    {
      scale  = scale.childNodes[0].nodeValue;  
    }
    else  
    {
      scale = BMap.scale;
    }
    
    
    
    BMap.setCenterAndZoom(center, scale);
    BMap.refresh();
    BMap.showMapLayer();
    
    sessionOff();  
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  

};


function cb_g_pdetailSuccess(searchResult)
{
  try
  {
    hideLoadingPanel();
    
      
    var g_xmlDoc =searchResult.responseXML;
    
    BaiduMap.g_result = g_xmlDoc;   
    
    
    var s_xmlDoc = BaiduMap.s_result;
    
    var city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;

    var g_items = g_xmlDoc.getElementsByTagName('pid');
    
    var pname = s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
    var addr = "";
    if(s_xmlDoc.getElementsByTagName('addr')[0].childNodes.length > 0)
    {
      addr = s_xmlDoc.getElementsByTagName('addr')[0].childNodes[0].nodeValue;  
    };
    var pid = s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;

     
     
    var resultType = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
    
    if(resultType == 22)
    {
      var fromurl = null;
      if(s_xmlDoc.getElementsByTagName('outlineurl')[0].childNodes.length > 0)
      {
        fromurl = s_xmlDoc.getElementsByTagName('outlineurl')[0].childNodes[0].nodeValue;
      };

      var viewurl = null;
      if(s_xmlDoc.getElementsByTagName('gloabeurl')[0].childNodes.length > 0)
      {
        viewurl = s_xmlDoc.getElementsByTagName('gloabeurl')[0].childNodes[0].nodeValue;
      };

      var picurl = null;
      if(s_xmlDoc.getElementsByTagName('pictureurl')[0].childNodes.length > 0)
      {
        picurl = s_xmlDoc.getElementsByTagName('pictureurl')[0].childNodes[0].nodeValue;
      };

    };
    
    BMap.removeAll();
    
      
    BMap.addConcernPoint(g_items[0].childNodes[0].nodeValue, cutStr(pname, BaiduMap.tooltipsLength), formTiplink(pname, pid, city, addr, fromurl, viewurl, picurl));

    addMMpreloadImage(picurl);

    var center = g_xmlDoc.getElementsByTagName('center')[0].childNodes[0].nodeValue;
    var scale = g_xmlDoc.getElementsByTagName('scale')[0].childNodes[0].nodeValue;
    
    
    
    BMap.setCenterAndZoom(center, scale);
    BMap.refresh();
    BMap.showMapLayer();
      
    sessionOff();    
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
    
  }

  
};


function cb_g_pdetailFail()
{
  
  
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};


function cutStr(str, slength)
{
  
  var i = 0;
  var j = 0;
  while(j<slength && i<str.length)
  {
      if(str.charCodeAt(i) < 128)
      {
        j += 1;  
      }
      else
      {
        j += 2; 
      }
      i++;
  }
  
  if(str.length <= i)
  {  
    return str;
  }
  
  var ret = str.substr(0, i) + "...";
  return ret;

};


function formTiplink(sName, sid, city, sContent, from_url, viewurl, picurl)
{
  sName = UrlEncode(sName);
      if(picurl != null && picurl != "" && picurl != undefined)
  {
    var html = "<html><body><table width='330'><tr><td>";
  }else{
    var html = "<html><body><table width='256'><tr><td>";
  }

  html += "<font class=tooltipcontent >" + sContent + "</font>";
        if(picurl != null && picurl != "" && picurl != undefined)
        {
     html +="</td><td width='74' align='right' valign='bottom' rowspan=4><div style='width:74px;overflow:hidden;'><img src='"+picurl+"' align='right'></div>";
        }
  html +="</td></tr><tr><td><font class=tooltipcontent></font>";
        if(from_url != null && from_url != "" && from_url != undefined)
  {
  
     html += "<font class=tooltipcontent><a class='ToolTiplinkAd' target='_blank' href='" + from_url + "'>¾Æµê¸Å¿ö</a></font>&nbsp;&nbsp;";
  }
  else
  {
     html += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
  }

  if(viewurl !=null && viewurl != "" && viewurl != undefined)
  {
     html += "<font class=tooltipcontent><a class='ToolTiplinkAd' target='_blank' href='" + viewurl + "'>360¶ÈÈ«¾°</a></font>&nbsp;&nbsp;";
  }
  else
  {
     html += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
  }
  
  html +="</td></tr><tr><td><font class=tooltipcontent></font></td></tr><tr><td><font class=tooltipcontent><A class='ToolTiplinkcolor' href='javascript:void(0)' onclick="+"\""+"monitor.toHere('"+sName+"','"+sid+"','"+city+"')"+"\""+">µ½ÕâÀïÈ¥</A>¡¡";
  html +="<A class='ToolTiplinkcolor' href='javascript:void(0)' onclick="+"\""+"monitor.fromHere('"+sName+"','"+sid+"','"+city+"')"+"\""+">´ÓÕâÀï³ö·¢</A>¡¡<A class='ToolTiplinkcolor' href='javascript:void(0)' onclick="+"\""+"monitor.range('"+sName+"','"+sid+"','"+city+"')"+"\""+">²éÕÒÖÜ±ß</A></font></td></tr></table></body></html>";
  return html;
  
};


function cb_g_presultFail()
{
  
  hideLoadingPanel();
  
  BMap.removeAll();
  BMap.showMapLayer();
  sessionOff();

};


function cb_s_presultSuccess(result)
{
    
  try
  {
      
    var s_xmlDoc =result.responseXML;     
    
    if(!checkForDown(s_xmlDoc))
    {
      return;  
    }
    
    BaiduMap.s_result = s_xmlDoc;
        
    
    var pars = "";
    
    var rType = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
    var city  = "";
    switch(rType)
    {
      case '20':  
      {
        var adurl = s_xmlDoc.getElementsByTagName('adurl')[0].getAttribute('url');
        if(adurl != null && adurl != "")
        {
          var linkstr = "";
          linkstr += "#word=src:";
          linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
          linkstr += "_1&bs=";
          linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
          linkstr += "&ct=21&src=1";
          showAdCtrip(linkstr);
        }
        else
        {
          hideAdCtrip();
        };

        if(checkSrcTypeSearch() == true)
        {
      
          writeBack("");
          
          
        }
        else
        {
        
          writeBack(s_xmlDoc.getElementsByTagName('word')[0].childNodes[0].nodeValue);
        };


        city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        var pidStr = "";
        var s_items = s_xmlDoc.getElementsByTagName('item');
           for(var i=0; i<s_items.length; i++)
           {
             pidStr += s_items[i].getAttribute('id')+";";
           }
       
           
           pidStr = pidStr.substring(0,pidStr.length-1);
       
           pars = "ty=poi.jsp";
           pars += "&pid=" + pidStr;
           pars += "&cityCode=" + city;
           pars += "&width=" + BMap.width;
           pars += "&height=" + BMap.height;
           
       
           showLoadingPanel();
           new AjaxProxy(
               'g',
               pars,
               cb_g_presultSuccess,
               cb_g_presultFail,
               BaiduMap.TIMES
             );
         
           
            Controller.switchView(viewTable.presult, s_xmlDoc);
        break;
      }
      case '21':  
      {
             
        hideAdCtrip();
             
             
             var pname = s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
             
             
             writeBack(g(elementTable.queryBar).value);
             
             formRefPage(UrlEncode(pname));
             
        city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
             
             pars = "ty=poi.jsp";
             pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
             pars += "&width=" + BMap.width +"&height=" + BMap.height;
             pars += "&cityCode=" + city;
             showLoadingPanel();
             new AjaxProxy(
                   'g',
                   pars,
                   cb_g_pdetailSuccess,
                   cb_g_pdetailFail,
                   BaiduMap.TIMES
                 );
                 
             
            Controller.switchView(viewTable.pdetail, s_xmlDoc);
        break;  
      }
      case '22':
      {

        
        var linkstr = "";
        linkstr += "#word=src:";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "_1&bs=";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "&ct=21&src=1";
        showAdCtrip(linkstr);

        

        var pname = s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
        
        
        writeBack(g(elementTable.queryBar).value);

        formRefPage(UrlEncode(pname));

        city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;

        pars = "ty=poi.jsp";
        pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
        pars += "&width=" + BMap.width +"&height=" + BMap.height;
        pars += "&cityCode=" + city;
        showLoadingPanel();
        new AjaxProxy(
            'g',
            pars,
            cb_g_pdetailSuccess,
            cb_g_pdetailFail,
            BaiduMap.TIMES
               );

        
        Controller.switchView(viewTable.pchotel, s_xmlDoc);
        break;  
      }
      case '23':
      {

             
        hideAdCtrip();
             
             
             var pname = s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
             
             
             writeBack(g(elementTable.queryBar).value);
             
             formRefPage(UrlEncode(pname));
             
             
        city = s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
             pars = "ty=poi.jsp";
             pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
             pars += "&width=" + BMap.width +"&height=" + BMap.height;
             pars += "&cityCode=" + city;
             showLoadingPanel();
             new AjaxProxy(
                   'g',
                   pars,
                   cb_g_pdetailSuccess,
                   cb_g_pdetailFail,
                   BaiduMap.TIMES
                 );
                 
             
        Controller.switchView(viewTable.pcplace, s_xmlDoc);
        break;  

      }
      case '403':  
      {
        showNone();
        break;
      }
      default:
      {
        hideLoadingPanel();
        BMap.showMapLayer();
        sessionOff();
        
        return;  
      }  
    }
    
    
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
    
  }
  
      
};



function cb_x_presultSuccess()
{
  
};


function cb_x_presultFailure()
{
  
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  

};

  
 
function cb_s_presultFail()
{
  
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
  
  
};




function cb_s_pdetailSuccess(result)
{
  try
  {
  
    
    var s_xmlDoc = result.responseXML;
    
    if(!checkForDown(s_xmlDoc))
    {
      return;  
    }
    
    BaiduMap.s_result = s_xmlDoc;
    
    
         var pars = "ty=poi.jsp";
         pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
         pars += "&width=" + BMap.width +"&height=" + BMap.height;
         pars += "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
         showLoadingPanel();
         new AjaxProxy(
             'g',
             pars,
             cb_g_pdetailSuccess,
             cb_g_pdetailFail,
             BaiduMap.TIMES
           );      
       
    
    
       var resultType = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
    switch(resultType)
    {
      case '21':
      {
      
        hideAdCtrip();  
        Controller.switchView(viewTable.pdetail, s_xmlDoc);
        break;
      }
      case '22':
      {
        var linkstr = "";
        linkstr += "#word=src:";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "_1&bs=";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "&ct=21&src=1";
        showAdCtrip(linkstr);

        Controller.switchView(viewTable.pchotel, s_xmlDoc);
        break;
      }
      case '23':
      {
        hideAdCtrip();
        Controller.switchView(viewTable.pcplace, s_xmlDoc);
        break;
      }
      default:
      {
        
      }
      
      
    };
    
    var pname = s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
    writeBack(pname);
    formRefPage(UrlEncode(pname));
    
        
    
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  
  
};


function cb_x_pdetailSuccess()
{

  monitor._switchToDetail();
  
};


function cb_x_pdetailFailure()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};



function cb_s_pdetailFail()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};


function cb_s_rorgSuccess(result)
{
  try
  {
    var s_xmlDoc = result.responseXML;
    
    if(!checkForDown(s_xmlDoc))
    {
      return;  
    }
    
    BaiduMap.s_result = s_xmlDoc;
      
    
    Controller.switchView(viewTable.rorg, s_xmlDoc);
    
    
    sessionOff();  
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  
  

};


function cb_s_rorgFail()
{
  
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};


function cb_g_busSuccess(result)
{

  try
  {
    hideLoadingPanel();
    clearWebPanel();
    hideAdCtrip();
    
  
    var g_xmlDoc = result.responseXML;
    
    BaiduMap.g_result = g_xmlDoc;
    
    var center = g_xmlDoc.getElementsByTagName('center')[0].childNodes[0].nodeValue;
    var scale = g_xmlDoc.getElementsByTagName('scale')[0].childNodes[0].nodeValue;
    var count = g_xmlDoc.getElementsByTagName('bus')[0].getAttribute('count');
    
    
    Controller.switchView(viewTable.busroute, g_xmlDoc);
    
    
    BaiduMap.currRouteIndex = 0;
    
    
    
    var op = g_xmlDoc.getElementsByTagName('op')[0];
    var opoint = op.getAttribute('poi');
    var opname = op.getAttribute('name');
    var opid = op.getAttribute('pid');
    var opaddr = op.getAttribute('addr');
    
    var dp = g_xmlDoc.getElementsByTagName('dp')[0];
    var dpoint = dp.getAttribute('poi');
    var dpname = dp.getAttribute('name');
    var dpid = dp.getAttribute('pid');
    var dpaddr = dp.getAttribute('addr');
    
    var city = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('citycode');
    
    writeBack("´Ó" + opname + "µ½" + dpname);
    
    BMap.removeAll();
    
    BMap.addOrgPoint(opoint, cutStr(opname,BaiduMap.tooltipsLength), formTiplink(opname, opid, city, opaddr,null, null, null));
    BMap.addDesPoint(dpoint, cutStr(dpname,BaiduMap.tooltipsLength), formTiplink(dpname, dpid, city, dpaddr, null, null, null));

    
    
    BMap.setCenterAndZoom(center, scale);
    
    
    
    
    
    if(count > 0)
    {
      var route = g_xmlDoc.getElementsByTagName('item')[0];
      for(var it=route.firstChild; it!=null; it=it.nextSibling)
      {
        if(it.nodeName == 'walk')
        {
          if(it.childNodes.length > 0)
          {
            BMap.showRoute(BMap.walkLineColor, it.childNodes[0].nodeValue);  
          }  
        }
        
        if(it.nodeName == 'vehicle')
        {
          if(it.childNodes.length > 0)
          {
            BMap.showRoute(BMap.carLineColor,it.childNodes[0].nodeValue);  
          }  
        }
        
        if(it.nodeName == 'point')
        {
          if(it.childNodes.length > 0)
          {
            BMap.addTurnPoint(it.childNodes[0].nodeValue);  
          }  
        }  
      }
    }
    
    
    BMap.refresh();
    BMap.showMapLayer();

    sessionOff();  
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  
  
};


function cb_x_busrouteSuccess()
{
  
};


function cb_x_busrouteFailure()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};


function cb_g_busFail()
{
  
  hideLoadingPanel();
  BMap.removeAll();
  BMap.showMapLayer();
  sessionOff();
};


function cb_g_routeSuccess(result)
{
  
  try
  {
    hideLoadingPanel();
    hideAdCtrip();  
    clearWebPanel();
    
    
  
    var g_xmlDoc = result.responseXML;
    
    BaiduMap.g_result = g_xmlDoc;
    
    var isRoute = g_xmlDoc.getElementsByTagName('route')[0];
    
    
    
    
    
    Controller.switchView(viewTable.driveroute, g_xmlDoc);
    
    
    
    var center = g_xmlDoc.getElementsByTagName('center')[0].childNodes[0].nodeValue;
    var scale = g_xmlDoc.getElementsByTagName('scale')[0].childNodes[0].nodeValue;

    var op = g_xmlDoc.getElementsByTagName('op')[0];
    var opoint = op.getAttribute('poi');
    var opname = op.getAttribute('name');
    var opid = op.getAttribute('pid');
    var opaddr = op.getAttribute('addr');
    
    var dp = g_xmlDoc.getElementsByTagName('dp')[0];
    var dpoint = dp.getAttribute('poi');
    var dpname = dp.getAttribute('name');
    var dpid = dp.getAttribute('pid');
    var dpaddr = dp.getAttribute('addr');
    
    var city = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('citycode');
    
    writeBack("´Ó" + opname + "µ½" + dpname);
    
    BMap.removeAll();
    
    
    
    BMap.addOrgPoint(opoint,cutStr(opname,BaiduMap.tooltipsLength),formTiplink(opname, opid, city, opaddr, null, null, null));
    BMap.addDesPoint(dpoint,cutStr(dpname,BaiduMap.tooltipsLength),formTiplink(dpname, dpid, city, dpaddr, null, null, null));

    
    
    BMap.setCenterAndZoom(center, scale);

    if(isRoute.getAttribute('flag') == '1')  
    {
      var line = g_xmlDoc.getElementsByTagName('line')[0].childNodes[0].nodeValue;
      
      BMap.showRoute(BMap.carLineColor, line);
      
    }
    
    
    BMap.refresh();
    BMap.showMapLayer();

    sessionOff();  
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  
  
};


function cb_x_driverouteSuccess()
{
  
};


function cb_x_driverouteFailure()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};



function cb_g_routeFail()
{
  
  hideLoadingPanel();
  BMap.removeAll();
  BMap.showMapLayer();
  sessionOff();
};


function cb_s_tohereSuccess(result)
{
  try
  {
  
    var s_xmlDoc = result.responseXML;
    
      
    if(!checkForDown(s_xmlDoc))
    {
      return;  
    }
    
    BaiduMap.s_result = s_xmlDoc;
    
    var type = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
    switch(type)
    {
      case '403':
      {
        
        showNone();
        
        
        break;  
      }
      case '42':
      {
        
        clearWebPanel();
        
        var items = s_xmlDoc.getElementsByTagName('item');
        
        if(items.length == 1)  
        {
          monitor._directSearchRoute();
          return;      
        }
          
        
         Controller.switchView(viewTable.tohere, s_xmlDoc);
        break;  
      }
      default:
      {
        return;  
      }
    }
    sessionOff();
    BMap.showMapLayer();
    hideLoadingPanel();  
  }
  catch(Ex)
  {
    sessionOff();
    hideLoadingPanel();
    BMap.showMapLayer();
  }
  
  
  
};


function cb_x_tohereSuccess()
{
  
  
  if(g('orgList') != null)
  {
    g('orgList').focus();  
  }  
  
};


function cb_x_tohereFailure()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};




function cb_s_tohereFail()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};


function cb_g_nearSuccess(result)
{
  
  try
  {
    hideLoadingPanel();
    clearWebPanel();
    
  
    var g_xmlDoc = result.responseXML;
    
    BaiduMap.g_result = g_xmlDoc;
    
    
    var g_items = g_xmlDoc.getElementsByTagName('item');
    
    
    Controller.switchView(viewTable.range, g_xmlDoc);
    

    if(g_items.length == 0)
    {
          sessionOff();  
          BMap.showMapLayer();
          return;
    }
    
    var g_pois = g_xmlDoc.getElementsByTagName('poi');
    var g_pids = g_xmlDoc.getElementsByTagName('pid');
    var g_names = g_xmlDoc.getElementsByTagName('name');
    var g_addrs = g_xmlDoc.getElementsByTagName('address');
    
    var city = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('citycode');

    
    BMap.removeAll();
    
    
    
      
      var html = "";
      
      for(var i=0; i<g_items.length; i++)
       {
                
         if(g_addrs[i].childNodes.length > 0)
      {
        html = g_addrs[i].childNodes[0].nodeValue;
      }
         
          BMap.addPOI(i+1, g_pois[i].childNodes[0].nodeValue, cutStr(g_names[i].childNodes[0].nodeValue, BaiduMap.tooltipsLength), formTiplink(g_names[i].childNodes[0].nodeValue, g_pids[i].childNodes[0].nodeValue, city, html, null, null, null) );
      }
     
    var center = g_xmlDoc.getElementsByTagName('center')[0].childNodes[0].nodeValue;
    var scale = g_xmlDoc.getElementsByTagName('scale')[0].childNodes[0].nodeValue;
    
    
    var concern = g_xmlDoc.getElementsByTagName("concern");
    var pid = g_xmlDoc.getElementsByTagName('result')[0].getAttribute('pid');
    var pname = "";
    var addr = "";
    if(concern.length > 0)
    {
        pname = concern[0].getAttribute('name');
        addr = concern[0].getAttribute('addr');
    }
    
    writeBack(pname);
    
    
    
    
    
    
    
    
    
    BMap.addConcernPoint(center, cutStr(pname, BaiduMap.tooltipsLength), formTiplink(pname, pid, city, addr, null, null, null));
    
    
    
    
    BMap.setCenterAndZoom(center, scale);
    BMap.refresh();
    BMap.showMapLayer();  
    
    sessionOff();  
    BMap.showMapLayer();
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  
  
};


function cb_g_nearFail()
{
  hideLoadingPanel();
  
  BMap.removeAll();
  BMap.showMapLayer();
  sessionOff();
};


function cb_x_rangeSuccess()
{
};


function cb_x_rangeFailure()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};


function cb_s_toSearchBackSuccess(result)
{
  try
  {
  
    
    var s_xmlDoc = result.responseXML;
    
    if(!checkForDown(s_xmlDoc))
    {
      return;  
    }
    
    BaiduMap.s_result = s_xmlDoc;
    
    var isBus = s_xmlDoc.getElementsByTagName('ib')[0].childNodes[0].nodeValue;
    
    
    
    Controller.switchView(viewTable.ptohere, s_xmlDoc);
    
    
    
  }
  catch(Ex)
  {
    BMap.showMapLayer();
    sessionOff();
  }
  
  

};


function cb_x_tobackSuccess()
{
  sessionOff();
  monitor.switchToHere();  
    
};


function cb_x_tobackFailure()
{
  pageElement.get(elementTable.txtPanel).innerHTML = BaiduMap.downMsg;
  BMap.showMapLayer();
  sessionOff();
};



function cb_s_toSearchBackFail()
{
  
  BMap.removeAll();
  BMap.showMapLayer();
  sessionOff();
};


function cb_s_fromSearchBackSuccess(result)
{
  try
  {
  
    
    var s_xmlDoc = result.responseXML;
    
    if(!checkForDown(s_xmlDoc))
    {
      return;  
    }
    
    BaiduMap.s_result = s_xmlDoc;
    
    var isBus = s_xmlDoc.getElementsByTagName('ib')[0].childNodes[0].nodeValue;
    
    
    Controller.switchView(viewTable.pfromhere, s_xmlDoc);
    
    
  }
  catch(Ex)
  {
    BMap.showMapLayer();
    sessionOff();
  }
  
  

};


function cb_x_frombackSuccess()
{
  sessionOff();
  monitor.switchFromHere();  
};


function cb_x_frombackFailure()
{
  
  BMap.removeAll();
  BMap.showMapLayer();
  sessionOff();  
};



function cb_s_fromSearchBackFail()
{
  
  BMap.removeAll();
  BMap.showMapLayer();
  sessionOff();

};


function cb_s_fromhereSuccess(result)
{
  try
  {
  
        var s_xmlDoc = result.responseXML;
          
        if(!checkForDown(s_xmlDoc))
        {
          return;  
        }
        
        BaiduMap.s_result = s_xmlDoc;
        
        
        var type = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
        switch(type)
        {
          case '403':
          {
            
            showNone();
          
            
            break;  
          }
          case '44':
          {
            
            clearWebPanel();
            
            var items = s_xmlDoc.getElementsByTagName('item');
            if(items.length == 1)  
            {
              monitor._directSearchRoute();
              return;      
            }
            
            
            
             Controller.switchView(viewTable.fromhere, s_xmlDoc);
            break;  
          }
          default:
          {
            return;  
          }
        }
        
        sessionOff();  
        BMap.showMapLayer();
  }
  catch(Ex)
  {
    BMap.showMapLayer();
    sessionOff();
  }
  
  

};


function cb_s_fromhereFail()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};


function cb_x_fromhereSuccess()
{
  
  
  if(g('destList') != null)
  {
    g('destList').focus();  
  }
    
  
  

  
};


function cb_x_fromhereFailure()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};



function cb_s_switchtoHereSuccess(result)
{
  try
  {
     
           
           var s_xmlDoc = result.responseXML;
           
    if(!checkForDown(s_xmlDoc))
    {
      return;  
    }
           
           BaiduMap.s_result = s_xmlDoc;
           
           var sname = s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
           writeBack(sname);
           
    if(BaiduMap.g_result == null) 
    {
      var pars = "ty=poi.jsp";
      pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
      pars += "&width=" + BMap.width +"&height=" + BMap.height;
      pars += "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
      showLoadingPanel();
      new AjaxProxy(
          'g',
          pars,
          cb_g_pdetailSuccess,
          cb_g_pdetailFail,
          BaiduMap.TIMES
             );    
    }

    
  
    var resultType = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
    switch(resultType)
    {
      case '21':
      {
      
        hideAdCtrip();  
        Controller.switchView(viewTable.ptohere, s_xmlDoc);
        break;
      }
      case '22':
      {
        var linkstr = "";
        linkstr += "#word=src:";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "_1&bs=";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "&ct=21&src=1";
        showAdCtrip(linkstr);

        Controller.switchView(viewTable.ptohere_chotel, s_xmlDoc);
        break;
      }
      case '23':
      {
        hideAdCtrip();
        Controller.switchView(viewTable.ptohere_cplace, s_xmlDoc);
        break;
      }
      default:
      {
        
      }
    };
  
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  

        

};


function cb_x_ptohereSuccess()
{
  try
  {
  
    monitor._switchToHere();
           
    hideLoadingPanel();
    sessionOff();  
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  
  
};


function cb_x_ptohereFailure()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};




function cb_s_switchtoHereFail()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};


function cb_s_switchfromHereSuccess(result)
{
  try
  {
  
           
           var s_xmlDoc = result.responseXML;
           
    if(!checkForDown(s_xmlDoc))
    {

      return;  
    }

           BaiduMap.s_result = s_xmlDoc;
           
           var sname = s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
           writeBack(sname);

    if(BaiduMap.g_result == null) 
    {
      var pars = "ty=poi.jsp";
      pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
      pars += "&width=" + BMap.width +"&height=" + BMap.height;
      pars += "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
      showLoadingPanel();
      new AjaxProxy(
          'g',
          pars,
          cb_g_pdetailSuccess,
          cb_g_pdetailFail,
          BaiduMap.TIMES
             );    
    }

    
    
    var resultType = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
    switch(resultType)
    {
      case '21':
      {
      
        hideAdCtrip();  
        Controller.switchView(viewTable.pfromhere, s_xmlDoc);
        break;
      }
      case '22':
      {
        var linkstr = "";
        linkstr += "#word=src:";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "_1&bs=";
        linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
        linkstr += "&ct=21&src=1";
        showAdCtrip(linkstr);

        Controller.switchView(viewTable.pfromhere_chotel, s_xmlDoc);
        break;
      }
      case '23':
      {
        hideAdCtrip();
        Controller.switchView(viewTable.pfromhere_cplace, s_xmlDoc);
        break;
      }
      default:
      {
        
      }
    };

  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  
  
  
  

};


function cb_x_pfromhereSuccess()
{
  try
  {
  
    monitor._switchFromHere();
           
    hideLoadingPanel();
    sessionOff();  
  }
  catch(Ex)
  {
    sessionOff();
    BMap.showMapLayer();
    hideLoadingPanel();
  }
  
  

};


function cb_x_pfromhereFailure()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};



function cb_s_switchfromHereFail()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();

};


function cb_s_switchRangeSuccess(result)
{
  try
  {

    var s_xmlDoc = result.responseXML;

    if(!checkForDown(s_xmlDoc))
    {
      return;  
    }

    BaiduMap.s_result = s_xmlDoc;

    var sname = s_xmlDoc.getElementsByTagName('pname')[0].childNodes[0].nodeValue;
    writeBack(sname);

    if(BaiduMap.g_result == null) 
    {
      var pars = "ty=poi.jsp";
      pars += "&pid=" + s_xmlDoc.getElementsByTagName('pid')[0].childNodes[0].nodeValue;     
      pars += "&width=" + BMap.width +"&height=" + BMap.height;
      pars += "&cityCode=" + s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue; 
      showLoadingPanel();
      new AjaxProxy(
          'g',
          pars,
          cb_g_pdetailSuccess,
          cb_g_pdetailFail,
          BaiduMap.TIMES
             );    
    }

    
    var resultType = s_xmlDoc.getElementsByTagName('type')[0].childNodes[0].nodeValue;
    switch(resultType)
    {
      case '21':
        {

          hideAdCtrip();  
          Controller.switchView(viewTable.prange, s_xmlDoc);
          break;
        }
      case '22':
        {
          var linkstr = "";
          linkstr += "#word=src:";
          linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
          linkstr += "_1&bs=";
          linkstr += s_xmlDoc.getElementsByTagName('bs')[0].childNodes[0].nodeValue;
          linkstr += "&ct=21&src=1";
          showAdCtrip(linkstr);

          Controller.switchView(viewTable.prange_chotel, s_xmlDoc);
          break;
        }
      case '23':
        {
          hideAdCtrip();
          Controller.switchView(viewTable.prange_cplace, s_xmlDoc);
          break;
        }
      default:
        {

        }
    };

  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  
};


function cb_x_prangeSuccess()
{
  try
  {
  
    monitor._switchRange();
    
    hideLoadingPanel();    
    sessionOff();    
  }
  catch(Ex)
  {
    hideLoadingPanel();
    BMap.showMapLayer();
    sessionOff();
  }
  
  

};


function cb_x_prangeFailure()
{
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();  
};


function cb_s_switchRangeFail()
{
  
  BMap.removeAll();
  hideLoadingPanel();
  BMap.showMapLayer();
  sessionOff();
};
