WIP figuring out data structure from scratch