function StateSuggestions() {
    this.states = [
"Abingdon",
"Addison",
"Albion",
"Aledo",
"Algonquin",
"Alsip",
"Altamont",
"Alton",
"Anna",
"Antioch",
"Arcola",
"Arlington Heights",
"Arthur",
"Atlanta",
"Aurora",
"Baldwin",
"Banner",
"Bannockburn",
"Barrington",
"Barry",
"Bartlett",
"Beach Park",
"Beardstown",
"Bedford Park",
"Belleville",
"Belvidere",
"Bensenville",
"Benton",
"Bishop Hill",
"Bloomingdale",
"Bloomington",
"Blue Island",
"Bluff Springs",
"Bolingbrook",
"Bourbonnais",
"Bradley",
"Braidwood",
"Breese",
"Bridgeport",
"Bridgeview",
"Broadview",
"Brookfield",
"Brookport",
"Buffalo Grove",
"Buncombe",
"Burbank",
"Burr Ridge",
"Cahokia",
"Cairo",
"Calumet City",
"Calumet Park",
"Camp Point",
"Canton",
"Carbondale",
"Carlinville",
"Carlyle",
"Carmi",
"Carol Stream",
"Carrollton",
"Carterville",
"Carthage",
"Cary",
"Casey",
"Caseyville",
"Cedar Point",
"Centralia",
"Champaign",
"Channahon",
"Charleston",
"Chatham",
"Chenoa",
"Cherry Valley",
"Chester",
"Chicago",
"Chicago Heights",
"Chicago Ridge",
"Chillicothe",
"Cicero",
"Clarendon Hills",
"Clinton",
"Cobden",
"Collinsville",
"Countryside",
"Crest Hill",
"Crestwood",
"Crystal Lake",
"Dahinda",
"Dallas City",
"Danville",
"Darien",
"Decatur",
"Deerfield",
"Dekalb",
"Des Plaines",
"Dix",
"Dixon",
"Dolton",
"Downers Grove",
"Du Quoin",
"Dundee",
"Dwight",
"East Alton",
"East Dubuque",
"East Moline",
"East Peoria",
"East Saint Louis",
"Edinburg",
"Edwardsville",
"Effingham",
"El Paso",
"Eldorado",
"Elgin",
"Elizabeth",
"Elizabethtown",
"Elk Grove Village",
"Elmhurst",
"Elsah",
"Evanston",
"Fairfield",
"Fairview Heights",
"Farmer City",
"Farmersville",
"Findlay",
"Flanagan",
"Flora",
"Forrest",
"Forsyth",
"Fox Lake",
"Fox River Grove",
"Frankfort",
"Franklin Park",
"Freeport",
"Fulton",
"Galena",
"Galesburg",
"Galva",
"Geneseo",
"Geneva",
"Gibson City",
"Gilberts",
"Gilman",
"Glen Carbon",
"Glen Ellyn",
"Glendale Heights",
"Glenview",
"Godfrey",
"Golconda",
"Grafton",
"Grand Chain",
"Granite City",
"Grayslake",
"Grayville",
"Greenup",
"Greenville",
"Gurnee",
"Hamel",
"Hamilton",
"Hampshire",
"Hanna City",
"Hanover Park",
"Harrisburg",
"Harvard",
"Harvey",
"Harwood Heights",
"Havana",
"Hazel Crest",
"Hebron",
"Henry",
"Herrin",
"Heyworth",
"Hickory Hills",
"Highland",
"Highland Park",
"Hillsboro",
"Hillsdale",
"Hillside",
"Hinsdale",
"Hodgkins",
"Hoffman Estates",
"Homewood",
"Hoopeston",
"Hull",
"Huntley",
"Ingleside",
"Island Lake",
"Itasca",
"Jacksonville",
"Jerseyville",
"Johnsburg",
"Johnston City",
"Joliet",
"Jonesboro",
"Junction",
"Kankakee",
"Keithsburg",
"Kewanee",
"Keyesport",
"Kildeer",
"Knoxville",
"La Grange",
"La Grange Highlands",
"La Salle",
"Lacon",
"LaGrange",
"Lake Bluff",
"Lake Forest",
"Lake In The Hills",
"Lake Villa",
"Lake Zurich",
"Lanark",
"Lansing",
"Latham",
"Lawrenceville",
"Le Roy",
"Leaf River",
"Lemont",
"Lewistown",
"Libertyville",
"Lincoln",
"Lincolnshire",
"Lincolnwood",
"Lisle",
"Litchfield",
"Livingston",
"Lockport",
"Lombard",
"Louisville",
"Loves Park",
"Lynwood",
"Lyons",
"Machesney Park",
"Macomb",
"Macon",
"Maeystown",
"Mahomet",
"Makanda",
"Manteno",
"Maple Park",
"Marengo",
"Marion",
"Marissa",
"Markham",
"Marseilles",
"Marshall",
"Martinsville",
"Mason City",
"Matteson",
"Mattoon",
"Mc Cook",
"Mc Lean",
"Mchenry",
"Melrose Park",
"Mendota",
"Metropolis",
"Minier",
"Minonk",
"Minooka",
"Mokena",
"Moline",
"Monee",
"Monmouth",
"Monticello",
"Montrose",
"Morris",
"Morrison",
"Morton",
"Morton Grove",
"Mount Carmel",
"Mount Carroll",
"Mount Morris",
"Mount Prospect",
"Mount Pulaski",
"Mount Sterling",
"Mount Vernon",
"Mundelein",
"Murphysboro",
"Naperville",
"Nashville",
"Nauvoo",
"Nebo",
"New Baden",
"New Lenox",
"Newark",
"Newton",
"Niles",
"Nokomis",
"Normal",
"North Aurora",
"North Chicago",
"Northbrook",
"Northlake",
"O Fallon",
"Oak Brook",
"Oak Forest",
"Oak Lawn",
"Oak Park",
"Oakbrook Terrace",
"Oblong",
"Oglesby",
"Okawville",
"Olive Branch",
"Olney",
"Olympia Fields",
"Oquawka",
"Oregon",
"Orland Park",
"Oswego",
"Ottawa",
"Palatine",
"Pana",
"Paris",
"Park Ridge",
"Paxton",
"Pekin",
"Peoria",
"Peru",
"Petersburg",
"Pinckneyville",
"Pittsfield",
"Plainfield",
"Plano",
"Pocahontas",
"Polo",
"Pontiac",
"Pontoon Beach",
"Port Byron",
"Princeton",
"Prophetstown",
"Prospect Heights",
"Quincy",
"Rantoul",
"Red Bud",
"Richmond",
"River Grove",
"Riverdale",
"Riverside",
"Riverwoods",
"Robinson",
"Rochelle",
"Rock Falls",
"Rock Island",
"Rockbridge",
"Rockford",
"Rockport",
"Rolling Meadows",
"Romeoville",
"Roselle",
"Rosemont",
"Roseville",
"Round Lake",
"Rushville",
"Saint Charles",
"Saint Elmo",
"Salem",
"Savanna",
"Savoy",
"Schaumburg",
"Schiller Park",
"Sesser",
"Shawneetown",
"Sheffield",
"Shelbyville",
"Shiloh",
"Silvis",
"Skokie",
"South Beloit",
"South Holland",
"Sparta",
"Springfield",
"Staunton",
"Sterling",
"Stockton",
"Streamwood",
"Streator",
"Sugar Grove",
"Sullivan",
"Sycamore",
"Taylorville",
"Thomson",
"Tinley Park",
"Tremont",
"Trout Valley",
"Troy",
"Tuscola",
"Urbana",
"Ursa",
"Utica",
"Vandalia",
"Vernon Hills",
"Vienna",
"Villa Park",
"Volo",
"Wadsworth",
"Warrenville",
"Washington",
"Waterloo",
"Watseka",
"Wauconda",
"Waukegan",
"Wenona",
"West Chicago",
"West Dundee",
"West Frankfort",
"Westchester",
"Westmont",
"Westville",
"Wheaton",
"Wheeling",
"Whittington",
"Willowbrook",
"Wilmette",
"Wilmington",
"Winthrop Harbor",
"Wonder Lake",
"Wood Dale",
"Wood River",
"Woodstock",
"Worth",
"Wyoming",
"Yorkville",
"Zion"];
}

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);
};

