first pass at data object