function StateSuggestions() {
    this.states = [
"Alfred",
"Alna",
"Andover",
"Anson",
"Auburn",
"Augusta",
"Bailey Island",
"Baileyville",
"Bangor",
"Bar Harbor",
"Bath",
"Belfast",
"Belgrade Lakes",
"Berwick",
"Bethel",
"Biddeford",
"Bingham",
"Blue Hill",
"Boothbay",
"Boothbay Harbor",
"Brewer",
"Bridgton",
"Bristol",
"Brooklin",
"Brooksville",
"Brownfield",
"Brunswick",
"Bryant Pond",
"Bucksport",
"Calais",
"Camden",
"Canaan",
"Cape Elizabeth",
"Cape Neddick",
"Caratunk",
"Caribou",
"Carrabassett Valley",
"Casco",
"Castine",
"Center Lovell",
"Chebeague Island",
"Cornish",
"Damariscotta",
"Danforth",
"Deer Isle",
"Dennysville",
"Detroit",
"Dexter",
"Dover Foxcroft",
"Eagle Lake",
"East Andover",
"East Boothbay",
"East Orland",
"East Winthrop",
"Eastport",
"Edgecomb",
"Eliot",
"Ellsworth",
"Embden",
"Eustis",
"Fairfield",
"Falmouth",
"Farmington",
"Fort Kent",
"Freeport",
"Friendship",
"Fryeburg",
"Georgetown",
"Glen Cove",
"Gouldsboro",
"Gray",
"Greenville",
"Greenville Junction",
"Guilford",
"Hallowell",
"Hampden",
"Hancock",
"Harborside",
"Harpswell",
"Harrison",
"Hebron",
"Holden",
"Houlton",
"Hulls Cove",
"Jackman",
"Jonesboro",
"Jonesport",
"Kennebunk",
"Kennebunkport",
"Kingfield",
"Kittery",
"Lewiston",
"Limestone",
"Lincoln",
"Lincolnville",
"Lisbon",
"Little Deer Isle",
"Long Island",
"Lovell",
"Lubec",
"Machias",
"Machiasport",
"Madawaska",
"Manchester",
"Mars Hill",
"Matinicus",
"Mattawamkeag",
"Milbridge",
"Milford",
"Millinocket",
"Milo",
"Monhegan",
"Monson",
"Moody",
"Moose River",
"Mount Desert",
"Naples",
"New Harbor",
"Newburgh",
"Newcastle",
"Newport",
"Newry",
"Northeast Harbor",
"Northport",
"Norway",
"Ocean Park",
"Ogunquit",
"Old Orchard Beach",
"Oquossoc",
"Orono",
"Orrs Island",
"Oxford",
"Patten",
"Peaks Island",
"Pemaquid",
"Phillips",
"Phippsburg",
"Pittsfield",
"Poland",
"Port Clyde",
"Portage",
"Portage Lake",
"Portland",
"Presque Isle",
"Princeton",
"Rangeley",
"Raymond",
"Robbinston",
"Rockland",
"Rockport",
"Rockwood",
"Round Pond",
"Rumford",
"Saco",
"Saint Agatha",
"Salsbury Cove",
"Sanford",
"Scarborough",
"Searsport",
"Sebago",
"Sebasco Estates",
"Sedgwick",
"Sherman",
"Sinclair",
"Skowhegan",
"Smyrna Mills",
"Solon",
"Sorrento",
"South Bristol",
"South China",
"South Paris",
"South Portland",
"South Thomaston",
"Southport",
"Southwest Harbor",
"Springvale",
"Standish",
"Stockton Springs",
"Stoneham",
"Stonington",
"Stratton",
"Tenants Harbor",
"Thomaston",
"Topsham",
"Trenton",
"Van Buren",
"Vassalboro",
"Veazie",
"Vinalhaven",
"Waldoboro",
"Warren",
"Washburn",
"Waterville",
"Weld",
"Wells",
"West Bath",
"West Bethel",
"West Forks",
"Westbrook",
"Wilton",
"Windham",
"Winter Harbor",
"Winterport",
"Winthrop",
"Wiscasset",
"Yarmouth",
"York",
"York Beach",
"York Harbor"];
}

StateSuggestions.prototype.requestSuggestions = function (oAutoSuggestControl /*:AutoSuggestControl*/,
                                                          bTypeAhead /*:boolean*/) {
    var aSuggestions = [];
    var sTextboxValue = oAutoSuggestControl.textbox.value;
    
    if (sTextboxValue.length > 0){
    	topsuggestion = null;
        for (var i=0; i < this.states.length; i++) { 
            if (this.states[i].toLowerCase().indexOf(sTextboxValue.toLowerCase()) == 0) {
                aSuggestions.push(this.states[i]);
		if (!topsuggestion) {topsuggestion = this.states[i];}
            } 
        }
    }

    oAutoSuggestControl.autosuggest(aSuggestions, bTypeAhead);
};

