Added more data structures to implement