    function initialize() {
        if (GBrowserIsCompatible()) {
            var map = new GMap2(document.getElementById("map-canvas"));

            map.setCenter(new GLatLng(lat, lng), zoom);
            map.setUIToDefault();

            // zaklad ikonky
            var baseIcon = new GIcon(G_DEFAULT_ICON);
            baseIcon.iconSize = new GSize(18, 30);
            baseIcon.iconAnchor = new GPoint(9, 34);
            baseIcon.infoWindowAnchor = new GPoint(9, 2);
            baseIcon.shadowSize = new GSize(0, 0);



              // *******************************************
              // ********************* central cross *******
              // *******************************************
              function showCentralCross()
              {
                  var centralCross = new GIcon (G_DEFAULT_ICON);
                  centralCross.iconSize = new GSize(19, 19);
                  centralCross.iconAnchor = new GPoint(8, 8);
                  centralCross.shadowSize = new GSize(0, 0);


                  var letteredIcon = new GIcon(centralCross);
                  letteredIcon.image = iconsDir+"blue_cross.png";
                  var point = new GLatLng(lat, lng);

                  markerOptions = {icon:letteredIcon};
                  var marker = new GMarker(point, markerOptions);
                  map.addOverlay(marker);
              }
              if (showCC)
              {
                  showCentralCross();
              }

              // end central cross
              // *******************************************


            function createMarker(point, index, num, colorIcon)
            {
              var letter = (index <= 25) ? String.fromCharCode("A".charCodeAt(0) + num) : 'Dot';
              var letteredIcon = new GIcon(baseIcon);
              letteredIcon.image = iconsDir+colorIcon+"_Marker" + letter + ".png";
              markerOptions = {icon:letteredIcon};
              var marker = new GMarker(point, markerOptions);
              GEvent.addListener(marker, "click", function() {
                marker.openInfoWindowHtml("<b>" + markers[index][4] + "</b><br />"+markers[index][5]+"<br /><a href=\""+markers[index][2]+"\">Podrobnosti</a>");
              });
              marker.idMarker = index;
              return marker;
            }

            var markersDefault = Array();
            var markersHover = Array();
            var hover = Array();

            for (var m in markers)
            {
                m = parseInt(m);
                var point = new GLatLng(markers[m][0], markers[m][1]);

                var markD = createMarker(point, m, parseInt(markers[m][3]), 'green');
                markersDefault[m] = markD;
                map.addOverlay(markersDefault[m])

                var markH = createMarker(point, m, parseInt(markers[m][3]), 'red');
                markersHover[m] = markH;
                map.addOverlay(markersHover[m]);
                markersHover[m].hide();

                GEvent.addListener(markD, "mouseover", function() {
                  markersHover[this.idMarker].show();
                  markersDefault[this.idMarker].hide();
                  //console.log('h: '+this.idMarker);
                  hover.push(this.idMarker);
                });
                GEvent.addListener(markH, "mouseout", function() {
                  markersHover[this.idMarker].hide();
                  markersDefault[this.idMarker].show();
                  //console.log('d: '+this.idMarker+' !!!');
                  deactiveAll();
                });
            }

            function deactiveAll()
            {
                var id;
                while(id = hover.shift())
                {
                    markersHover[id].hide();
                    markersDefault[id].show();
                }
            }            
        }
    }
