The Laurentide Ice Sheet was a massive sheet of ice that covered millions of square kilometers, including most of Canada and a large portion of the northern United States, multiple times during the Quaternary glacial epochs— from 2.588 ± 0.005 million years ago to the present. The last advance covered most of northern North America between c. 95,000 and c. 20,000 years before the present day, and among other geomorphological effects, gouged out the five Great Lakes and the hosts of smaller lakes extending from the extensive lakes of Minnesota, Wisconsin, and Michigan to the Finger Lakes, through Lake Champlain and Lake George areas of New York, across the northern Appalachians into and through all of New England and Nova Scotia. At times, its southern margin included the present-day sites of northeastern coastal towns and cities such as Portsmouth, New Hampshire, Boston, New York City, and Great Lakes coastal cities and towns as far south as Chicago and St. Louis, Missouri—and then followed quite precisely the present course of the Missouri River up to the northern slopes of the Cypress Hills, beyond which it merged with the Cordilleran Ice Sheet. The ice coverage extended approximately as far south as 38 degrees latitude in the mid-continent.