chunk this out as a util