      
          function makeMap(arrPoints)
	    {
	       var container =document.getElementById('map');
	       if (typeof container != "undefined" && container != null)
		{
	           if (GBrowserIsCompatible())
                   {
		       var map = new GMap(document.getElementById('map'));		     
		       map.addControl(new GLargeMapControl());
		       var centralPoint=new GLatLng(55.879548,-4.251709);
                       map.centerAndZoom(centralPoint,7);
		       setupMarkers(map,arrPoints); 
	           }	       
	       } 
	   }
	      
	    function createMarker(point,html,iconPath)
	       {
	          var marker;

	          if (iconPath.length > 0)
	          {
	             var icon= new GIcon();
				 icon.image=iconPath;
				 icon.size = new GSize(16,16);
				 icon.iconAnchor = new GPoint(0,0);
                 icon.infoWindowAnchor = new GPoint(8,10);

	             marker= new GMarker(point,icon);
	          }
	          else
	             marker = new GMarker(point);

	          if (html.length > 0)
	          {
	               GEvent.addListener(marker, 'click', function() {
                   marker.openInfoWindowHtml(html);})
	          }
	          return marker;
	       }
           
           
           function getMarkers(map,arrPoints) 
           {  
             var batch = [];                    
             var totalMarkers=arrPoints.length;
             for (var i = 0; i < totalMarkers; i++) 
             {    
                 point=new GLatLng(arrPoints[i][0],arrPoints[i][1]);
                 if (i==0 && totalMarkers == 1)
                     map.centerAndZoom(point,2);
                 batch.push(createMarker(point,arrPoints[i][2],arrPoints[i][3]));
             }             
             return batch;
           }
           
           function setupMarkers(map,arrPoints)
           {
             if (typeof arrPoints != "undefined" && arrPoints != null)
             {
               mgr = new MarkerManager(map); 
               mgr.addMarkers(getMarkers(map,arrPoints),6);
               mgr.refresh(); 
              }
           }

