      function createMarker(point,html) {
        var marker = new GMarker(point);
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
        });
        return marker;
      }

      var geo = new GClientGeocoder(); 
			     
      // ====== Geocoding ======
      function showAddress(search, html) {
        
        // ====== Perform the Geocoding ======        
        geo.getLocations(search, function (result)
          { 
            // If that was successful
            if (result.Status.code == G_GEO_SUCCESS) {
              // How many resuts were found
              
              // Loop through the results, placing markers
              for (var i=0; i<result.Placemark.length; i++) {
                var p = result.Placemark[i].Point.coordinates;
                var marker = createMarker(new GLatLng(p[1],p[0]), html);
                map.addOverlay(marker);
              }
              // centre the map on the first result
              // var p = result.Placemark[0].Point.coordinates;
              // map.setCenter(new GLatLng(p[1],p[0]),14);
            }
            // ====== Decode the error status ======
            else {
              var reason="Code "+result.Status.code;

              //alert('Не могу найти not find "'+search+ '" ' + reason);
            }
          }
        );
      }

