Implementation of various data structures