var recursosXML;
var recursos = new Array();
var iconos = null;
var marcadores = new Array();
// Marcador para la geolocalizacion
var marcadorGeolocalizacion = null;
// Para el como llegar
var gdir;

//Inicializa el mapa
function load(longitudInicial,latitudInicial,tipoSRInicial){
    var objMapa = document.getElementById("mapaGM");
    if(objMapa){
        var esSelector = (objMapa.className=="mapaSelector");
        if (GBrowserIsCompatible()){   
            map = new GMap2(objMapa);
            //Añade la capacidad de aumentar el zoom con doble click
            map.enableDoubleClickZoom(); 
            //si no es selector ponemos el control de mapa
            map.addControl(new GOverviewMapControl(new GSize(100,100))); 
            map.addControl(new GLargeMapControl());
            map.enableContinuousZoom();
            map.addControl(new GMapTypeControl());
            GEvent.addListener(map, "moveend", actualizarMapa);
            GEvent.addListener(map, "zoom", actualizarMapa);
            if(esSelector){ //si es selector ponemos el evento para añadir marcador en la posicion actual
                map.enableGoogleBar();  
                GEvent.addListener(map, "click", function(marker, point){
                                                    ponerLocalizacion(marker,point);      
                                                });
                //quitamos todos los eventos de doubleclick
                GEvent.clearListeners(map,"doubleclick");            
            }                
            //limites de la region
            limites = new GLatLngBounds(new GLatLng(38,-5.5), new GLatLng(41.4,-0.8));
                    
            //popup para mostrar el nombre de los recursos
            popupMarcador = document.createElement("div");
            map.getContainer().appendChild(popupMarcador);
            popupMarcador.style.visibility="hidden";
            popupMarcador.style.backgroundColor="#ffffff";
            popupMarcador.style.color="#990000";
            popupMarcador.style.padding="2px";
            popupMarcador.style.border = "1px solid black";      
            
            cargarIconos();   
            
            map.setCenter(new GLatLng(39.67406,-3.161336), 7);
            
            //cargamos la frontera de CLM
            cargarFrontera();

            //si hay punto inicial lo ponemos
            if(longitudInicial && latitudInicial){
                ponerLocalizacion(null,new GLatLng(latitudInicial,longitudInicial),tipoSRInicial);
            }

            //creamos objeto para el como llegar
            gdir = new GDirections(map);
        }           
    }
}

function loadEnProvincia(idProvincia){
    load();
    centrarEnProvincia(idProvincia);
}

//actualiza el mapa
function actualizarMapa(){    
    cargarRecursos();
}

//centra el mapa en una provincia concreta
function centrarEnProvincia(idProvincia){
    switch(idProvincia){
        case 1: //albacete
            map.setCenter(new GLatLng(38.801189392,-2.1203614), 8);
        break;
        case 2: //ciudad real
            map.setCenter(new GLatLng(39.014915729,-3.83972168), 8);
        break;
        case 3: //cuenca
            map.setCenter(new GLatLng(39.9181628466,-2.27966309), 8);
        break;
        case 4: //guadalajara
            map.setCenter(new GLatLng(40.709792012,-2.65319824), 8);
        break;
        case 5: //toledo
            map.setCenter(new GLatLng(39.78321267821705,-4.27368164), 8);
        break;
        default: 
            map.setCenter(new GLatLng(39.67406,-3.161336), 7);
        break;
    }    
}

//al pulsar en un check de categoria
function onClickCategoria(idtipo){
    cargarRecursos();
}            

//carga los iconos con los tipos de recurso
function cargarIconos()
{ 
    iconos = new Array();
    for (var i=1;i<=3;i++){
        iconos[i] = new GIcon();
        iconos[i].image = "/img/iconos/mapa-sr" + i + ".gif";
        iconos[i].iconSize = new GSize(20, 24);
        iconos[i].iconAnchor = new GPoint(10,23); 
        iconos[i].infoWindowAnchor = new GPoint(8,10);
    }
}

//carga los recursos necesarios en base a la vista actual
function cargarRecursos()
{
    var bounds = map.getBounds();
    var southWest = bounds.getSouthWest();
    var northEast = bounds.getNorthEast();

    var xizq = southWest.lng();
    var xder = northEast.lng();
    var ysup = northEast.lat();
    var yinf = southWest.lat();
    
    //obtenemos los tipos a mostrar
    var tiposMostrar = new Array();
    for (var i = 1; i <= 3; i++)
        if(document.getElementById('checkSR' + i))
            if(document.getElementById('checkSR' + i).checked)
                tiposMostrar.push(i);    
                                                       
    ejecutarAjax(
                    "/mapa/recursos.php",
                    "t="+tiposMostrar.join(",")+"&xizq=" + xizq + "&xder=" + xder + "&ysup=" + ysup + "&yinf=" + yinf,
                    "POST",
                    function(respuesta){
                        if(respuesta.length>0){
                            var xmlDoc = crearDocumentoXML(respuesta);                     
                            var lista = xmlDoc.getElementsByTagName("rec");  
                            recursosXML = new Array();
                            for(var i=0;i<lista.length;i++){
                                var idTipo = lista[i].getAttribute("t");
                                var posx = lista[i].getAttribute("x");
                                var posy = lista[i].getAttribute("y");
                                var id = lista[i].getAttribute("id");
                                var nombre = lista[i].getAttribute("nom"); 
                                var recurso = new Array(id,idTipo,posx,posy,nombre);
                                recursosXML.push(recurso);       
                            }
                            eliminarRecursosAntiguos();
                            var marcadoresNuevos = anadirRecursosNuevos();
                            dibujarRecursos(marcadoresNuevos);
                        } 
                    }
    );  
}

//elimina los recursos que ya no esten en la lista
function eliminarRecursosAntiguos(){
    var borrar = new Array();
    var existe;
    for(var i=0;i<recursos.length;i++){
        existe = false;
        var j = 0;
        while (!existe && j<recursosXML.length){
            if (recursosXML[j].toString() == recursos[i].toString())
                existe = true;                                      
            j++;
        }
        if (!existe)
            borrar.push(i);
    }
    
    for (var i=borrar.length-1;i>=0;i--){
        recursos.splice(borrar[i],1);
        map.removeOverlay(marcadores[borrar[i]]);
        marcadores.splice(borrar[i],1);
    }   
}

//añade los recursos nuevos a la lista
function anadirRecursosNuevos(){
    var marcadoresNuevos = new Array();
    for (var i=0;i<recursosXML.length;i++){
        var existe = false;
        var j = 0;    
        while (!existe && j < recursos.length){
            if (recursosXML[i].toString() == recursos[j].toString())
                existe = true;     
            j++;
        }   
        if(!existe){
            var punto = new GLatLng(recursosXML[i][3],recursosXML[i][2]);
            var marcador = crearMarcador(punto, iconos[recursosXML[i][1]], recursosXML[i][0], recursosXML[i][1], recursosXML[i][4]);
            recursos.push(recursosXML[i]);
            marcadoresNuevos.push(marcador);
        }        
    }
    return marcadoresNuevos;
}

//dibuja todos los marcadores nuevos y los añade a la lista de marcadores
function dibujarRecursos(marcadoresNuevos){
    for (var i=0;i<marcadoresNuevos.length;i++){
        marcadores.push(marcadoresNuevos[i]);
        map.addOverlay(marcadoresNuevos[i]);
    }    
}

//crea un marcador a partir de los datos del recurso
function crearMarcador(punto, icono, id, tipo, nombre){
    var marker = new GMarker(punto, icono);
    marker.tooltip = "<div>"+nombre+"</div>"; 
    GEvent.addListener(marker, "click", function() {
        ejecutarAjax(
                    "/mapa/detalle-recurso.php",
                    "n="+id,"POST",
                    function(respuesta){   
                        if(respuesta.length>0)
                            marker.openInfoWindowHtml(respuesta);
                    }
        );
    });  
    GEvent.addListener(marker, "mouseover", function() {
        mostrarPopupMarcador(marker);
    });
    
    GEvent.addListener(marker, "mouseout", function() {
        popupMarcador.style.visibility="hidden";
    });    
    return marker;
}

//carga la frontera de CLM en el mapa
function cargarFrontera(){    
    var encodedPolyline = new GPolyline.fromEncoded({
      color: "#8F011E",
      weight: 5,
      opacity: 1,
      points: "mnlgF|tpNvEoFlD}KfCmFrCoEtC{E|A}D[yCfCsG`DsHZkDqA_F?mFbAkDxBmD`DwCnAiCh@gBMiDXoF|DiCxB{DjB}Cf@{EZaG?aGJaGu@qFZwCt@mDMkEcAyCYwAnAcALgCY}E?_TjBmF?uGf@_GnDiDjBoEfHsHlRqV`O_UdNqT`GkShEqNlJ{L[gXbAsAg@{CyMuPoDoEu@_GbAqGhE}E~_@gf@`AuIaA_GkB}Ci@wCpAmDf@mE|AkEfCqGbIgPjBeIbAeIZyJt@}LhEwRbIiRjEcO?gYnAyBfCOjBcAzDmDpAoFfCuBhEyBrFoEdCcBnDs@fCu@rCqA`DmDpAkEbAqFt@}EbAaF`AaH?aOKeHf@qHf@mLyJaaAgC{E?mEZoEb\\_z@|Lkb@|Do[LqH|AiJfCiJpFoUxBmM~AeP[g`@`DqF|DiDbAsGcA}DgCgD{DmDcLmL}DgCu@uPh@kDu@kDJyC?iKu@gP_GtGcIdIqLhDmO?cLgC}LqFkMmFsNkDwPqFaOkEwP{JmOgJmRgJ{ReI{GgBeVvAwHeA}WmTcFwIqAmMi[{g@aDiD{G{DmGoEoAuI}DaUoDgKkBgQkBiKgKcO_GgQ{R{ZcQgQuH_N{JaGsKcHwHaVsK}KsY_UaDqHmDo[yEeJyJ?kJoMyJ{DqQqN_ReImRkJsSkTqIoFsNiByROqT`GeCs@kB}Dea@m\\kJgBcL?mGwBmO_U{DiDeFkD}I}DuKyJyJyKeFeIyG}L_BqFmG}DuH_@mmAio@iEq@gHp@iHhDgHO_}@qd@kRiCsFwCiEyBkR}DaT}MsF}KaDya@eKsOyBiJqFuHwM{j@i@_TmDcPkm@wv@cIsNwEsWcFob@qIyZwEcm@_G}KLqs@aD_VgHiX_JcXaAmEXgJkJydAoDaHcFuHqQ{S}IwP__@ef@s^iY}Ym\\_GqGsf@cl@{DcAmg@}Eqi@{Rie@_\\oYoNsc@a]aLePqFmFyZkw@}IcWcAsG|AaHdFeI~FoMlG{RrCoTlDiRpAiKqAsOu@qNh@cOhE{LhEaNhEkDfHeBtHwBt@qGf@eIxBaFll@kj@vEaNrCgRvMsgBkBsNaDmMmD_UkEqV_GwPkG{LyBwPMyQu@gYiB_\\gCuXqFmT_GoSoDkTeCiRkBaVwU}hCmDeJyBkDkBsNeCcWyBePwz@qxAqIaViJoUsKaUsNiSiRqVkj@sk@qFmMyGiRqIcWuH_\\sCcWrCuPh@{SXm[}AoSeF_NeKgJqNuIgPgIuPwJiM_GmT{Cu@yQYyKoDgdAu@gJg@gJsCiJiEuIeCgJaDwWuM~ZeN|LmLbPyJhJiJbBgH_@kBcAoDoMYcGzDuI`LqUjBqG`AaGkBiDcFcAsCyCYsFX}EzDuB~NgAXgJaAgJJ{KpAwJXaGcFgCmLs@gPdBuPtAoI?}IdAoI?oDwAZ}D[_GkB_FpAmEbFuHdC}FpAeHrCgJpFcHfHsHhEqFL{Du@_FgCiDmDgCmGu@kGt@cI`@eCeAMwBt@eBMyBwBmF}AcHcAwIYyIt@iDrCuAvB?rCoFhE{KpFkLrC{JhEwBnDsAtEN`DvB`DNdCsAnAwBKyBqAa@eC?wBq@gCmDaA}EnAgB|AgCjB_FnAgCbAyCbAgC|ASjBuBhBsGjBiDu@mDkB}DYkEt@gC|AgBjB}EjBiBvBPfCxBdC`@fHfC|As@MuBu@iBLuBt@oEf@qHaAmEyJgA_Ga@yG?cFcA_Ga@qFt@}De@jBgCt@{Ct@yDbAyCMoFjBwBu@{Cg@{CyB{DeC}D{LsA[iDLaG|AoE`DmFpFoElG}DdCPvB|DxB?jBmDLuJr@wW~AwJvBkCdC{D|D}DjGcAlGeBvEoFnIyQlDeBdFQtEtAvEnEbF`GzGtB`IeBdFqGdCsGdCQ`DzDvEbHt@nL[jLkBfJZzDrCzCbF`@rFQhEwC|FiBhE?|D`@lDr@`DhCjBfCvB?pAgCt@eIt@iDJ}D?aGbAcArSaGhENdCcAfCPpFQzDq@rCaGzDoE~F}EfC_F`AcH?qHt@qFpA_FnAoFvEgC~FmD~FgCxGa@vEgCzD{CnD}DtE?tCjDrCP~CeB|DeBpFyaEqFiKt@aGzDyJ|AyKt@}Df@}E}AeIu@{CoAs@?cHqAaGuEor@qIcPoAeIg@uIXwIt@iK?qMnA}L~A}D|Aa|@jGScfAmyCuMq]oL{RaIyQcI_NyJcO}NsI}q@iYaLsNsHuQmG{RqFiR{G}SmL_UcNaVJiJ?_G}F{CiHiDwB_FyBiRsPef@eFiSgPu^sPa^eFeHiEiKy\\c{@oDmEwtA}LmOwCkO{DoQmDaTeAkWb@mYvBkZlDq[xDs}@pF}^bA}`AbAu]bAo^eB{T?oNbHoIp@{cAvBwqAlDuUhDgM~EgHNkq@`NceAfYgiAha@uHfAwJhDc[~LyGa@gcBka@_uAe_@slAs}Bah@czAi`B_F{h@kCmdB_Uw}AmTyrAl[cvAaxA}SaViByCyeAmx@}AqGmlA}lB{DqUmD}M{IwPwJmTcKgYsH{Y{D_UmDuXiJgg@hJeInFaG|IuHpKsGvT{SpK_GxGuGdH}E|FoFrHmFxGcG|FaGxG_FlQ{LfEuH|AyCm[gtAaDu@{DwBoFkDqKiSwJkSsg@sz@eCsHaAwJkGoTk^udA_Qwn@_L{Ra[}a@{D}E_I_FmLgJyLuIaNiJiOuIaNgJgM_NsM}SaNoUgMsUwBkEqCmDyBiDoAiK?oFYcGoAoGoDcHgEaG}AaG}AsGoKql@yB}Ku@{KKmM?iRiOa`BkB{K_I_c@ePyw@_Q_d@r_@uoBtWikBjByILoNlIcm@|FyQfWwsA`[yKdUwBfWyBhWs@`XgBf_@yChJa@vTuXbj@k_AhJkKdH_NpKuOvJuQ|KgQnNyQ~KeQxLePxLwPpFyQb]sm@|S}Zpe@wo@zIePxL}Zz^s{@tEeJvBc]jBoVkBktAt@qHwBkJwEmFYsG|AgJhO_iA?wIKiJqAoVLgWMe`@Ys^kBc]qCeXqFePiJmLiWu`@{gAsnBoFgC?yIu}AqqAyLyJ_IkKgZ`\\ui@lk@cKnEwONyGq@{DlE_IpGuEOyGtBwT~L}SvQeUdXsHrHsM~EsP|DeMfCeyBnaAY|DaDzCeRdBsHN_lAhYaAwByGkfAwGkb@aIq\\eHgRgEsO{DuPwBaGa[dPoXpG_VnF{XeBe_@yIsd@|Dm[se@qZqFaSsHuE?cF~E_[`]_[tAyV~EyVwBql@|FwGzCiJxBuEfC}KtAmo@g_@a]fJwTqAyVeA}U?eCp@_`@iZei@cOiGhKmDzJcFbPoFbOiGrOsHdQwGdPcg@t^_IfBmDtBmD~EkDhDe_@|KyNdQiJzJkDLsMiDyVlLwB`@aFiCuEcAkG`@yIjDyGtAyINuJbAkL`@cURjBjLdHnz@r@|RiL|j@mNj[_D`Nr@pNYtPiB~LsCfKwBzKt@jJ~CbH`FzEzDfJfEbGrHtBzFjChEpG`FrGtErIlDnLvB`PnFnb@lDdPpCpOfEjLdClKuEjLoAjLgEjK_DxKsCnLiBrP?zRvBjLrCvP~CvPbCvRt@|RZfRhBhRhBvP|A|S|AtXnAt_@~Cf`@lDjYdCxZ~CxPr@rP?vWiBhp@Yl[[lc@tEbl@L`V?nN_DfI{DzEiB`GwBnE}PbHqF~EoUzKkBtB?|Dg@rG{AxDcPxC_SM}KjE_DxBuEL_DvAkGhDeHlDqHyCu@vQwB`GqCpGcFhDqCvA_DnGgE`Fu@lEsC~FoFnFiLrGeM~M{SbOuOpOqM`NuOxJmNdIur@ho@s\\jq@uh@~LgY`VuJzEuJfIuTdP_DhCaFbIeu@ps@yItHgEtI_DhJoKxY_DzDsCbO{FdI{DbI{AxIeMlMyb@v|@gEjScFzK{FjSoPdP{SjLwQwJiV{CqRiCm]eBgEr@{PoEaZjCoUxDuJkEkD_Fi`@sm@wLwAqM?eMbA_NvAkNfCmIcAkIiDwLu@kN?mD`@wLlDcf@mvAuV}Lij@mLiGwB}FwAa_AaV{FRuJ{CsJwAg~@k[{z@siAec@ol@kGcO}w@em@qR}L{KcAmdAkLe^mEkNyJaFoEsJkEqHuIcWyQiBsGmIkEcHqGsTQsO{C{PkEoRkC{PuByNN}R?uQbAo\\?o\\a@kNsAsJhCy_Au@c^?yNmF}~@gBaw@a]wn@yX{\\qHm\\sGeY`GqHvBuGhKaF|Kg@fJ|A`H[`GyDnEiBzEZ`Gg@rGg@vIzAdILtIeCfJe@nLmDdIs@bH|CjEbAvIr@zKf@~Eu@|EY`GKrH?pFkBQmAwAcAiDiBOiBtBwBlDkDp@sEdBaF~E}HvBeHxBs@xJsElE[|Et@bHpC`GvBxCnA|DbHrArEfCpCnErEdBnF`@xDdBbCnE|ArH?`GkB|EmApF?`G}AdIcCdI{FfCqMrGXtBbA|DzA|Df@~EkDtPu@dIwBbHK`G`AxCr@`GK|FeCjC{FbAeJdAsEfCiBzC}AdJXxI~CLjIeBnFPpC|DzAhDdCdAkIpGwGrAuG~EaFnEwBfJLjLgEhKkDdIJpFdCxC?hCMhDaAbHf@~E}ApF{A|EiBxD}AxBqCxBsE`@cCxCeC`@aArAK|DlFzKvBhD`FfArENxDr@vBvJXtHLfJwB`GyDdBqCeBu@yBcC|DqC|DqCjE}A~EKtH[bHlP|LbHbOoHxSaFnEqCeBoAoEqCyDsJgAcC?oAxBg@tHeCfQkDlTaFfC}C~FqCvHyD`G}AtJf@tOnAxBhBe@xDd@`FvCpCtHnAzCoAdCqCnMeClDiBbH{ArIXbH~CtAJjDY~EK|EzA~EbCbApC?|AeBjDc@`Ft@xD`@fEyBdERnAjEt@nFcA`GcCfCkDnEyDhDmDtAsEt@sErA_D|EcCtGMzE|ApF`AvIL`Ng@`OqHxK{FdI{KnEeJrAoFPuB~Fu@bHaF~LwSvPeJtBqCzDKvHJjMdC~EiBlEeCzD?`G|AnLpChKjDvJzAxJs@dIeCvBmFt@sE}DoFcHcHyC}C`AgEdAoH`@oF`@cMr@mFpGwBrNYpO`AdPhBtIhG|DfErHlAjJg@rI{AjJu@jLqCxK}CxJwGxCgGs@iBcHMwKnAmKhBwJ?eHkDgJ{FyDaF{CoFyB_FRaFfCwBbHcCbHf@|D`A|EjDdBjDjDlDzDvI|Kt@nGg@rGwBzCyDrAmFOgEyBmFMkIlFuGdI}AxJX~LKvJeCjKcCfJvBtIbCdHpHp@hNuHlP{ExUiBhXa@vItHzFlMf@lKaAdI_DzEsEnEyDdB_PcOiNoGsJ?cHbAuG`@mD`GqCfJhBvIjI`@rJgJbHa@nAvCaA`GwBpFcC~Ed@rIfEvIzWdP~ObHrJuAtGjDnAnFXjLKnL}A|EhBbHZdI?bHmDfC}CyCwBeIkDuIyDeI{FcG{FuByIjEeEvAoFhDqCrGyDa@{FqFuGyJeJcAcCdBcAvI_Fbf@J|KdCzCr@jEcChD[~EiBbH{AtHyDbH_DfCkDwBcHiCcHoGyDsGZgJtBmMbH{JlKmFhBaMcCuI{Fs@sEjCcCjLqCfJmDr@}CtBoAwYyDmD}Hd@}HjEkI}D{KgC}H`@oHlEyDzKJdXbAdIrEbHlK?fLbH~OvIlK|DhB~EiBpHMnL{AfJqCjEqCbHgElDwI?eO_FmFaGgEsV}CqOwBiIeEfAmDfCkD`HeJjDeE?wBhB}AxDmAnEaAtIcA|EdCrGzF`G|HpG~J|ElKtHpC|KvBzLYvImDfCmFvBaFxByD`@_Fp@wGd@gL_FgLoEyDsAsV~EsJu@s@kE`AsG?eIcCcHkD_F{FR_DxDeEjCqCxDXtHnAxJ|C~L~CdIxDrIlFbH|MlDtG`G`AbHs@lFeC|EqC`Gg@dIs@`GyDbAkDtAw_@_U}H}EqC{LcCgIwBkDyDN}CvB[xIbA`OlAlMZrNqCrAmD`@sEhBmFdBsEpGeEvIcAhD|ApF|C|DfEa@|HiBbHeBdEtAXfCaAxBg@hDaA|Ds@~EoA~EiBzDwBxD}CtAg@zCwBzCkDa@kDgA_DwCqCqFuBsHwB{K_D}DeEt@iBlF?dIwB~M{AlLeEjC{FbA{F{CsE_FyDoGyDcHaA}DsE?XNkFhCkBpGoApGaCrGiQfCwI?sEmE?oFnAsHbCyJ}CyJyDyJ_DqGcHcAcHhDoJgCsJgBcM`@wNdA{M?gLyJcMmEmFoFXwIY{KoAqGmFeAmFjDiBzKcCzKvDxJ}CpGiGb@uI`@oFmEyDuHYyJaCwJeC`@yDfC_DtHs@|LiBjD_D?kFiCgGlEkGjDcHeBpFsGfGqG|C}L`H}L?uHaHiCoFmEuDgC{DdBsE`@_DmEmFiDwDbAiGlE{RzKmFpG}CdPiGbAuI`@kGmEaHhCgBkDkB_NyD{KsEcAgGdBiGnFsExJ}CxJmFa@?mEmFiCiGkDkKfB}HiCmF`@_DnFcHdAgG`@oAqGiB_MmFmEmFhCaHlEmF|LmKlEwIa@iGoFcCuHoAsHmFcAmFpG}CzKbC`OvDbOt@`OuI`NeH|LcCrHwIa@aCsHqAc{@yDoUiPqGwNgBoOfByIrH{HbAm^o|Br@io@ae@{fAqSaO}HkDmKgBcHsHmF}LiBoF}{F}dBmqDefCqXe_@ua@_k@mP}LuiCyxEfZqbA~Lst@vIgn@pp@}dBlKg~@zCyJyMivCw\\{x@ahCkkBou@|[gh@b^cfBoFyDlE}CrHye@bOyMwIiBsHuIc@yRiR{MuIuNoFo`BekAqZoXuFaDmh@sx@qC}DuPw_@uAiCka@cS}VuPwk@aZgTsKgIiKwX{YaM~E_VxCeDi@eDwBcCeBgWiV_RzAmc@oFkTyCoU`@eF?aOgBuGuAyEuB}D{CgMcHyFmEiEkAqIyF_M{GcK_G{AYmFyC}CYyF}AqQj@mG}@sG?sElAqFr@aHh@aHr@_HNmE}A}B_FoC{EcBjMaRGoGs@oDq@w_@XwIY_MWwDLyGGiIOyFWeeAcCkZmEiD{@oC}AkYwQaAIYj@XvAz@dB~@dBNxBg@|BcBnBoBpBiBzAkAHwA[{A{@{AuAFeBp@gBaAcAsAPcBp@mA`Cu@zGk@fC{@t@iBf@kEfBuAFqDsAaC`@{AjAg@vBu@hCe@`D{@nEkAnCqApBuA|BsAfBiBdBiB~AuA`Dy@zCgAh@iB{@}Ba@uCOiCk@aByBgAqCwBWm@lAx@tEl@fCy@lAoAbAaBXgC?wDuAgEmBgAsC{AoCqCFaCNqDOeDgBuCO{@p@m@nBDvBQ|A{@?}b@aOsD{DsBsAaBqBcAgBaA{DaCeT_@kI}@iIaBkHcCoJ{B}HiHw\\aJw\\uIsd@{K}MwAyg@gWkuA_c@ap@}LuOco@pFwZdBeLvBsa@~Pyi@`i@gWv[}FnJue@rZkE~ECvXcA|HfBpKvCrOvDjKxFfClFdEvChNxArHxTbm@t@zGyCbSKjHaAnF{@rDfAdEnBtLpDtPnBnPl@hO?pRd@d[`@zOtBrGvA~FpEnTP`KJvLQtMP`VpK`]`Hv\\}BzV_Gl_@cD|PcDrV}Lz]sEbPr@pIhBzEcBbDe@`Du@dDyAtBoAh@iBO_BuAUy@qEtFoCxYoBrKsGlSmAjHy@xVoI`iAaFv}@wDze@gBzYuA~MyTxs@Ydf@pDnJz@lEPjKFdPxFtTnCxNzBdErFvn@}CtLqEnJcCpJ{BdMuAtL{BjHoBdA}BpCoCp@kTpJkOxJgFz@uKh@sMcAmOh@w\\pFeTdIqOdIkLlIeM`Kc\\jSmf@vToi@vQqMtHkL~IsSlTmLtH_WlMaJpFgJ~BmFlA}B~BkG~BqMbDmJ|E}HzGgTrO_E}Lkd@sw@mIzG_IfJcRng@sRxg@wPj^aCfJ}BzKsBrHUhCy@dEyFtW_FnQmBlE_OrS_GbHqG`GiAtA}LrH{XbScFjDqLnB_Fk@yOqGkGqCkUePaIsH{EqGuo@_X{C{@cCi@yF}A_K}AeUk@wh@eBqb@}DwNa@qVi@ga@mAkp@}Aa\\mAfI~[tKbb@v\\fpAtMji@fGz]sO|b@sQfd@gI~PaH|EcUxo@mAlSi\\dg@{CdE_@tE?vEd@~FhAhGnO|t@tGvMhFzGjFtIjG`G|]r^RfMmI~T{A|AbDzKeOnQoLjS{BbDoIhG}b@rp@kVzZcK|SgJzVqD~IiKpKmQbHo]l[ww@jw@_IjLqF|DaJjP{I|SgJfUwE~E}DlPa@tPyAjKmGxNcPrOgOtP{`A|_AsGbLqEjHoEvMyElLmAvBae@tb@uCrDuSrZwa@lu@uKdIom@nUgNbHsIlHgFdQyQxk@mInX_Zt_@}PfQ}L~EuAzDf@nBfCxCpC`G~@f\\bEfJrIhK|p@~[bp@tWxHQdPOdWNbGr@vVjSiDhYLtIkMxJ_ZfJgq@`]s`@lEaUuAiKeB}WqU_QwByOwIuFwJw_@_Fx\\knAkQoj@g@iK}Ua@mLlTuTdf@i_@r^c{@bt@wOtm@gIha@cPvIcCbWaCvQmH?qKPsN~TiFfJcLdIiMlLmg@f`@cLdIcGbH}GnFyHrHqLvIwOtH}EvB{JvBoLbHaYjb@kMxJiFlToAxQf@fJyAjS}AxJuDs@uBPaCp@kFq@oCQ`Aha@eIdf@oAvQYjKiFyJ_FmEqGuA_JvBwMPmJoFeReAgMcHcNmMcLqNaCwIfTs^fB}DzAmEJkDqBiKiDwBw_@wIkc@eXw^eP{Sg`@_HcAgKmEs|@kp@o}@se@k\\e_@wQgYcRa]uRc^yWy~@aJu^gBgJyLcWaQyeAwFo\\kJ{RuMcHke@|LsKdAcPgBs_@tA}x@hCod@xColAl[_t@wBsvAih@eR{Dej@{R{o@rOkQ`@oPo\\_Uq]se@cWePcOoEkSnYoU|TkKtMyJfBqqA`LwdAbCqs@pVa]rIa]fX}q@fVio@dKg`@jHsOmWal@qPwXLeg@gmAwpBqX}i@qC{Kip@wg@}GuPyHfJqIrHoEnMwJjDuVjSkHs@wHjDqf@~q@iFyJgOqG}EsG}IgCcGyByFq@qTaN_LyCoYOsc@wIgV_FgSkLiMoFyJ_MsMsO_UuPkJ}EaAuAym@{CssAjDeKcAiS}L}E}DqTvP}T`Haf@d_@uZr]eDfCyHzKuSeB_`@dIo]d_@ug@bAk`AjDiQfJm`Auf@wz@i|A{[tAgOnFoTlEqa@kDg^_NoEvBmf@yJauAhKmTfBicAnU{IxQaLjLyLnMoIrHgOzC}GzDoEfJoEnMgBvIg@fJzCpULrO}EvQgQtPaEjDiFnF_YvXmR~Tku@|i@iDbPifAflAiM`VexApaAwFyC}aB~\\{C}LkLaOkl@ce@cg@wXkf@}L}Zs@_TdAyYzDaa@lLwHnFaKvXaPbH}g@xcB{a@za@qObWez@~`AwAtPcv@dPmEr@gMzZgF~MuFxg@ye@vXm]`jAgd@vn@_]bm@mRxY{GfQ{EhJuj@zi@}i@du@wLbHwJzKiHhRaGrVcKd_@_LbPgFvBuHfBwH?cIpGoI|L}IvPgFvQ{CzDeDyCcEiCcIdA{CgBc@{DcAwBaG|EuF?sBhCiHnMcI|EgJpFwJtIqKlLiLbPwHhRoCjKgFfQyCjScG|SaGlMuFnMaCnMkPrOe^r^qb@fXaEpNaE`OsDpN}G`OoIvPcIfJnE`OM~LeB~M{ErO{EdPeD|LwJjZcExRsBtWgBtWKhRe`@zrBgDfC{IrVmR`@oo@l[eFzKqm@lq@wN~EoM~r@f@hKdBtHlEdIrBdIL~Ms@ppAc^lgA}w@bm@yR`@oGfBeFzDeu@~c@o`@bH{EnFmEbHeDjKwBbHaEfJwCzK?`GdBvJrFpNlCnTtHzi@`CrGbErHdDlLtF~MrUfg@d`@`eC}CrdCtBd_@dFv`@~IjZpMnT`OzS`CxC~u@OfiANnEjCv_@ji@rh@n]xCPhl@cOpQfIpd@lEzkAmx@p\\ql@pMs@~l@zp@}@jp@_Nlj@a\\~[eZqFwa@z`@aCjL_TryA}\\d|@{GbHu[fo@ob@tWg`@`e@uHxIcMzEoG~EmAvIpE~TjsA|j@hl@`sClGzK|m@`l@rUeBkR|nAaA`OuNlx@uBnUuBjYaEl\\mCr^YvI}Klj@mKjSu@vPt@`HjEtHxJtIzMpNnqApwA`~@rcAe@~Ed@bH`EhJpEbX`CfPjAzb@g@tPmCbOiF|KiJ`GmEzEgBvBc@fJvCpMnIbPzTf`@fDtPnEtP`AzRjCpUpMjS~Qr^kt@`\\uDxDsDxJaAhKmo@zfAiBlE}IhRaE~EqOvIgJ|EkJlE{I`Gli@fzAnIdv@lCxJnIxJpMzJdQxSjN`VzTbe@jLvXtFtWdBdXs@vPc@jEtLfXt@zCwBjEaExC_E|DcCrHaEfJaEzKiHtHmG`GeKxCoI}DmEcAuDlEq@xJV`N`AfQVjL_CfC}MfA}GvCiFzDfBvI`CdId@rHsD`G{E`G{AfPbA`PVjSs@fQKzQu@bQe@tHaZq@mTtB{TfBgHr@}KxC}K`GeMhKeShK{VbH}b@hBu[vRwLhJ{AfB?`HXfJLrO`CvXJrOYrOyAdPg@rOeDjKmEhKgOpGkg@tHcG`@uHlE}MxJ_TjSwx@cHsh@f`@mVho@i_@bf@rb@zYhTuArQtXjT~}AzCt_@|GfW``@dh@gFhh@{VdWaObW}AdIiLtPcSbOuFa@{CuAgDkDaEgBgDkD{C}LsDeIoE{KyCmEgDwBcIaGeQaPwc@qM{KeBiLyBcIa@mE|D{ErHuFdIaGpNmEvPuFtPoGlSaG`WaE~Te@zK|Mhp@rFhRhF~TjAbHaMbHoGfB}M`@eOOqQ_F`GqwAsD}[ia@mj@sn@uXqS{CcMcHyXgBkg@`GgFlEkAxIjAfRvJzi@dFzo@hJxp@yVfg@zu@p]}MzKoMbOkNzKcOlEiPgBkPcAyE?qMtPcMxQiLvQ}KzKsD~Me@fQdBx`@`EzZhH|ZdBfJkAnMaCtIyC~EmAjDoI|q@gBvXgFjZ_GvXqKnUyIrOcGrOgDrOmGzK{E`GaC`GsHxCwHjD}DhCkLdBiHtAmEbA{Ib@_ZnFgx@jDnIzSnSjp@zA~MaA`NIrOoArOq@tPg@pNgBvIbApN?rm@aClj@nOpNrD`NfHxJpMhK`MhK`Gb@bIlErBnFlG~FvJ~EfJcA``@aGcMtPyCjKg@lM_AdP_AzZmC|ZaCt_@c@nc@iB`{@qBrVaAlEy\\zp@gBpGmE~LuLp]cGl[yEt_@mEbWsDrVkL`]sDnU_Gn\\yRsHue@eI}MeAcUpFeStIgFnFuFnMsHpNoKzD}KeBoKyCaKkDkGkD_ZaGeK_G}ON{IvB_CjDuHdPsHtPuDxJ?`Oe@bOgDnMsH`OiH|L~@nTKxRs@xJyCpNmCnUgBxQl^`VbK`Or@dPf@t_@rLza@r[bt@?lLgBfQZhKdHzDhLcAvRiKfHuAnd@`O~Y|SjTzZnCvIb@hK?`N_A|EiHho@bEfJb@hKY~L~QlvAVdI`CtI|EjKpDzZZpNbBrOtDdPrBhRs@vJJtH_EdIgFtHgDnN{GhRl\\v|@fHdIrDdQlCdW|K~r@lI~c@zClSmAtP`ChRnGfCrHdA~BvBs_@hmAuJfg@_ApGMfQgD|LsHbHaEpGmAhJr@~MbG|E~FlEtFpFdBvJaCxJgJdI}KtHaMxJuHtIsB`N_AhRuDbm@yCfQsB|EYxC`A~EpBpGtDdI~@rG_Xly@mAhJrBlTYrVe@lM{Enc@o@|Lu@lToI|SgJ~MeFxQu@rOM~M_CnMaErOoMv_@`Al[uDlMqBl[g@zRs@rOfDnMfFhKzGlLrHjLzGbHzAlLMbPL|Sp@pUtFnU`IzKhL|LtNnMpS~MzIrGzEp@zIyCfFoFnIa@lGr@nGlElIpGbKpGzKrGbKtInKvI|GtAnI~FlMbH~YhYuNbH}IdBwRO_AzD{GvBgF`@gFxBkC~Fi@dIKvImCzKgDlEaE~EmEpGmE~EgD|EgBvIL|LfDbHxEjD`ElEtF|EnGlE`I|DrHnF`CxCnCvIjCbHrF~FzGr@nIbAtHr@`GvBfBrGVtIh@hJvAfJ?pN_AlM{ExJmGfJaCrGYdI_ApGsBvIMbHbAjLpB~LM|LyAfJmAlLfBdIxCjLtDrOzI~EfHtAfD|E`EdIrBlL?vXmCfJwCvI}CxJs@rOKbP_AxQgBfQgDlMmClLyCpNYlT~BnTfBfJsDfYxAbOfFtWYzKXdQxAhRr@|SwAnT}CnNsFfI_GrHwDfJq@|LYdIYzCgBlEaGxCkVbHwNNmIxB{GzDrFzDhJ?bM{DpMiChRqGjNeIjAyJd@mLlCiKfH{KbMsHxAmEhJ}DtHs@|MxBnG?lKwItHgBzIb@zElEtFlErDpGtFrHlG`GvH|DrHNtH{DhJsGtH_GfHiCfFgBzCa@tFtAxG~EjHbAxIObKyBtJ{DfFr@fDfCrB`GfDtHfDzK`AbPaApNgFfJ{IfI_G|LoAhKrBdIrD|Dr@hKKpNmApNqDd_@?r^|@bOlEbPvLdInKlEnKPtHzDjH~LdHtItJ`GhJzDbMtHpMpGnMbHbMvInC|LrDlLlGfJhJ?bIgBrDOt@rHb@zK`AtPfDpNzCvPvAzKr@zShBdWxEbWzE`OmApNgBfQLrOnGlEnMvBbMnFhLvI|KtHtFrHxAtPxCrGhH~FlCbHXvI?fJyCjDoClEkCnF{AdIgBvIWrHVfXlA|LLrO~@hRnAhR[dPn^Nbd@lE`i@lErD{Z|u@al@eBe_@gBqd@?al@lEcPr@ePhBgQlMoFbGqGdQ_FlCcHtH_FdUkLbIyChJgBfBwB`CbAdBwB|AyC|Ba@`CiC`CyCxCQxAmEhHyCfDeBbGhDjAdA`AwBaA{Ct@wBp@a@`CdAfDNrDs@nCcArBcA`Ca@`CkDjC{KzCeAbE?~DdAnCjDVvBxAbAlCQ`CdAxAgBlA{DrBs@`CtA`E?xAqGrBkD`CvBzCNxCoFLuIaAwIfBoFt@oFg@yJuB}LqDwI|@qG|C?~BiCjAqGlAuHtDgJlE_N?cHbGmExAkKMiD|CgBdBgJ`CyCLyJrDgBzIcAzCoFxCaGzAeIfB_FY{DdBkD`Cs@s@}EXaGuHyJd@mEr@mE?mEfBkD`Aa@aAwBsBuAWkD}AkD{E}EUoFHkDmAaGYoFfBkDyAkD~@gCzAiCd@mEJoFxAiCvBnFdDpFnGyBnC?jCr@fDcA|Cs@jCuAJkDtFPzChC`CiCxCbAtD?XkD`GlEnEfBxChCLuArAuAfBmA~BFhGa@hBlExCfBlCzD~BrG`C|E|COlEp@fHtA`Ca@zCvBlCjDfBzDhDhCpD`@nChCnI`@`E?pKyCnKpNhBhDxVjDrBgJ`A{K~@sVfFqGru@sVvpAmoAlPoc@vJoFtQuWlE}ElCs@fDyJhHuI|Is@v]ePtD~MlVvXlp@zjBhBgBjCOhJmEpE?rDeAlCxCvDxBlEdBrDfBbEkDbGwB~DiCbGzDjHpFlk@|T`CzCnCnF~BlEzCjDzANxAfBvDdBrBr@`ChCxCbA`E`@tOvIje@fJxN`VjFr@bG?xGNvHtAjJr@hJeBlL?nItAnGlEpG`@xE~F~GtHh[hh@bIpGfD`@zEa@bGa@`E`@rKrGfFfCfDOrGhDdD{KtDwBr@iK`CoFtFsG|GsAtFvBfDtIs@jK|AdIVnFuB`GyA|EoC~E}@|EaC`GcCbHbCbHfHjD|GNzReQ`EiChBzD~@`GuBnFtBzCxCeAtDeBtDaGc@qG_FkDsBsGf@sHjAuHzCOhFbAtDwBfBqGxAuH|AkDiB{DcG{DXiCrBiCvDObMqNpEmLdBkDlCb@XhDr@zCtBfCrDvBbErGxAxCnCyCrDkDvFiC`EcAhFgBjLyCrMeBtH`@tBbAWlE}AnF{CdP_AbHxAjDf@nFzCvBnCzDzEpFrBxC?rHlAbHtDfQ`EdIzCbHtDfJfB|LtFdIfOp\\nGfCjJOnGaGnGuHpIoUnCuAzCbAfSrVjHdI`CxJ`EdItDuArB_FlCgChFiChFs@zAuIxAuHzCwBtB`G`GnM|ErO|In\\lCvBvBwBb@iCrKsHnEsGbGtAhFhCbIa@xNp@`EfBbGuA`PnFtOvXfFxCbGgCxH?hJ`GnEhK`EtAhM~TnKjDlAhD~VOhH}DdMpF|Ep@|GzKfBlEaAzCs@dBYvB{EhCg@jDmA~FhB`GhDdIfHjDdIcApI{CvHb@rAz@nEvFxAvBcHx\\jLbL_B{KaCsKrBgQzDwFsAmIrAgBk@wFMqCs@uAOwBpCwEr@iGzBcHvCeQv@qJbC{KdCkH_@aG]sHb@_JrA}HZuHiDyNX}E_@cHl@sKfEqYtPog@fAuE~MyF|a@qh@tC}EnF_B~YcSfMdEr@|AlBeIhByCdBeEf@}AxAbApVWnCVjFcA~CPtCYlPlEz@YlCr@jG?lDa@|D`@~MnF|EQpEj@jIvBb@`@gA~B|AlLPz@tDr@xAtA`CYfBbAfCj@bCYxBN`CkApDeAzEkDlB_C^eBs@kDgBwBy@eEgGgF}BwBwHoQ|I{KxJ{GfDuI|EsGnEeIrGjDbM`@fMfJpIxBdIpGtFtPbLxQpB?tQrO`CeA|AxJzE`GdIjLvJbH~@dI|]rGd@jD}@fJjA`GtMNjHxCzGP`C`Ov\\}ErDfJaCnFYfQbRvBzA_UZqN~Dq]r@wBX}E~KmLdGmL|IgJtBeIbEa@hFQ`CjDdKsHyAqNWaNbV{D_AmLg@wJu@{KdGmb@vHiRi`@iCoYwJfBeInEqUrG?vJ_FrBsA`CrAxWsOnAmMg@_MY}EtDcAr@iJjDaOcYNaCcAoRr@ckAuW}GqGmEad@hUeI`AcHvHkLpGkK|GiDrBaNzCuP|CaOvJiRtO{KvBtAjNkDnEp@hDmE?{DhB?~MlLpIwIpIaG|EgJxHuAtFnFvFcAnGuHfGsHtHkDvF`@jJPtZ|EvDOlEgB|Gu_@KaG`CsO|EyJ|Co\\tFuWdXbH~Iyo@sMoFgMlEs@cOxAiDnC`@s@}ScGsOmAwIwDkLoG{CqG}LsOsHwOqNaR}Dl[eQhSrOtBdIvFtIj`@fQt\\dAxJdBxJqG`Yzi@r@jKJpNK~ThF_M~GO`A_FtMqd@vL}E`AkDhDQ`PmTvF}EjHuA`EdXdGeBlCzDKhChDhD`Ca@rBwBhB|D`C`@rKlTbEwIvDb@~DlEzLqNpGxJlLwIlL_\\jFiD|GsG~EqGrQwX~I}L|CoFvDaGjAyCzYyQ_AyRd@qFzAeBrBoF|CcHvHyJr@cAgB_FLoFbEqGzEeInCyJJ{KkAwIaCkD~KsOhDlE`EeBpE|EbRjKdIqUxHvBvSjZjSsVvFjKjFoFxJmL`NhKtBsA`CbA|EnMlL`VtMtIpRzKvFhJta@al@cWkZvDgJxAkKhDcH}E{K`AsOt@eI}CiK}CsGwHeQeG_UsDyQiBiKqGqGyAuHMiK?uHoCoFuD?nAkD`EsHlCmElJwBdGmExJkDjHuHlAuInAuAVoF~GeP?iCiDcHfBeInE?pEyC_HuP}PdIoNzD{Ca@uBuAbAkDlCcA`CoF|C_FpEkDnIwB`LyC`LaGbG{DdE`@`PsVhD{KvFwJhDaN`CqNbE_UzJwQjJiRtM{K|RiC~Rq@rTlE~R`OnE|Df@s@bRxJfKcOlFhCrDuHt_@_Gu@gBbNcHpf@qGmAvXbGwIxDuAxCgJvc@nMf@iChF?YdIrGmErI`GjAyC~Gp@|G{D`HwBjJhC`NQlJQlHvBjHPtDxCvDoFXyChFzDdGtAlHr@bIuArI{DzAtAlAyQvDgg@MmEdGk[JiRbCiYdEmL~KmMwDcO}EaGs@mEYiKLmToAeILoMgB{Rr@}L?wBvFsHtVnFtK}DfTOxLs@pPePvXwBrT_UzJcH|C|DnG{K|`@uf@vFgQs@}S`WvXjQ|D~PbAxS`@hMlEhDhC|EtIzAfQf@rOnC?hDr@hDwB|EbAtBP`AyJhFQbLmEfBa@zCtAvD?d@eBLgBlA?fBiCtBcAbAs@pK`l@nAl[jHzCfIxCxH|EtDtA|EkD`HqGzJyClNiCfKqNtGcPvXeAhDkDp@aHnCgBhD?r@zDt@`GlAdImAhCMnFdEOlCs@hDjDtB`@XrHfB`@KyCzA~Eu@xCtBtA~CzDhDzC|@hDbC~EtB`GzAtAzCwBbEiJxH}L`Ss@zCfBxFdB|EtAnCxJtVvn@`Ja@lJjZng@rm@vF|DtBpGvBzKpGdInAxCtFO`JjD`C?nH~FzNq@rI{CdNeIxHvBrIzC`U`@jOs@pNnF~`@vIxJtAhK?fKvBtKhKvh@yRpENpE|DdGzDrG~Eb`@dn@jObAlSq@~g@vBlCka@rGcP|CoM~@oF|A_FvD_G|G}DbEyCvMa@|L{CtBwJdCkKb@aGa\\yCwDa@}EgJeGwBcG}Dsi@qVmc@qUaJcHcCmEaAuI_AkKgIaViTvBuBaVkHkb@e[y`@qL{K_HcO_HoN_O_UyHsO{JgXeIuWqGgQ_D{Dt@eP~Ia@zJcHxF}LbEkLfK_MpNcP~PkKzQyCjQ`@pL~ElSxJn\\yYfb@_k@jHeAlAb@zHuHhKmEdKkDnHnFjJxJhIfJzCdAzLgJlH_FdGwIlHoFpCiK`CaG`LkDzH`@rIwBxHuA`JtAhKhCzJ`G~GfJhDbAvDgCbEgBxFwBrIkDdE}EnC?rGpGbGhCjF`HpEbHrE|DbEbH`CiC|CoFnCuAhDtA~GtArGfCdG|DlFtAdI{KlH?xHwBfEeAjHwJbNeAzQoFjo@gY|L?xQ`@jMoMfIsOpEoMlF}E`J_FzJvBlCtHhB|LoChRgBhR{HfQuBdI}Cp@kFyCyFzDiDhJgBlE~@bHvBrHtDbHvDvBdGxCxFjDxFtHjFfJ|EjDxFfC~GwBpEgJhBeInCa@`HpGbGbHrG?dGr@hIr@rBQaAeInAyC~EQnEiCtBtAjB{DcAs@}C`@uByCcE}LpEQlA_GzAuALfC?vBXfB`AwB`C}DaAaH_AkDzC}DdEuA~EcH~EkE[yJZiJoAgCfByCpLbAhBs@MmElAmEbE{D?sGt@uAtDPbA`GMvBdE?pGkDbCkDg@{DlAa@zAzDnCbAtBwBvD}EfEgB~@eB[yQhByJfIb@nArHxAxChBPbC?MqGtIkKJs@nAzC|AgBrBoFMoFhBuA~@bAtBcAdC`@~@{DuBeIs@cHg@kDfBgBbC?vBsAlAnF?vBzCwBjFuAfGeAbEaHvDiCzAgBvDvBs@`GZlEbGcA`JgBrGoF~EmElFPjOfJnHrH`LrGtIfJpG|Lhb@ny@|Zf`@`AzDpn@jw@dElE`AdItB`^~Elb@xHtW~CtP`ClE`CrOLlL|CzDxDbH`CpGt@df@[fg@cCl[sG~MhDjLLjKwDtPqEfQ{CrOiDxJxAhK|EjDhBdIWbH~@fJ_AbOmD|EaJPwKr@}Gp@oHsAyF}DuBwBmOtHwFbAaJ`@_Ds@gPvBgBbHaHpUaJa@{AyBqUeIaAtAbCjDZ|LMdPiBtPg@rG}CdIdEtI`HlEvF`@pCtAMwJt@kKfB}EhDfCxFtHvDhKaCdIqCbHbCfB`JdB~E|D~@fJ{A|EdNwBlOdAxO~MxM|SnLtPjTjZjMhZvDtHbEwItBeI_AqGd@kDnAcAnA?f@zDjAdInAbHtB~Eq@zDmDa@iDNaAhCcC`@oCPbA|EzCvIdErO~Ph~@~EnUrEzKjH`]~Elj@g@~L_HdBiIfBmHdBaAvB`HfBaAdI|CrHzAPYbHqCzDyCvI?fJdIrHxO|DnOcAfBdBeL|SuKtIiKcA}C`GfBfJlF~E`HeAxFdAu@rHoAvI?hK_HfBr@pGvDQjFa@|C`@fEsA`EiC~ENdGbHYrOyAxQeEtP{CjD_DgB_FfBcCbHeBlEdBlE|CdBaAbHaEjDdBtH?`ObCxQcEfReEbO{o@ha@uRvIcLbAgItHwBbHoLtPuRfQuIhR{ApGaHbOyHpG{A|LgGlLgBzKr@nUtBtWXpGYfXr@xJ~LxCfBtPxFfQzApNzA~FJrG|ArOiB`VM~j@lDpV`LxBxf@xCjVoFhIsOdg@sGf\\pNiIza@_AjSxAnFhDa@vDjDlDzRtDlMjFnFfIzC|JNfGoFlCgJhI`@pJjDlJnFfBhKf@pNbCpNe@xJwBzKkDzKuDzKaHtHqEmEoEgBmDjDaCxCxAvBLlEgBnFu@`GcE`GgIpGwBfJXtHLvIeEfJoCtA`AtIpCtAhFdA~EgB~ClE~GnFtKfBlFpG[lLkAbHg@hKJdPaA~FdCxJzCpNlAvIqEvIoJbAiKr@qLN}CeBqLwBoCwBqEfCiBnFnA`GiBpG{AlLXdPpCa@pE}DjFcAvDzDtBhRpEpUbJ~TfIvQt@dIeCzK{Jr@gIeAwDcALfJzCvPLrOqC`ONbHzCpGzJb@`HtAf@`HaAdIsGfBsIhCqJN_FhCKxJ~@~F?rG|C|ElF~ElA~M{AxQiFtIuG|DoAjDnAhDtIcArGwBnCxCq@tHsCpGgBpGzFb@hKmE~@bHu@hKgB~E~GrHhKr@fLa@peAt_@pL}E|SeAfGrOlAhRjD`VM`}B~N|wCdJrAnEho@iBn\\lF|SnQnFfn@pN|EjL`A|ZxFdXpEhYhP|[dU|i@uBfYoAvIrUrt@`CrOnQiDjDmEl]{CrWkLvD`@~XcO|NeBbA`VhDbOjF|EKtAoAj_Af@du@yAjLjH`d@xFxCfInc@~Elc@h`@nc@ph@zfAzHxJ[zK}CrHmAxQaHpGcNbWmKvIjRn\\rWd|@rj@bwBtBlEbH|DbNp@xMvBnO|DfIdB~_@`d@zJzDlH`O`HvI`]zfArGtPzApNzH`Nzt@zp@~L|L`H~ErNnU|CxJ|QhRr\\bm@xDO~E}D`CxCe@n\\aA|SXxC}QnTkRlc@oJ~LqLdIwKzK{JlT}HzZgGp]iBnc@g@fg@hB`]aC|Tu@jKsGhR_AvBoFbAuB?aA`GmA`GlAxC?nF_AhCuG_FaAgCoApGkFnFyMsOcCtAiKQgGpNX~TyAvIcHvB_Fa@_FuAiDmE?kKhKwBfG{D|C{K|AcHwDyC{FgBsEa@iDvBoCPqXlToEvBgGeBiB_FcCsHg@gIcLiRaOsH{AgJgGgQ{CiKcAcHmCiJJuIkD{Kg@oMgBuP_Mwn@MmL|Ha@lHs@zHcAfGcAbL?lMtApG{CbCcHLmMcC}LgIkDuNuAaQdBqSkDwK{DkMsHqJaG{AiC~EsVoA}L}G}EmKmEyF_FaJ_N{H{KiBsO?mL|CqNtIqGvKPtNp@dGgC?wIcCiK_F_MnCkLpJ}ZiB}L}J}EaHs@cEPsExCoCrHgGjDuDOu@_M}CiRqEuPyFaOiBcOg@_N`AwIaAsHyHyJyHaG_R{Ds@wBjTm[xToThD|D~CxRtDdWbCnUfIlLfGNpJ{DrIcHrE{KXmLyAuPuEuPaCcOaHeQ{HqFwKwBeNr@yF|D}CdB}JlEa{@`e@gItHq@qGlCaGvDcHtGqGvFiJpEuIbCeIlTqFlFiR~BsWZiY{CsViG{SsGqUiKaO_MoFaHc@}CpFnAvJtBnMpEhR|CrVgBfQgGjLuWpNwMzDuIjKcJxC_HiCyDaH{AgIt@mMpEqNnJoFjM`@tIs@dE_FuB}L{OnF{H{DsNdIiFs@uEr@wFwIaA{KqCuIt@eIe@cHwBaGoC{DeEeAgWtAkKOoSaGaOwI}CcPwFsOoHgIcL{DiMkD_FaGiDiKoFyJyJyCmKwIyH{KmXyh@cAs@s@gJM{KyA_Nr@yJJyJf@wIpEyCbJgBlHPfBr@|CgBnC{DyOgg@oJwQiKoFwMeIaOaNwDwBoAiKyOe_@oJePkMa{@kMs@uPqGwDa@gBmLtBmLs@gJlAeIbAs@u@kDcCiDkFkDkFxCoHlL_HfJcJbAyFgCgDqFcAsHcCqN}E}LeEcH?ePzAuI{AuHcCiKuDsGkDeBwDvBuBvIWzKqA`H_HpFmHQiDaGqSqs@qE{DeEyCsGrA_H~EeEbH}EpGg@xJyFxYiFfJgGr@_Fs@_FiD{CwI_FuHoCwJlAqNr@uP}Esl@aa@oMwRkLkFmEwDkDoCyC{CiCwDhCqCxC?xJ~EtIzHvInE`Os@`NwDjDqEhDsGPoJkD}GkDoH?aJuA}JmEwHoFqJuAoCmEq@wBu@mE[qG{CxC_Mlb@oCxR_HvPqC~FcEtAeGbOkDpN}EzSMdPuBlLhDNe@nMkDdPcE~FuBhJkM~MwDlEaCtf@`C~EyA~MgPxC}CrOMlEsItH_HdIgP|EsGpFuKbA}Ja@uT|E`CrG~ErO~G`VbE`OvBa@fGdIzLtP|EvBjDr@nAnMVvQmAlL?dI{AxJoCpGqEzKeEnMiDdPaCfJoAzDwDnF{EvIsCdI{CjKkDbA{CxCcEdIwD`GqCdIiDnF}CfB`AvBeBnFOvI|Ld_@`QrWrP~TpEnFbUrVvIvX`E`@zAnF{CnTwDfYqC|DuB~M}EbOoE|L}A`OwDpNsBfQkBhKyHr@}CtAiD~EcCdIqEbHkH~F{HhCyJhCeL`@cLQkMPeGpG_J~E}HpGsI|DwDtIkF~EwD~FeR`]gGpGeEvIkHlEsGdIiFzKgE|LwFlLoAhK`j@bOdGjDe@lEg@bHiB`H{AbHgBlEf@xJbE|LjFtHtGbHxH~MxFpNvFbOrItPY~TgDdQ}AjDkHhJyFjLwKnc@eG|Lc\\uH}UiDyFpGgK~MuYza@qElLiFhKmF|L}Nvu@MjDjOzDwF`VM~MpE~b@?hK`A`GcErWeEpNf@dIiBpFpCjLd@vILbW{A|LoCpNcCjD_AbHiDbHcS~M_OjKsI`OuIvIqG|LgBpNlAtI`CtHbC|LyFvIpExCfG`GrIvBxHdBvFhCfGpG~GvIvFlE|LxCpEa@LtHg@nFaC|E{C`@iDr@mFr@_FwBsGs@_HbAsBbHwBzCdChDeCzCuBjDqEdB}EcAeP}DiRoFgKwBgRs@eGa@mH~y@vBhYjHcAcGzZbIxRuB~EtBzKtBjZzFvX~@zZuBvQ}GvIwKfJcLdPuI~MuBr]kQrW}e@hh@ko@fg@qG`NkFs@wDr@kObA}EtAwFNyFa@_HeB{H_FeGiCaCrGKhJd@`Pf@|S{Ahh@g@~[aJbm@iD`OaJfQ{Wf`@kOrOiIfQ}CtH}GdIg@~MgBpNqElLg@dI~PrOlHfCpGO`J?jFvBnHdIjJvIhKdQtMxJzHdPzS`e@tK~EpExJ`CNmAzKcCzCLdIcG~Mp@jLf@bO?nMJ`N_HhK}CxKs@dHYtH_CdJmD~EiDjDq@fBxAjEXfJf@xJpGfJxFvIlA~Ef@pGs@hKcCbNgBzEoChCkDbAyCdA_DnFsYqNuKsHaJgC{EuGiIOyHcAsIQyFQuBnFoC|CkAzEd@`GJ`GoCzDkA~Du@zDcCjEoCbHaCnFcEzDiB`GtBlEnChCf@lEq@fIkBnGqE|DuFxJyMhDqE|C_J^_H~FsG|DkFfBuDjEeEq@{EfCaQgCqEzCc@lFgEfJiF|DyFlE{ExJcArOiD|KkFxKcElMg@nLxFhK|EpOvFtHvIlD|GxDzCzKnCvIrIlE`JNtGdAnGQnJr@`LcAzJiC`HuA~Ir@bEdB|ChCdEQnEcAvF{DmAhJ`CjTs@bH{AhCe@jDMfI{AtJoCxBqEvBiDvAkAlEf@lFvAxCmAlElAxCbCcA`AzCXvC`C|CLxDg@`@lAlD\\zDwDdBeCjDoCuA}@rGiIu@wDb@cEhDoCjJlHjEhFrHLzKf@dPaAzJ`AhLoApN?vIvDfJ`HzJ|GbBfIvAfI^zHfBpRzJtGxKdKlMhKhJdIjDtIQfKPhKdB`Jt@vKzE~IbNfKhKtY~FbNjDbEfIlHdJrI|Sr@tIpEnLvDnNvDvQvFhJlQhKdP|KxFnGnEdPyAvBaAlE{AxJ}Gxh@eC|DaCs@iDfBoCr@mFlFwFhCcCQeGiD}EwJeGwAeGPmCxCcAlDMfDe@lEcCxJ~p@h~@?tAyAlEsEbAuDzCyFnFqG~FaHa@oC|DqE|EqErGeGfJcE|L{CxJ~@pFgB|EuBlEaAnFYpGjFdInCvBzCtHjDrOiK?aE`@sEs@iMa@yJQiYuIaJa@oLmE_HzDkFvIkHtAuBxBkMhDaSrHob@lZgGxKcLs@sIhCwMzCg]kCkMuAcEeB{ExCyDPgBeBoCc@cEvBsGfBgK?{JdAcLyBiOsAyFkCci@?yHs@cChJuMjZaLtHLjLoJ|SX|[yF`GkHzSlF?lCwBbE?bEr@vDfJpC|D`EcAbEhDfGnFhDOdBsGhB`@|E`GrI`GrInF~GpGfEsH`CeJzC_EbG~DlMvCvQvAxHLxHqGvF|DnCjLt@tH~@lEYbVpEdJhDfJpCvIhKpGlC`FdGpHxZhQhKxRlAhKjHnMnUjZvInEtFtInUzi@xFtA~Gq@pGp@mApGaCfBoAfJf@lDg@hDmAnFr@dHbE`AvD`@fGb@`JrAjHM~Eu@zE`@xFiCrIcBxOeAxHuA~Y|KjFhL|HzRrBlMdGjKzCrVzAdQlAlSIlSV~UhBzZxApU?lMjFfQbA|KVvJbLhKjMx_@lLvh@rCdIV`GtBxCKjKVpFpC^~@vBNdHH~M|CdIzA|ElAtHpEfJvDpNjFdI~GpGbL_@fKp@|L?nLeBvKlF`JxJXdI?xJnCxJjF~MvDxQfBzRq@zSu@zZqEtWoCbWiBzKuBtHuB`OmArV_FfX}EvXiBfRaC~TiBrFwFyBcC{DqGu@sGgCuBwBgIdIsIdH}C|FyC`NlC|Er@zKzAnM~@hJdEtH|UrWxDlMcAzRnLbOhDzSjFlL|HvQzEzKtKtPtItWwDn\\wDha@?za@tIn[lJtPzAlSZl[qCb_@qEhZiMlL{QzJmJrIoE~L[rO{AjS_HpNdIp]vDrHeG`N_HtIoCjK_ON{NeBcQ`@iTdH_ZlFaJjD_SwBcSuIsKc@uGlL}GtHeEnNeIvBsIoFwIiKoUeP_Zf`@qCfJuBvIoCvIoEnMcEpG_XpGyH_@yAiJcAyJoCeJmCcOiI}DkJtAuGvBsINqWhCgKxC{JlD{Jp@uBnEf@vJlAxRjFxv@~Gr@fKeAxHrVlFxh@zCfQlFdPbGdA}U~z@cG`NnWh`@xZlUhTrVrNte@jAdQeGf`@qIb^wIpUyH|[wVd^oEtX_Htf@iKlc@jF`N~PlEhKlEnJ`@vQzKpSlDnW~NzQ`]`UaNpWiSr[qFtIhBxHcOrNwIhKeBdKrf@dGf`@dGb^pNcAvMaNjOdAnJfQbLlEfBlTdG`OjFbOzHpGbGzK|HzKxCf`@nAzYpEzKjFrVhKbO`LxKgBzKaC|LpEhQnNtXnJpVrRzKbUhC|LvI?nTt@b_@~P~[dg@`iA|^~k@nSre@|Lrd@pJxKdKgBhTiD|l@a^bUfClXxKzZhClX`OhKjDpEpGjFd_@dG~j@vDdm@}Czi@vDvXdLlEdPoF~GuHt@dPjFsHzQwIlAf`@bCvXpE`]tDd^pJ|\\`LxYs@la@vDnVhKf`@~GpTbCrWdGnU_HtVaH|MwhAyh@{h@mEwmAha@sNfQwMlEeg@eAoScBkF^XlThBzYY~[dGz[lJxXvIlTlJhQ?bQYvX?hRpEhR{ClSu@re@rIlTbLlSdLhDxHpGfG|K`L|L|LkDnJeA`CvI?~MnAfQlJvIrWiC`QdBjO`NdCxJ}HxJsItHiBxKWfP~G|MjXtH~^lTpS~[vMrVnSjShB|L~LbOzQb_@lJvXxH|[|L~MbQjDxHfBnAjSt@rV}HhRkAbOhFpVzHlTt@fQhKfPjOdQ[fR_HbOeGvWcCdQ|ChRvMdPxMfRjFxYfB~[{HtWcPzKoOlEuMdQwRjDqSa@_ZkDoO?cLb^eGf_@|Cpe@u@ha@nApd@cCtf@}C~j@|Clq@wMfo@Xnc@|Cre@Xrt@s@tt@fK~\\hB~j@Wps@qJ~j@gb@j_AoE~MrDvX`Qb^fGnTlAzZfPpd@hY|j@~Y`Np\\`@x_@mEbc@a@vd@pGbc@lEz_@hRpe@hCv[kDd^cO`d@aOtd@_Nrn@iCveC}LbZdBt\\`Njf@hDrWhCjKqGxd@dBntAho@h^lEvd@hRnf@bPhl@rGfp@tW~_Avg@lp@dPzQhDnXa@~ZhCjb@nFvxAbOjF~M~LzK|QjDtIdBeGglA{VopAqXss@gGg`@mAuf@?yh@cC_k@kFen@oAgn@qEyh@`Ha]|Ca]pSkS|VyJpNeBrEqUhKoUpJsVdGyYbQuIdZsGlO_NbCqUrEiRfP?tNdArN|LxMvXvWdPl]jSz[zZxM|[bV|Z~UzKxaApGfc@`@ve@?ve@vI|ZpGz[eBhPwIjKsHzVnFlYjDdZpGxRlEjPoFbZqU|ViRX{Z}Cia@r@se@lKal@bLqs@jPkp@jFen@qEss@a[yY_RoUu\\kDgU}LwRia@_Ra]mTa]eZoVgZ_[sNwXwIgQeZqVeLgQ{CuW`CwX?}x@mFyZoAa\\~CwX_Da^eGyKxR?~UjE~VqF`_@cAj^iCjKwJpS_MbVb@fh@wIfUkDdL`@hPvX?l`AdLjD`[cP`[{YzV}[lKug@j{AspAfZkSb[uH~LnFzC?pTd_@fUtHzVxYfLiCvNxJjTlDxRdBrStIhZeBlYlDjYtIhPePnOgQbM_N|QhDnTfB~QnTrSzZrE~MpJfCnOhBtN^|HwIpJdAnO~MdQrUbHvYfZ`OnO|LzRlDhUdQ~VrV~GlTpOzK~d@xYlKhQvI|MlKlEnJhR|HjSpJhCvIsH`MuHpJwJpJaNlK_NjKkShLoTb[se@vRmT`RyYpE}LvNcP`MgPjKgQ`MmU|HgPdVsHnOiRbHiR|HmTpOaNnTyKtf@}i@nTcOhZiRhZoU|HaNdQyJ|MkSxlAqnBdQ_\\xNiR|VyKpYePrS}ZlP_]tIqVYgn@{He_@?a]tNuXr]{YzRkTzRa\\tXyJ`_BytAlKeBxa@qd@rb@mb@nbBonB|H{Z~LcN|Ma^n`AmnAh_@or@t_AytAoAse@gLoc@|Ce_@nc@cAvIyJsE}[xD}ZpO{[lU}ZfLwXiBwX`RwIlKoGjBkRfG}ZvI{Zt@yYmKsV~CoUhGuWvIuWgVsHwNwIq@eQwE{JgQmEgG}LnA{K~CyJeHkTWkSfB}L{Rob@mPmTsJqUmKmEmAaOoFkSkK}ZoF{i@{Mmc@{Due@t@kb@_Dse@yD{i@bCi`@mAg`@sOqUwIuWwk@g`@oYkS}H_Nu@gQsJmTmFePsEePwNkS?oUwNsVmFsVcMyYwNgQcHwXyDeQgGmSmKiRuSsWsJsVeVyYaWc^mF{KrJ_Ods@sFhZyYrJqVdVmSzW}LjPkSh_@pGrOgCnYxJd[bPpTvXrJzKrJlEvIvIvIlElKpGzWtHz\\iC|HcBvIfRbMbP?tHxDfCbRlEjPb@tEeBze@|j@v]`OfQjDjUvIvXjDtXtI|WhCdQiDf[qFn^iCrO`@?hRZxXr@`^oA`\\hLnVt@h`@u@~MfGvX~CxYs@rVvD`NnA|[bHtf@bMqF`MwJbRyJfQcOvuD}gAjFePj_Dip@zRtHbMe^hQ}\\fLem@ZwJrJiBxNa@fbAwIvq@kTld@qFdCqG~QpGzDbA|HwJ~Hse@rTi`@bH{ZrOeQlZaNbWgQlK{ZnKqUhGqVnF{YxNsHlPb@zIqFlKyKlFyXxIwXpPgR`WkCbHxIcCnd@_Ifn@oKrf@iGb^nAjSaRzh@i[h~@mi@hmAoKxYmFlTiL~y@a\\~eBr^`nE}\\~eBwE`NiB`]qT|gAvIbA~MlExNfBbMpGfQvXh[hRrJvIhGzZnKhRnKzK~y@yJ~HlEjGbOqApVeCnEjGbPbC|LjG|LpO~Mbf@zh@nd@|LhQgQ`RhBnUpH|M|LnPoFnPiCbRfBbRrHjLnTrJbPnKjRrOtIpK~MvSnFh[xJh[a@bRkDfrAa{@h`@wYtTue@hLwv@dHg_@~HwXhQmTnPc_@hQlFdWpG|\\dPtc@`@xDnEfCtXwEbOwIjSvItWdM`OnPfBhQ`OnFrU~MjSpFdQkGzZnA`]nFjb@uEvg@go@hjBwm@ppAoPnaAsOfo@oP~[bCd|@_Ihp@?tf@jLlEhVcA~WwIn{Aor@d_AyYdz@oFje@{Kni@oc@~a@aAdMsG~W?`]lE~\\{K|~Ag}@dk@_k@aXip@wIwIoAsV|HiRdCoVnK_[tO}L`XsHhLsV~Ckb@~HqUiGmT~CsWYa\\r@kSpFyYeCia@hBsWzDwWtTa@`IgCfBmb@Y}ZdM{KzNdAdMbPpUbOh`@|Kvc@|Lf\\dB~MvIpUdA~RfCpPeAtJhCrUaNxNnFnPrGrPnErOjEjQlEnA|LmFhRsA~MoAfQiGpU{DhRoAxw@eCnb@jBxw@u@`^cHnc@|Cf`@~CpTdCb_@lL~MjV`OhVtWle@xYpPtHtJhR`SlTbl@ha@bq@`N|l@xYbg@nU`SbOjVa@f\\tI|b@bNrd@nGfWmEb]nFfWtHf\\b@|]vJthAha@l}AxY|]nb@b]vYvOpGfR~Ml[hQvTd`@hWhn@?vYqKfQXzZdCdn@zIho@eCf`@t@jSrZrs@`Nc|@pFsV{Dg_@|]kc@fMiQzD{KhB_\\xOiR`X{Z|S_NlVeAvOeBhReBhLpG`DbP~CcP`Dqd@jL}i@fl@wkDpPwoCuEgiBaNuW{Dse@u@{x@~Cyu@dC}\\kL}Y~CoVpFyXjL_\\pF}LfM?pPrGpKsGrPdA`SsG|SbAnVuIj\\iC|]`@vJfA~]{Jl[wJnVnGhW~L~]iCtZoGtZyIl[}LvJmTaD}ZbNkp@pFyZjLwWxO{Z`Sa]dX}\\nLsd@Via@eCgQ~Ca^Ye^sEc^cDia@tZ{w@nVg`@zIwXdCa^jGia@?e^nQkSlL_NhBwXtEgQvJiR`ImT`Ic^fHse@nAkp@oAen@vJsVpKjDrP?fMcOvJaPbNxK`NbPrPiDhMqUzIqd@fHos@tEaz@eC_z@hRmb@bh@uf@vZst@r@kT~NiQhRiR`SuWnAuf@pA}[tP{J`IlDlLpGtOyJfSeAxTeBvTePtZ{ZtP{ZzT}ZjLsf@jWkRjG}M_D}LiReAoQgBqFuHt@}j@`IuWhR}LZoTiMwJpAkRpKoFdS`@vJ}LdCmT|NbAlLfBjG}LkBgR_DsU}NkT}I}LjByX|NuIxTsGjWiDrKmE`Iob@pFmE`D{KfMuIjGwIiBeQX}L{DkSjBcO~CoEpFmFzJaNnKqGxd@sGvEiRxOkDzIeBpFkSjRmEhBoTt@}[lLoFxO}LtP{KhMqUbSia@rPmT|IgBvE}MxOeAdN}LhRqFnVaOhRa^pVcNrF_@jBiQ{DiRr@aOs@{Z]}ZfXmTzDwJzDuIpAe^qAiRhM}ZvZkS~IqGjLuH|I_NpFwIcSen@qAgQpAkSXmTxOoThMqe@|Nyh@h]chBzT}h@zDmUtEwW`D_NjBoTbIuIrKc@vJuIeCuHqF{Kt@eQdHgB?qGuEwI`DwI|NmF|IgC?a\\eCsVlL?xEjD`I_NtE{ZrKiRu@uXkBsF~NmEzJa@u@{KiC{K`OgCvJmEnAyKqF}K_DyJqF{K{JgQ?{K{D`@eCpGwEgCoAsG`IsHhMkD|DmF_D}KyE`@cIcAgMlE{OhCiGc@yEtH{DmEwE?eXlEgSbAsKxJ}IgBgMjCaD|M}IcAsKlEqFlEgX}LgMaAkb@fCsP{JgHeBcN}[mLkSaD{h@gMkSfH}[~CyXfH}L?kb@jGa]u@od@YqUkBeP|IiRvEyYvJa]Xia@~Ne`@bDoc@pFi`@zIia@|Ise@~Ce_@vEmb@ZuXpFyXdCyJuP{ZgM{i@`IyYnAg_@s@oFl\\mThBwX_DgQ?qVu@iQpFwJqAcOcNdAeCqU`DsVtEkSfCkShBoFuE{KjBePvJmTlGiR}DePYkTmGyX?cOuEeQnAiR?ePdCsWpA{YzD}L[}LYc^~I_N?mSV}LWgQjGaOt@eP[iS|IyXt@iRlLkp@bNia@pAmc@mGuWuEmEr@uHs@iR~CkSkBaObIcO?kSt@gQzDaO\\qUp@e_@vEa]{Dmc@kBka@nAa^qFa]?a]`DcPqFuW?mTY_\\dC{ZaDsVwJkSu@{ZgHqUtEa]kGqVaI_Nr@mSeCyYcIyYqFyJbD_]mBse@~IoTfM}Lib@{w@iM}LwEgQoQ_Ns@_NcIgQof@ia@ec@fCwJdAyJwImLjD{n@wImWse@?c^}IoFqFuWcNe_@Y_NdCqU{Yk}AjBcjAr@qVfCse@v_A}_DwUyJqk@_k@zy@w_CtUknAvJe|@fc@mqFbN_\\pK{Zf]kkBjBst@wZm`AjBqUqFoUgMsGmLe_@aOyYsu@tHyiAsG_OcA}NnFglByY~Ca]s@{ZmGoUiBuHzIc|@~Nqd@hBc^t@e_@`Ya]te@eQre@c@p[hRhMa@fSkDdM_NdNeB|IgQfMuHpFnFvEiRjBwg@hBg`@oAa]oAyYbYscAoG{w@vJoTnGyYvJ{ZpK_NaIal@?uW}De_@mAa]uKcPsEmSiHoUqAuWoQoUhMqUeCoUiMuH}NeBiRmSaImE_o@en@kBgQfCoUwEiRuEeP}IuIaIgBqF}L{DiRcN{KsFgQ}IiRgHyJuEiRwJ_N}IdBcIpU}NnFaIcAaI`@mLkDwU?wJ}LeM?mLkDaOhCoQ}L_DsGiRhCwJhCmGgBt@wg@}I}i@Yg`@wEoc@ZqG[gQoAkSsP{uA{DoT|Nyh@jBc^wEsVfH_]nQgQ~Sg`@v_@{fAlLgBxOaO~I_MbHeQnGwIqFkSmBoFzD{KmAqd@zIc^fC_wAlQqbAfHe|@Xk_AZopAt@}Z~CyYdCgCqF{Ks@uWXqUd}@okCfMmlBeCio@t@g`@mLsHebAwaBwUse@mLal@iR}Ls_BohD_D{KtE}LhR}LzTi`@f]yYvOyJxOqGjByJnViR`aGioFxO{KxTcAoAyJcN`@sP`@wJsHmLePmLwIiHjDsK_N_OgBsPwJ}NvJsPjDoLgCwEhDmL?qKjDoLlEmLyJsPeBaIoFgXwaBwOmTmQcPeNgQeSgBmQqG{DiRnAuW~CsVeHiRqF}[iMg`@eCg`@rKuWtEe_@dCmb@pAmc@{Da]tEse@nQuWxOgCnLa]vTa]hRgQhMgo@eHnFmLzKkMcAjBuHlL_NYyJcIa@wJvIoK`@sFa@{DiRaDc^aIaNiMa@qKfB}DwXpFwXuEqG}IvJgMa@jB{ZhBsVuEgQ_OpU{DnF_D{ZwJsGXcPzDaNvJ{KjB}LwJfBsKpGkLsHgHmEdC_MtEiDrKmExOdBdHkDY}LwEwIqFlE{IhCwJpGwJcAsKeBeCaNhBsH`DyJvEwIjByJwEhC{DnF_DgCgC{KsKaN{N{KeC}LvJkDhGyJ{IoFwEfBqFrH{IfBpAkDhBsHhB_MiGoF_J`@_Na@_JoFaDwIxE}LdMkDt@qGqFcAgHdBoFeBgCoFfCqFlGcArEmEW_N{DwImGmEcIhCyIrH_J`@?qViGwI{D_NoGjDyIrHcDoFxEcOxIsHfHdB~IwJ]yJwJeAoKhCiHjDiGgBp@sHoA{KgH`@{DkDeCoF\\qGu@{K}YrHwJhRoKmEyEsHeC}L{DcOqFlE{DtHkBwIzD}L`DmEXsGjMwX|CgRxEePpF_\\jQip@|Na]lWePdM}LlWk}Alf@ekAfHyJlAsVrFwXhW{aCw_@g{A{DqUwJkb@aNse@eC{Ku@sVVkSsEaOoGqUkGa]v@}L_JwY\\aOVma@mAga@w@ob@fMg`@zD_Nhg@ia@|Ncm@r[ka@p`@yYjWd_@rUnF|N`N`YbAre@qGrz@kp@nv@iDtj@rWzYoFp[~j@h]kDla@lEzy@oT~SeQ?mc@p`@_j@~NgCzOod@{Omq@zDawAbDcPyEuWxEuHVmFjMeP~C_N?e^oAkTxDgo@lBsFmBoFlByYjG_N[ePpAiRfMmEvUtHdSlD`^tJl|@zYrKxKxOiDlLsGtPnFxOcAvEgCrKuHpKyJdNjDrKwIvJoUxJ{Kd}Ba@h]dBbThCfM~M~Sa@dYpFn\\mDj\\gC`T}LhMeAzDwXfHoUbIkp@nG_OuFgPZ}LxEwIbCwIbDuIVoTmAqVdCwIjGyJpAwJvJoEbi@?fSqHhRwH|Ta@~NmEhMrGzOgBqAzK_DxIpFjEjGkEhMhDjM|KhMpHbN?|DqGrKnFlGtHxE`@mByJxJuH`IjCbIiBnGmEzIvHnLwHdIkEfHvJ~CvIhMvIrV`OfHlEbIfBvE~M|IzKxJ?dNcAbIkEbN^jMoTzDiR~IoF|IfBrQ`@xTlEjMdBxJgCpLbA`NmEfShCpQhRhMvX?|K`OjEdNjSbIrVkBfQbI`@tKiCpVpGrKnE~IfQbIvJ~N`@zJhC~C`O~I|L?bNtKfCpFpGXpF|DxKxEa@`IvJpFfBrFmEvEpG|IvIvKxIfMpHnLjDnGxJ|IxJpF`OfCdPZrGXzLpAtHzDbAtFbAtEpFjBtIfSqGjBpG`DxJpFhCtKa@bI?lGfCrFlElGnF|IxJvPrGzD`NrAzLhM`@pFvIhHlT`DfQrKfPbTvJjMnFzD`NbInUpApGu@rHtK`@nAeB|DnFlGnEbIbA~IoEpF{K",
        levels: "PCCB?BED?CECFCBBEBBEC?GAB@CCADC@DDABDCBHBCBD@E?DHDCF?DHDAGDBBFBC@BCEBAECCEHCCADCEB@D@BDCH@@AE@C@FDDAHDFCDBABEDECDLCDABGCBCACI@FDHC?CB@E@DBFDDFIDEECAFACCBEDGDCE@EECFDDIEEDDAECGCEGCDFCCHEACDBEACDGDGDCDFED?DEJEECDEDDGCHCDDEEFDBBEDDJBCCEE?BHBEGDDHBEBLDEBCEBFDADF@HD@FACFEGCIBB@ECFCADBEADAEAKBEAAGEACFADEAHCDFDAFDHDBBEDH@@B@FBBDIECCFDCICF@DBFDCEBFDGCCDBHDEABCDCIBDDFBDBDAADHDBFCADGCBDBDBKDCEAACGAECCEBHDBBDCG?C@@?DCCBFBCEBBGCDCBDIBCAADG@BBBCCGC@ADCG@C@EEHCECFEDCEG@EDAJDAECDGCEADGDCDHAFCDECHBDCDFADBDICBD@CGDCCBCFCBGDCCB?G?BDDACFDDEAKEFCC@AG@CDCCEDBGABDCDFHAMCCAGCEHCA@EAF@F@FCDCFACC@CKDBADHDC@DFBBECFDEAIDCCEDCCAEKCIEJBFAHJCBEHDFBEBCMCBBIBACCDCBABBAC@E?JGC@FACFCBDCHC@FBB@CBDFAB@BAICACEBE?B@FC@DF@BEKEBDDEDJE@CCAAIDCDBBBDBB@DDEBFCBBK@ECFDDFAF@CCB@EBJDBDDEG@DP@FECEBECGDEBHC@EEDFBEJCDFCCABIE?GDFHFDJEAGDDEFCBDIGFADCGEICAAC@@GDCDAEEAICEBFBECBEBBCLCCGDCFCEBBHDCCEDBEABGC?DACBICDCAECH@@BEAC@BDBEBBCGBDC?ED@KCCBFCCCFBCGDEBDC@@EGDAEAEBCCGCCCD@DADFGFCCA@EDBIB@CDDBDEDECCGDME?DCDFCHEAHCE@CFCDBEBIHECB@DDCEH@DFHFAAGBCDCDDCJDBC?FACDBCDEBFEH?EGFBMBECCECFC@DCECCCFDA@EBC@HCBDFADADC@FDHCEBBFCDDCBFCDHBCCBF@GABBEBCECBCGDACFCHFCCFBCGDCAGDE?FDD@BCG?CAECCCCHDAEBBEG@FDFCE@@FCAGDHDGCCEBGCB@EDDBDICFCDE?GBCCAFDDB@DHCDCD@DDGBDJAAEBBEBGCBDBG@FDBFCCFDCHADEBDFCACDICFBDF@D?@EIDCFDDDGBBDAHDEGDAEDG@BDID@GAEBCAECHCECCFCEJBE@EAHECECGDICFBCGDGCAFCIEFDGDDAEDGCEEHCDCDCAKEECAECGBBDGDCEID@FDCFDCADCIBDCGCFDFDIDFBECGEGDFCEDJECGEEACGDCCIBCFDHEBAGCDECCIACAGCECCFBGEB?I?AFA?FDGCCECGDBIDEBF@CEDFCI?DAEAH@FACFCICABGBB@FCBGCFB?DHCBAAAE@DCCMBDECADHDEC@EHDEBCBEHBDABFCHECAFABHDEADACHCDFBEDIEAEEH@EFDCHCECCFCEAIFAECDHCAECECJCBFDFBHEFCCEGCEBHDE@FDDEEAGAEGAEEDGDBEIDFBDGACFKDDHDFDDHFGIDCFDAGGI?EFKEBFFDIGLIEGGCEJDEEDCECCG@DAGCC@FBIDGC?DGE@EADGBDBBCCB@DBCBJCBDBC?BFDAFFCACC?BAD@@GBE@BIBC?CEBF@DBFADBDCFCDACF@DCCGC?A@BD?@C?CACHBAADBDFC@EACGCAEAE?BDFCEBACKEBBAHBCAE@ABBCEFEICHBNDFDBECJCE@GEBE?DGDCC@FAACEBB@EB@E@BBFCICABEBFCFC@CEBDBEFDBBGCCCABFHEBE@EBCEGBCDBCLBCBCFBDCEDGCACEDEBDCFBD?CCBECBIDJBE@CFAABB?CBGCAAEB@JECFCDBFC?@HC@CD?@@AL?AADIBEDEEFAEBHACGCBEAGECEKCADCCFC@GDEBCCGC@DFDCDGBBF@DBAEBECGDCDGA@GDDDJBBEECHCG@CCHGCKDDGECIEDEFHHDGKBFCGCFEAH@FAFBBACCBBF@CCFDIDCDBGCAC@GEDANCFDCEDFDCHECAECHCEDGFCEEFIC?GCADE@EKFCFE@CFFICCHDHCFDKGDCGEDHEDACCJCFGEDFEKBDFDEDFJDDEACDGDD?GBE@ECBHEGEBMDDFBCHEGFBFJGIECFEDEG@JGD?FDCHBCFDCEHAA@CEFEEFJEHDEGEHCFDKEEFFDDFHAG@EGGFDCDBGEDDGCAEHBDDFBDCHAEDEBFDGBD?CEBPC@DCD@DGAEG?@EADHECF?ABCF@CEIDFEGDEIFCDCFBGIFCEBFHBE?BBDLCDAFBBBCFHFCGEB@KBHDFDIGEHFHFKEHGFHBFHDFE@ECEKFGHDFJCCEACCBFEECJCBCAICDD@ECGCEC?EHDAFBDCFCJDGCECAGDA@BJFCGCCFCBGDEAFBLCAEAADAGEBEGDAAGDDBHACFAEFBDBB@ID@@GDCCFEFIBFAACDBFBEBIDBFBCGHFEJFFHCGEIFEDCKEGBBCEC@BE@CGD@CJC@DFB@DBHEBBAHCEBJGEGIDDGEEKDEDCGHJCCGECBGBACIDFECAEHCBECDBGBDCDBCI@BDA@FCDJCDGBCB@CECDIEDF@EDDCDGAIDF@ACBDADBKDA?FBBADDAJDCHCFCBEHBDBCDFDIBBAEBFDALCECB@HDGBFDFCCIEFCFHEDIBEBGDCDCEBECCDCGBEBDBHDDGCABEDGCCJEADEDCDHE@BEHEBACEGADBBFACCFCFDECCAGCDFBDEBGEDBAJCDACGDACFDIBDAGEDECG@B@C?DDBEJCEEECCHDADF@AAADIDFBACBBFCADF?@EDI@CCFEBCECAFCBECAH@?FCFBDJE@@EBCBEA@GDBEECEBCBEIDACE@ADHCEDCNDFBBDGBCFDDDIDCEEDGACBCEDGBAD?BGCCFDCECKABDGECEDGCDFC@ECIFCDDFBFBBBACGBDGCBIA@DBADBECF@DHDCDAGDDCCHAEBAE@CFCBC@CLDAIFHADFDBIDDDEBEBCDEACC@DDFAEAEDDBFBEB@BFCGDCECDCCFBCECECECJDCDBFCDDGDE?CADEECEDCDFCF@DBDDCHCEF@BDBFBCBCEBCBFDDACACJBFCBD@EDFDEDCEFBBFCAEBGCCCAGC@CFCBDCCFADFBFJCBEGGFEDDCDDGDLEEICCDCFCA@FCBHADFB?BEBC@CFBDDFGB@CBECEDCG@DDHC?CEADDHDDDCFDIDDBF@BBB@FDJEBGBEFE@HEDDEBGCDFABFCDGDDEAHDADBCAG@DBAEBDIDEBAECGCAAEDAEA@DDCIDFBDDHDAECHDCDCF?DHBCADHCCCGBECDDDIDFDEFCDEDGEFCHBF@BDE@DGDFCECG@FFMBEDEDC@BBFDBBCCBF?DBBEDBECIBGEBECGCFCB@KCBDCBDDBCBBGDCBFCC@FCDCBCBIACDBGCBD@DHCECBGDIDCFDEDDFDADEFFCCGDCFFGEDFKBDBBGCCDFAEEGBFHA@FDHEH@GDADEGD@EECJCCFHEJFD@EFBAFDHDDFDFCGCDFDEF?DGACECHCCDDCGJGEGEDDFCCHDDDEKGECEGCEHFCAJEEBFDDECIFFECCECFDDHFDFFFIEBCEAC@BFHCFB@C?FCE?CFDCFJEDCGFGGFFAHEDEBFADKHGCCFE@FC@DCAEEC@EDIB@ECCDGCCDECEFDHFCFBEHCACF?DADGCCEB@EAKECGEADDGFEEEDEHGDDGEDEFEGDEBFD?ECDFCFDBECDJ@CDDCFDGCCFBDCCDAIFEDBGEECEHCFELFDBECGEBHBDDAFFCAECFADCC@HDG@BBIBEBFCFFDECI@@DCFBECFDDEDEBADBACHCBGEB?HBFFECEBDBIDCDFECFAECGCDCCEGDHAAEHCCLECAAGDAECG?CI?FEBCDCHD@DFGCGCE@CCIABCEHDFBE@DLDFAHDGCEDAGC@CHACCEBGDDAIBEDCGB@?DDGCDACBGBCFBCBCIED?EEDEFAGDCECJECGBECFDFD@FBID@ADBDBGECDGAFC@BJDFCDEFCECGECF@AFAEAFCCBFBDDHCFDCDCFEBEFCEEDCFACGCCGECEAGEBEDEDFDCCFDB@GCCFBFCAECBJECF@E@DGCCHD?ECCBOBCFCCECEBCHCFEEDFAACGDDECCJEB@FDAFCECDGAGDCHDDBE@DJECCGBEEGCFAFCCFDGDFGB@EAHBECDBI?ACDGBDDAGBBDACCEHF@?DGEECFDCDHEDDHEEEHDFDGACEEG@CDBFDJBDFDDE@GCEDECCFBHDDDGCDECBDFCDJBACCFFCCBFBDCEJCGEFIGDGDDECHCEFDEGBEJCECG@DFCFAGCDBECED@ECHEBDECDDHBBCCF@BHEAFECCFDIDBDGCCEGCEADHFDBGCCECGECEHE?DCGCCEBEGEDCLECEGCBGDGDCEHCEFDIDCFEFFEEJBFHDBFCFBFDIDEDDDDIEDFACDFHECFEDHCDFDDHECJDECDAFEHCEBDDGBBFCDDFDEGBCMDECCEHCFCDEAFAEBF@DDCHCFDFFDGEDGDBKDFCFAHDBFCDCEI@CEEECAFBDDDBDIFAB@ECDGDEIDDEFC@HDEGCCE@ICEGEADGDBFBEHDBFDEDHCDBECCCGCEDIDHD?BGFDIDEGCBJDFDHABBDIEACCDBFFHCFD@KEDHEACCEHECEFEJCFDGECFEIDEECHECDCEBHDCFDGCFEAFCCEDCIBFBBHBAGCECECHDFADBGDCEGDCGEDDCECJEFAFDHDADBECE@CHDFCCFDHCEAICEAFCDFCIDCCFBEHEDA@AIBEFCDFEAIDBDCECDFBDBEMDEADDE?FCEEDFCD@GDDIFCEBGDECDJAB?FD?DBFCHCCE?BDB@FADAECDACDCEDIDFBDAEDDI@DCCAECCAJCEBCDFAEBBFCBCHCCACBECEBBJFCG@D@BDGDBCD?CFIDBBEDHCGAGDBAFIEFEDCCFCDDFCECHCCCF@FCCEIBBFGBE@CEACEDFBJE@@ECDGBEEADH@BAEAIFFFFEECCFDICDAFEFDEHDBCBFBDBIDB?DAFCHCDDADJCDDHDEADGBDDFAEDDIDDDFAC@FCEACEBBGC@E@CFDBJDC@DGCCDFBB?ICCEAECACB@CCFBDECHCECDEBCCFDDEHCE?DEDBBLECFDBE@EHCBCECAFDBEBDIDECBCCFB@DGCDEDDBCECCBHCEEECEDGCFACCDCJCFABCEFBCGDBDBFDCFAICCECCBGDBCHFBDAKDDBDCFCEDFECIACFCHDDA?EFAB@E@HDADBFBDCJBCB@EDCHDECCBEDFEAHACEDDCEBDCFBCECICEFEEFDMDDBFBEE?FDDFC@CHCCGCDFEIEBBEEBAGDBDFCDEDECGCCHCCECACIB@BDBCFCDBFJADCEGADBD@CEDBGEFBCCDBECE@EACHCDCGCBDEHEAEBCLD@FBCBBDD?D@HFCDDCGBECIDB@FCFEFEE@?CDHAEFDEGECJCCEGBEFCGCDJCCFCCGDDHCDEHCCIEAB@DFHEACBEHBDBEADEK@AGCGDCEEHCHEDGDIDCCFFADLFCDEDDFICEEFEDJCAHEEGEHEAFDBFBECFCFAEGCGEDHBGCDEDIF?GHDDECIEBFEEIFDGFDLDBBFCEFDBDDFJGFHEEGCCICDJEBCGA@EEDFIEDECGCGDCEGDFIEBFCHEDGBDFEDECGE@HBFDGCDFCKEDCGEBEGEIDEGECCHDIDDE@EFGCDCEFDHECIEDEFDPFDDFBFEHEDBGAHEEBFEJFECEFDGBFEBBGDF?LFDEGCECDCJDGEDGDBDGDEGCLCGDFAEFDEIEBFAGEBGCC?HE@LDDFBDGEJCFEGBCFCE@EDIEDEDEFELDFDCFCFEADIFFJEDGGFEKCEEEGEEBEHEDGB@GCICDHCCFEGCEGDEFCEFBF@EEBHFBCMAD?CDDCDBEBAFEF?GDDEADDDGBCCGCFICGDEFHCEFEEFCDIEDFEDHEFHFHEGDDFGBLCDFEFCDIDFDFEHCEEDGDCEFDBHEDFE?EDIDFAEGECAEEEDDEEABGCDDCCJFGEEDENEEGEAECDAGFCGDEGCEDGEHCCDDGAEDJABDFFCECDEDDLCCDFFGFIDECHCCFEEFAJEEEGEDGCEBGDEGECGFLEFDBEG@DCGCDHHCDDLCCDGECFECHEHEDECGDCIFFFDFCEHEBAEDGBKDGCIEBDFDIBDFLDFBGDFEFDHEFDIFEFDEHEEMEFDEGEGGEFDHEFKDEHDDGDFHEFFDCDEDGFDGCFLEDF?EEGCDDFG@D@AJEDADBFCEDEGCCIDDECFDJEFADHEBDFFCEGCEHDFCCJDGEFCEEDGKCFGBFDIAEHC@GEOCDCFHFEFEBFGBDKFDFEEDEFDCFAGDFGCDKEFBGBCEEHDDDECHEDFCEG?FECCDGEDJFDGCHCFIEDGEHEFEFBCGAIFBFEAEHECFEEIFBEHFEGFEIEGEFBFHAFAFHDCCHFDDDGCDEIBBFEFF@EFHCGCBFBEEEGEDDFFDJDECAHEAGDFGA@E@HFDBHE@FEE?BCGDEGBFEFDHEAGDGDFGEFDGDFCGCFMBCAEFDFDHDDFICDCDEEDECFEDEFECGFDICFCEEKCEEEF?DGDCFEECEBDBDEAIEHECGGEDBEGFEGCBCEEFCGDDDDECHBDEAFEABEECFDDDHFDECDDGEBDD@DFCEEFDEEADKDDEFFDEDFCHEFDIDEEEDFHBFEEIEFEDGDFKCBGIEHEGDFBFEKFEFEDIE@EGIDF@KEEBGIFGEGDEFEFJDAF@FFGDCEHDDCKEBEEGFHDFCDHDEAGDFCEEDCDDJEEHCDDFEDEFDFCEJEEDDBCFCLFEEHDFFEFCCIAFEFEFDF?CEDFECHGJDHEFEFFCKDEFDCFECFEKF?FCCFFEDHEEEDDAGEIEHCCFDJECFCDEGEFBEEIEFEDFKBFHDEHEECHCEGDGEGFEI@EGAHEGEDDHDF?HDFDEFHFCCFAHEACCHCGDCDGFDGFDDGACGECEHFEEGDEDGDDFDHFDDGEDGBFHEEEFIECEGCEDFDCGFHDEAFCFKCDCECBDFFCGFDGCDJCBCBGCFADDEFADANAFFFEJFEEHFHFFGHEGEKGEFHFDEGDDDGCEDDDEDCJFCFCEHDFEFACFGDDHDGEEDFBJDGDDDFDFCAECFCDIEE@EDLEGCEGEFCFEFDDHEFECFFAHCFB?DEDIBDDGDEHCCBFDDEJEEFEFEHDEFECFCHDEEDECGEDFFCBECEBGCD@CHAEDFF@FDAFCDBDHCEFDCDFAFAEDHDECDGDP",
        zoomFactor: 2, 
        numLevels: 18
    });
    map.addOverlay(encodedPolyline);
}

//pone un marcador en la posicion pulsada
function ponerLocalizacion(marker,point,tipoSR){
    if(!marker){
        if(marcadorGeolocalizacion)    
            map.removeOverlay(marcadorGeolocalizacion);
                          
        if(tipoSR){
            var icono = new GIcon();
            icono.image = "/img/iconos/mapa-sr" + tipoSR + ".gif";
            icono.iconSize = new GSize(20, 24);
            icono.iconAnchor = new GPoint(10,23); 
            icono.infoWindowAnchor = new GPoint(8,10);
            marcadorGeolocalizacion = new GMarker(point,icono);
        }else
            marcadorGeolocalizacion = new GMarker(point);
        map.addOverlay(marcadorGeolocalizacion);
        map.panTo(point);
    } 
}

//Muestra un popup sobre el marcador
function mostrarPopupMarcador(marcador){
    popupMarcador.innerHTML = marcador.tooltip;
    var point=map.getCurrentMapType().getProjection().fromLatLngToPixel(map.getBounds().getSouthWest(),map.getZoom());
    var offset=map.getCurrentMapType().getProjection().fromLatLngToPixel(marcador.getPoint(),map.getZoom());
    var anchor=marcador.getIcon().iconAnchor;
    var width=marcador.getIcon().iconSize.width;
    var pos = new GControlPosition(G_ANCHOR_BOTTOM_LEFT, new GSize(offset.x - point.x - anchor.x + width,- offset.y + point.y +anchor.y)); 
    pos.apply(popupMarcador);
    popupMarcador.style.visibility="visible";
}

//ejecuta sobre el mapa el como llegar desde un punto a otro
function ejecutarComoLlegar(destino, descDestino){
    var controlOrigen = document.getElementById('origen');
    var origen = controlOrigen.value;
    if("albacete,ciudad real,toledo,cuenca,guadalajara".indexOf(origen.toLowerCase())!=-1)
        origen += ", España";
    var resumen = document.getElementById('resumenRuta');
    var indicaciones = document.getElementById('indicacionesRuta');
    function comoLlegarError(){
        if(origen.indexOf("España")==-1){ //si no encontramos resultados probamos a hacerlo con Spain detras
            origen += ", España";
            gdir.load("from: "+origen+" to: "+destino,{ "locale": "es"});
        }else{
            //ocultamos todo
            resumen.style.visibility = "hidden";
            indicaciones.style.display = "none";
            alert("No se ha encontrado el origen introducido");
        }
    }
    //ponemos una imagen de "cargando"
    resumen.style.visibility = "visible";
    if(resumen)
        resumen.innerHTML = "<img src='/img/cargando.gif'>";
    indicaciones.style.visibility = "visible";
    //borramos posibles resultados anteriores
    if(gdir)
        gdir.clear();

    var descripcionOrigen = origen;
    var descripcionDestino = descDestino;
    gdir = new GDirections(map);
    GEvent.addListener(gdir, "load", function(){
        comoLlegarRecibido(descripcionOrigen,descripcionDestino);
    });
    GEvent.addListener(gdir, "error", comoLlegarError);
    gdir.load("from: "+origen+" to: "+destino,{ "locale": "es", "getSteps": true});
}

//procesamiento al recibir el como llegar
function comoLlegarRecibido(descOrigen,descDestino){
    //procesamiento al recibir el como llegar
    var resumen = document.getElementById('resumenRuta');
    var indicaciones = document.getElementById('indicacionesRuta');
    //rellenamos los datos del resumen de ruta
    if(resumen){
        var html;
        html  = '<strong>Resumen de la ruta:</strong>';
        html += '<ul>';
        html +=     '<li>Distancia del trayecto: '+ gdir.getDistance().html.toString()+'</li>';
        html +=     '<li>Duración del trayecto: '+ gdir.getDuration().html.toString()+'</li>';
        html += '</ul>';
        html += "<a id='enlaceMostrarIndicaciones' href='javascript:mostrarIndicaciones()' title='Mostrar las indicaciones del trayecto'>Mostrar indicaciones del trayecto</a>";
        resumen.innerHTML = html;
    }

    //rellenamos las indicaciones
    if(indicaciones){
        html  = "<h5><strong>Indicaciones del Trayecto</strong></h5>";
        html += "<table class='indicaciones'>";
        html +=     "<tr class='extremoRuta'><td colspan='3'>Salida: <strong>"+descOrigen.toUpperCase()+"</strong></td></tr>";
        var n=1;
        for(var i=0;i<gdir.getNumRoutes();i++){
            var ruta = gdir.getRoute(i);
            for(var j=0;j<ruta.getNumSteps();j++){
                html += '<tr onclick="map.showMapBlowup(gdir.getRoute('+i+').getStep('+j+').getLatLng())" class="fila'+(n%2)+'">';
                html +=     "<td class='num'>";
                html +=         "<a href='javascript:void(0)'>"+n+"</a>";
                html +=     "</td>";
                html +=     "<td>";
                html +=         ruta.getStep(j).getDescriptionHtml();
                html +=     "</td>";
                html +=     "<td>";
                html +=         ruta.getStep(j).getDistance().html;
                html +=     "</td>";
                html += "</tr>";
                n++;
            }
        }
        html +=        "<tr class='extremoRuta'><td colspan='3'>Llegada: <strong>"+descDestino.toUpperCase()+"</strong></td></tr>";
        html +=    "</table>";
        indicaciones.innerHTML = html;
    }
    map.zoomOut();
}

function mostrarIndicaciones(){
    var enlaceMostrar = document.getElementById('enlaceMostrarIndicaciones');
    var indicaciones = document.getElementById('indicacionesRuta');

    if(indicaciones.style.display=="block"){
        indicaciones.style.display="none";
        enlaceMostrar.title = "Mostrar las indicaciones del trayecto";
        enlaceMostrar.innerHTML = "Mostrar indicaciones del trayecto";
    }else{
        indicaciones.style.display="block";
        enlaceMostrar.title = "Ocultar las indicaciones del trayecto";
        enlaceMostrar.innerHTML = "Ocultar indicaciones del trayecto";
    }
}