finished new data structure