collection of data structures from cs211