Add data structure and utils