Flash AS3 And Google Maps

I have multiple points on a Google map that i need to pinpoint.

How would i find the two points that are farthest away from each other and get my map center an zoom accordingly?

Thanks in advance!



//global imports and other vars
import com.google.maps.LatLng;
import com.google.maps.LatLngBounds;
import com.google.maps.Map;
import com.google.maps.MapEvent;
import com.google.maps.MapType;
import com.google.maps.controls.ZoomControl;
import com.google.maps.controls.PositionControl;
import com.google.maps.controls.MapTypeControl;
import com.google.maps.overlays.MarkerOptions;
import com.google.maps.overlays.Marker;
import com.google.maps.InfoWindowOptions;
import com.google.maps.MapMouseEvent;


// Create The Map
var map:Map = new Map();
map.key = "ABQIAAAAZ4-AGoBfSWF--cPxVyDw6xQQ8YLcfBN-1RQFlkdO0I7IxZjd6BRlMLFMneQgUlcJXEpgttoMjsUpxw";
map.setSize(new Point(stage.stageWidth, stage.stageHeight));
map.addEventListener(MapEvent.MAP_READY, onMapReady);
this.addChild(map);
var i = 0;
function onMapReady(event:MapEvent):void {
    
var latlngbounds = new LatLngBounds();    
    map.setCenter(new LatLng(39.019184,-108.544922),3, MapType.HYBRID_MAP_TYPE);
    map.addControl(new ZoomControl());
    map.addControl(new PositionControl());
    map.addControl(new MapTypeControl()); 
 
    function createMarker(latlng:LatLng, number:Number, tip, myTitle, myContent):Marker {
        var LA_i:Marker = new Marker( 
                            latlng, new MarkerOptions({icon:new marker(),hasShadow: true, tooltip: ""+tip  
                          }));// closed new marker
            LA_i.addEventListener(MapMouseEvent.CLICK, function(event:MapMouseEvent):void {
                    trace ("marker "+tip+" clicked!");
               });// closed on click event listener
               return LA_i;
               var i = new LatLng(latlng);
               latlngbounds.extend( i );
               return i;
               i = i+1;
      }// end function createMarker
      

var listings = "39.170147, -108.723128 |  39.019184, -108.544922 | 39.1046810,-108.5621000 | 37.3960539,-108.6274138 | 38.4783198,-107.8761738 | 38.2183239,-108.5687033 | 38.7422062,-108.0689582 |";

var listings_array = listings.split("|");

// loop through each listing an create a marker
for(var LA_i=0; LA_i<listings_array.length-1; LA_i++){
    var listingInfo = listings_array[LA_i].split(",");
    var latlng:LatLng = new LatLng(listingInfo[0], listingInfo[1]);
         var tip = LA_i;
         var myTitle:String = "";
         var myContent:String = "";
         
         map.addOverlay(createMarker(latlng,LA_i, tip, myTitle, myContent));
         
}//end main listing for loop

//center map and set zoom
map.setCenter( latlngbounds.getCenter( ), map.getBoundsZoomLevel( latlngbounds ) ); 
// this function gets the center between two lat lng //

// this works for just two markers 
/*var bounds:LatLngBounds = new LatLngBounds(    new LatLng(39.170147,-108.723128),    new LatLng(39.019184,-108.544922));
map.setCenter(bounds.getCenter());
map.setZoom(map.getBoundsZoomLevel(bounds)-1);*/


}// end on map ready

Just copy and paste into root time line to test