lab2 through lab5