library for data structure