remove data functions
break out interaction functions