finite maps
basic heaps
Exercise 3.3