properly abstract all d.data values from user callbacks