overhauled data structure