abstracted data, implemented top-down perspective